Автоматическое исправление ошибки в БД "Проверка уникальности внутреннего идентификатора …"

Внешняя универсальная обработка для автоматизированного исправления ошибок в БД типа «Проверка уникальности внутреннего идентификатора в справочнике. ….. Исправить вручную»

Частенько, как и многие другие, сталкиваюсь с ошибкой: «Проверка уникальности внутреннего идентификатора в справочнике. …..  Исправить вручную». Надоело исправлять вручную, написал универсальную обработку для исправления сей ошибки в полуавтоматическом режиме. Работа обработки протестирована на платформе 1С v 7.7 релиз 027. Думаю, должна работать и на более ранних, т.к. никаких необычных операторов не используется.
Алгоритм работы прост:

  1. Обработка ищет в выбранном справочнике сбойные элементы по признаку «одинаковые наименования и код». Тут в алгоритме поиска есть небольшая хитрость: производится сразу поиск дублей по наименованию, а затем среди них по коду. Это сделано для автоматического выбора «несбойного» элемента для замены. В результате в левой части таблицы отображаются найденные сбойные элементы, в правой найденные автоматически элементы для замены сбойных.   
  2. Теперь есть два варианта. Можно нажать кнопку «Автоматическое создание копий», и будут созданы копии сбойных элементов. Если отмечен флажок «Не создавать, если нет ссылок», то для элементов, которые нигде не используются, копии создаваться не будут. Второй вариант: все эти действия можно сделать вручную дважды кликнув по полю «На что меняем» в нужной строке.
  3. Жмем «Пометить на удаление». Все выбранные сбойные элементы будут помечены на удаление. («Пометку» можно включить/выключить двойным кликом).
  4. Жмем «Заменить». Содержимое таблички отправляется в известную обработку «ReplVal”, где и производим конкретно замену сбойных элементов справочника на не сбойные.
  5. Закрываем обработку (как и остальные открытые окна в программе) и запускаем в меню «Операции» удаление помеченных объектов.

Все ошибки устранены.

Примечания.

  1. Обработка не будет правильно работать для справочников с отключенным контролем уникальности.
  2. При автоматическом создании копий элементов не обрабатываются периодические реквизиты справочника и реквизиты с подчиненными элементами справочника. (Это в дальнейшем может допилю, а пока тут придется обходиться ручным созданием копий)

Leave a Comment

Ваш адрес email не будет опубликован. Обязательные поля помечены *