В процессе ведения учета в программе 1С:Бухгалтерия предприятия 3.0 пользователи часто сталкиваются с появлением дублирующихся элементов в справочниках (например, дважды заведенный контрагент, одинаковые номенклатурные позиции или дубли договоров). В старых конфигурациях, таких как Управление торговлей 10.3, для решения этой проблемы использовалась популярная обработка «Поиск и замена дублирующихся элементов справочников». Выясним, существует ли аналогичный инструмент в современном решении БП 3, где его найти и как правильно использовать на практике.
В конфигурации 1С:Бухгалтерия предприятия 3.0 (на платформе 8.3 с управляемыми формами) предусмотрен штатный и очень мощный инструмент для очистки информационной базы. Разберем два основных способа его вызова:
ПоискИУдалениеДублей.Инструмент позволяет гибко настраивать правила поиска, чтобы случайно не объединить разные элементы. Рассмотрим основные параметры настройки подробнее:
Контрагенты или Номенклатура). Мы также можем ограничить область поиска, задав отбор (например, искать дубли только в определенной папке или по конкретной организации).ИНН совпадает и ИНН заполнен. Это гарантирует точность сопоставления.После завершения автоматического поиска программа выведет на экран сгруппированный список найденных дублирующихся элементов.
Один из элементов в группе система должна определить как «Оригинал» (главный элемент, который останется в базе и на который будут перенаправлены все ссылки), а остальные — как дубли. По умолчанию программа выбирает оригинал автоматически по принципу наибольшего количества мест использования в документах (такой элемент помечается синей стрелкой).
Проанализируем предложенный выбор визуально. Если мы видим, что автоматически выбранный оригинал заполнен менее корректно, чем дубль (например, у него не заполнен КПП, отсутствует адрес или телефон), мы можем вручную переназначить оригинал. Для этого достаточно выделить правильный элемент в списке и нажать кнопку «Отметить как оригинал».
Посмотрим на алгоритм работы обработки в момент нажатия кнопки «Удалить дубли»:
На практике при работе с большими базами данных пользователи могут столкнуться с техническими сложностями, которые мы разберем по шагам.
Проблема 1: Нехватка локальной памяти (Out of Memory).
Ранее на 32-разрядных версиях платформы 1С при обработке огромного количества ссылок локальная память клиента быстро переполнялась, что приводило к аварийному завершению работы программы. Сегодня переход на 64-битные версии клиента и сервера практически полностью решил эту проблему.
Проблема 2: Зависание сервера и блокировки СУБД.
Если у заменяемых элементов накопились десятки тысяч мест использования (ссылок в исторических документах за много лет), обработка пытается выполнить замену всех ссылок в рамках единой транзакции. Это накладывает массовые избыточные блокировки на таблицы СУБД (например, MS SQL или PostgreSQL). В результате база данных может полностью зависнуть для остальных пользователей, а сервер прервет операцию по таймауту.
Как решить проблему производительности:
Главный недостаток типовой обработки в БП 3 — это информативная лаконичность интерфейса сравнения. В окне результатов выводится очень мало реквизитов (обычно только наименование и число использований). Из-за этого сложно быстро понять, какой элемент заполнен правильнее, не открывая каждую карточку в отдельном окне.
Если стандартного функционала не хватает для качественного анализа, специалисты часто используют специализированные внешние обработки или расширения, которые позволяют выводить в таблицу сопоставления любые реквизиты (например, ИНН, КПП, адреса и телефоны) прямо на экран для удобного ручного выбора оригинала.