В обработке есть справка, в которой описан порядок работы с обработкой.
Обработка позволяет указать ключевые поля элементов справочника для поиска дублей, выбрать правильные элементы.
Выполнить замену ссылок неправильных элементов на правильные. Пометить на удаление и удалить объекты из базы данных с проверкой ссылочной целостности.
Можно указать режим замены ссылок: Режим "Обмена данными", выполнение в единой транзакции.
Работать можно сразу с несколькими справочниками, настроив для каждого правила поиска дублей, условие правильности элемента.
Для замены ссылок используется функция из типовой универсальной обработки ("Поиск и замена значений") несколько переработанная.
На вложенных скринах указан порядок работы с обработкой.
1. Настройка правил поиска дублей.
2. Запуск поиска дублей.
3. Поиск связанных данных (где используются ссылки наших задвоенных объектов).
4. Выполнение замены неправильных ссылок на правильные ссылки.
5. Пометка удаление неправильных ссылок.
6. Удаление неправильных объектов.
ДОРАБОТКИ
10.03.2012. Сделан удобный выбор объекта метаданных в настройке поиска дублей.
18.07.2012. Версия 1.0.1.4.
1. При записи набора регистра бухгалтрерии в режиме обмена данных (ОбменДанными.Загрузка = Истина) есть фича:
если не ведется учет по измерению ("по подразделению"), но в записи установить значение (например, Подразделение.ПустаяСсылка), то не смотря на то, что учет по подразделению не ведется, записывается значение установленное в наборе.
Напротив, если ОбменДанными.Загрузка = Ложь, то в таком случае значение автоматически обNULLяется.
В результате такого поведения при заменах ссылок в регистрах бухгалтерии могли возникать ошибки, если замена велась с отключенным режимом записи (ОбменДанным.Загрузка = Истина).
Исправляется перезаписью записей регистра в режиме ОбменДанными.Загрузка = Ложь.
2. Внесены поправки по замечаниям.
3. Добавлены дополнительные настройки. Таблица ошибок. Ведение журнала регистрации.
4. Добавлена конфигурация с модулями замены, с возможностью вынесения процедуры выполнения замены на сервер, появилась возможность запуска выполнения замены в фоновом режиме. (см. конфигурации "ВыполнениеЗаменыСсылочныхЭлементов.cf" и "ИндикаторФоновогоЗадания.cf").
Конфигурация "ИндикаторФоновогоЗадания.cf" для клиент-серверного режима.
14.08.2012. Версия 1.0.1.5.
1. Добавлена замена ссылок в общих реквизитах объектов.
2. Исправлены найденные ошибки (см. комментарий 17).
27.11.2012. Версия 2.1.1.10.
1. Переписано ядро механизма выполнения замены ссылок. Повышена стабильность программы, скорость выполнения, оптимальное использование оперативной памяти. При выполнение замены ссылок в больших объемах данных могла возникать ошибка "Нехватка памяти" или выполнение могло проходить слишком медленно.
2. Добавлены новые настройки: Параметры обмена данными, фонового задания, уровней транзакции, контекста выполнения.
3. Усовершенствован механизм индикации хода выполнения обработки.
4. Написана справка для обработки.
11.12.2012. Версия 2.1.1.11.
1. Оптимизированы алгоритмы обработки замены ссылок в движениях документа.
2. Добавлен механизм хранения описаний ошибок (исключений) с возможностью прерывания выполнения обрабоки замены ссылок при накоплении заданного количества исключений.
24.12.2012. Версия 2.1.1.12.
1. Добавлена возможность подключать обработчики для событий обработки замены ссылок. События обработки замены:
- "инициализация дополнительных параметров" - в клиент-серверном варианте выполняется дважды, один раз на клиентской стороне, другой на серверной;
- "перед выполнением замены ссылок" - выполняется один раз перед выполнением всех замен;
- "перед полученим объекта" - выполняется перед получением объекта, в котором необходимо выполнить замены, из базы данных;
- "перед записью объекта" - выполняется перед записью объекта, с уже выполненными заменами, в базу данных;
- "после выполнения замен" - выполняется один раз после выполнения замены всех ссылок.
17.03.2014. Версия 2.1.2.7.
- оптимизация интерфейсных механизмов;
- добавлено автосохранение значений элементов формы (текущих настроек);
- изменен формат файла настроек.
29.04.2014. Версия 2.1.2.7.
- реализована возможность добавлять в ключ поиска дублей строковое поле неограниченной длины (такое поле приводится к ограниченному полю длиной в 1000 символов);
- незначительные исправления и улучшения (если замена ссылки производилась на ту же ссылку, то функция замены уходила в бесконечный цикл).
26.09.2014. Версия 2.3.1.1.
- добавлена управляемая форма для замены ссылок в объектах базы данных;
- незначительные исправления и улучшения (реализована замена в регистрах с регистратором-битой ссылкой, повышена стабильность кода).
01.12.2014. Версия 2.3.1.3.
- добавлена возможность включения привилегированного режима (выполнение замены с полными правами);
- исправлена ошибка выполнения замены ссылок в последовательностях.