Автоматическое исправление ошибки в БД "Проверка уникальности внутреннего идентификатора ..."
Задачи пользователя - Корректировка данных
Файлы
ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.
Подписка PRO — скачивайте любые файлы со скидкой до 85% из Базы знаний
Оформите подписку на компанию для решения рабочих задач
Оформить подписку и скачать решение со скидкойВы можете заказать платную доработку или адаптацию этой разработки под вашу конфигурацию на «Бирже заказов».
- 0% комиссии — оплата напрямую исполнителю;
- Исполнители любого масштаба — от отдельных специалистов до команд под проект;
- Прямой обмен контактами между заказчиком и исполнителем;
- Безопасная сделка — при необходимости;
- Рейтинги, кейсы и прозрачная система откликов.
Частенько, как и многие другие, сталкиваюсь с ошибкой: «Проверка уникальности внутреннего идентификатора в справочнике. ….. Исправить вручную». Надоело исправлять вручную, написал универсальную обработку для исправления сей ошибки в полуавтоматическом режиме. Работа обработки протестирована на платформе 1С v 7.7 релиз 027. Думаю, должна работать и на более ранних, т.к. никаких необычных операторов не используется.
Алгоритм работы прост:
- Обработка ищет в выбранном справочнике сбойные элементы по признаку «одинаковые наименования и код». Тут в алгоритме поиска есть небольшая хитрость: производится сразу поиск дублей по наименованию, а затем среди них по коду. Это сделано для автоматического выбора «несбойного» элемента для замены. В результате в левой части таблицы отображаются найденные сбойные элементы, в правой найденные автоматически элементы для замены сбойных.
- Теперь есть два варианта. Можно нажать кнопку «Автоматическое создание копий», и будут созданы копии сбойных элементов. Если отмечен флажок «Не создавать, если нет ссылок», то для элементов, которые нигде не используются, копии создаваться не будут. Второй вариант: все эти действия можно сделать вручную дважды кликнув по полю «На что меняем» в нужной строке.
- Жмем «Пометить на удаление». Все выбранные сбойные элементы будут помечены на удаление. («Пометку» можно включить/выключить двойным кликом).
- Жмем «Заменить». Содержимое таблички отправляется в известную обработку «ReplVal”, где и производим конкретно замену сбойных элементов справочника на не сбойные.
- Закрываем обработку (как и остальные открытые окна в программе) и запускаем в меню «Операции» удаление помеченных объектов.
Все ошибки устранены.
Примечания.
- Обработка не будет правильно работать для справочников с отключенным контролем уникальности.
- При автоматическом создании копий элементов не обрабатываются периодические реквизиты справочника и реквизиты с подчиненными элементами справочника. (Это в дальнейшем может допилю, а пока тут придется обходиться ручным созданием копий)
Вступайте в нашу телеграмм-группу Инфостарт