Как найти и использовать обработку поиска и удаления дублей в 1С:Бухгалтерия предприятия 3.0?

Пользователь 1С v8.3 (Управляемые формы) 1C:Бухгалтерия
← На главную

В процессе ведения учета в программе 1С:Бухгалтерия предприятия 3.0 пользователи часто сталкиваются с появлением дублирующихся элементов в справочниках (например, дважды заведенный контрагент, одинаковые номенклатурные позиции или дубли договоров). В старых конфигурациях, таких как Управление торговлей 10.3, для решения этой проблемы использовалась популярная обработка «Поиск и замена дублирующихся элементов справочников». Выясним, существует ли аналогичный инструмент в современном решении БП 3, где его найти и как правильно использовать на практике.

Где найти обработку «Поиск и удаление дублей» в БП 3

В конфигурации 1С:Бухгалтерия предприятия 3.0 (на платформе 8.3 с управляемыми формами) предусмотрен штатный и очень мощный инструмент для очистки информационной базы. Разберем два основных способа его вызова:

  1. Через стандартный пользовательский интерфейс (рекомендуемый способ):
    Если у вас есть права администратора, нет необходимости глубоко погружаться в технические меню. Перейдем по следующему пути:
    Раздел Администрирование ➡️ Обслуживание ➡️ раскрываем группу Корректировка данных ➡️ нажимаем на ссылку Поиск и удаление дублей.
  2. Через функции для технического специалиста:
    В правом верхнем углу главного окна нажмем на кнопку меню (три точки или главный сервис-меню), выберем пункт Функции для технического специалиста (в старых версиях платформы этот режим назывался «Все функции»). В открывшемся окне перейдем в ветку Обработки и найдем в списке инструмент ПоискИУдалениеДублей.

Как правильно настроить поиск и избежать критических ошибок

Инструмент позволяет гибко настраивать правила поиска, чтобы случайно не объединить разные элементы. Рассмотрим основные параметры настройки подробнее:

Определение «Оригинала» (главного элемента) при слиянии

После завершения автоматического поиска программа выведет на экран сгруппированный список найденных дублирующихся элементов.

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

Проанализируем предложенный выбор визуально. Если мы видим, что автоматически выбранный оригинал заполнен менее корректно, чем дубль (например, у него не заполнен КПП, отсутствует адрес или телефон), мы можем вручную переназначить оригинал. Для этого достаточно выделить правильный элемент в списке и нажать кнопку «Отметить как оригинал».

Что происходит «под капотом» системы при объединении

Посмотрим на алгоритм работы обработки в момент нажатия кнопки «Удалить дубли»:

  1. Программа запускает транзакцию и начинает обходить все документы, регистры сведений, регистры накопления и другие справочники, где упоминаются удаляемые элементы.
  2. Во всех найденных объектах ссылка на «дубль» перезаписывается на ссылку на выбранный «Оригинал».
  3. Сами дублирующиеся элементы справочника физически в этот момент из базы не удаляются. Программа лишь устанавливает на них пометку на удаление.
  4. Для окончательной очистки базы данных нам потребуется запустить стандартную процедуру «Удаление помеченных объектов» (также доступную в разделе «Администрирование» -> «Обслуживание»).

Решение проблем с зависанием, памятью и блокировками СУБД

На практике при работе с большими базами данных пользователи могут столкнуться с техническими сложностями, которые мы разберем по шагам.

Проблема 1: Нехватка локальной памяти (Out of Memory).
Ранее на 32-разрядных версиях платформы 1С при обработке огромного количества ссылок локальная память клиента быстро переполнялась, что приводило к аварийному завершению работы программы. Сегодня переход на 64-битные версии клиента и сервера практически полностью решил эту проблему.

Проблема 2: Зависание сервера и блокировки СУБД.
Если у заменяемых элементов накопились десятки тысяч мест использования (ссылок в исторических документах за много лет), обработка пытается выполнить замену всех ссылок в рамках единой транзакции. Это накладывает массовые избыточные блокировки на таблицы СУБД (например, MS SQL или PostgreSQL). В результате база данных может полностью зависнуть для остальных пользователей, а сервер прервет операцию по таймауту.

Как решить проблему производительности:

Недостатки стандартного механизма и альтернативные решения

Главный недостаток типовой обработки в БП 3 — это информативная лаконичность интерфейса сравнения. В окне результатов выводится очень мало реквизитов (обычно только наименование и число использований). Из-за этого сложно быстро понять, какой элемент заполнен правильнее, не открывая каждую карточку в отдельном окне.

Если стандартного функционала не хватает для качественного анализа, специалисты часто используют специализированные внешние обработки или расширения, которые позволяют выводить в таблицу сопоставления любые реквизиты (например, ИНН, КПП, адреса и телефоны) прямо на экран для удобного ручного выбора оригинала.

← На главную