coderstar

CODERSTAR.RU / уроки и разработки (1С:Предприятие)

Удаление дублей в справочниках 1С

23.12.2016 18165 Чтение ~10-15мин
Из этой статьи вы научитесь удалять дубли в любых справочниках информационной базы, используя типовые возможности конфигурации.

Из этой статьи вы научитесь удалять дубли в любых справочниках информационной базы, используя типовые возможности конфигурации.

Показывать буду на примере Бухгалтерии 3.0, в остальных конфигурациях аналогично.

Для примера удалим дубли в справочниках Номенклатура и Контрагенты. В первом случае будем искать элементы справочника, имеющие одинаковое наименование, а во втором - с одинаковыми значениями ИНН и КПП.

Удаление дублей номенклатуры

Заходим в обработку удаления дублей:

чистка дублей дубли в 1с

Форма обработки выглядит так:

дубли в 1с

В верхнем поле выбираем первый справочник, Номенклатура:

удаление дублей

Если дубли нужно искать не во всем справочнике, а с каким-то отбором (например, только в определенной группе), тогда нужно настроить отбор элементов:

дубли в 1с

Но это не наш случай - нас интересуют дубли во всем справочнике, поэтому обойдемся без отбора.

Кликнем на гиперссылку в поле Сравнивать:

удаление дублей

По умолчанию указано, что сравнение будет идти по наименованию. Но давайте изменим тип сравнения на Наименование совпадает. Нажмем ОК, в результате будет так:

удаление дублей

Теперь нажимаем внизу кнопку Найти дубли:

дубли в справочниках 1с

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

Нажав Удалить дубли, увидим такое окошко:

дубли в справочниках 1с

После него появится сообщение со статусом обработки:

дубли в 1с

Т.е. Осталось в справочнике 2 элемента из 5 изначальных. Все ссылки заменены на эти два элементы. Но дубли программа не удалила, а только расставила на них пометки удаления и заменила их везде, где они использовались в программе на оригиналы. Удалять помеченные дубли будем чуть позже.

дубли в 1с

Удаление дублей контрагентов

В настройках правил поиска дублей в данном случае требуется отключить поиск по наименованию и активировать поля ИНН и КПП (чтобы именно по этим полям был осуществлен поиск). Все настройки поиска дублей настраиваются именно здесь.

дубли в справочниках 1с

Должно получится вот так:

удаление дублей

Дальше все аналогично первому случаю с номенклатурой, нажимаем Найти дубли:

дубли в справочниках 1с

Первые группы дублей - это некорректные данные демо-базы, не будем с ними разбираться. Для этого просто снимем с них галки, чтоб программа их не затронула. Обработаем последнего контрагента из списка.

Также нажимаем Удалить дубли.

Теперь давайте окончательно удалим объекты, помеченные на удаление:

дубли в 1с

Укажем выборочное удаление:

чистка дублей

Выберем только контрагентов и номенклатуру:

дубли в 1с

Появится такое сообщение:

дубли в справочниках 1с

Если повторно попробуем найти дубли в номенклатуре, то программа в этот раз их уже не найдет:

чистка дублей

Дмитрий Медведков 1С

Дмитрий Медведков программист, консультант 1С
Работаю в 1С с 2012-го, специализируюсь на УТ 11
Имею 10 квалифиционных 1C