Практика показывает, что чем дольше существует база, тем выше риск, что в ней рано или поздно начнут появляться дубли. Появляться они могут в самых разных справочниках и по самым разным причинам. В данной статье мы рассмотрим основные причины возникновения дублей, а также универсальную обработку поиска и удаления дублей в типовых конфигурациях. Если общее понимание проблемы дублей вам известно, можете смело пропустить вводную часть и перейти к практической.
Вводная часть
В качестве тестовой базы будем использовать демо базу 1С Бухгалтерия предприятия. Принцип работы обработки “Поиск и удаление дублей” будет одинаков для подавляющего большинства типовых конфигураций – Управление торговлей, Зарплата и Управление Персоналом, УНФ и многих других.
Что же такое дубль, и почему их наличие в базе может привести к ошибкам?
Чаще всего под дублем подразумевается наличие двух (и более) идентичных элементов справочника. Например, два банка с одинаковым БИК, два товара с одинаковым названием и артикулом, два контрагента с одинаковым названием и ИНН, и т.п.
Наличие в базе дублей чревато множеством ошибок, вот лишь некоторые:
- неверные остатки товаров на складе
- неверные взаиморасчеты с контрагентами
- неверный расчет зарплаты
- неправильная работа алгоритмов программы, обработок, отчетов и др.
Причины появления задвоенных элементов в 1С
Наиболее распространенными причинами являются следующие:
- Человеческий фактор. Невнимательность, ошибки при поиске уже существующих элементов или использовании групповой обработки объектов – все это приводит к тому, что при наличии уже созданного элемента, например, карточки товара, пользователь создает еще одну. Классический пример – заведение контрагента “ООО “Ромашка”” при наличии контрагента “Ромашка ООО” или “Общество с ограниченной ответственностью “Ромашка””.
- Одновременное создание одинаковых элементов в разных базах, между которыми настроен обмен данными – например, между узлами распределенной ИБ, или между базами Бухгалтерии и Торговли, и т.п.
Варианты исправления дублей в 1С
- Наилучшим решением проблемы дублей является изначально не допускать их появления. Т.е. чаще всего следует назначить ответственных за НСИ, разграничить права на создание элементов справочников, организовать централизованное создание элементов только в одной базе.
- В случае, если задвоенные элементы удалить по какой-то причине нельзя (например, контрагент-дубль используется во взаиморасчетах, и период редактирования данных уже закрыт, а исправление документов может нарушить уже сданную отчетность), такие дубли помечаются на удаление и переименовываются с различными префиксами, например “НЕ ИСПОЛЬЗОВАТЬ”, “Дубль”, “Удалить” и т.п. Ситуацию с учетом это не сильно спасает, но хотя бы снижает риск повторного использования задвоенных элементов.
- Использование специализированной обработки “Поиск и удаление дублей”.
Обработка "Поиск и удаление дублей"
В конфигурации Бухгалтерия Предприятия данная обработка находится в меню Администрирование / Поддержка и обслуживание. Обработка позволяет находить дублирующиеся элементы во всех справочниках, планах видов характеристик, планах счетов и планах видов расчета, и заменять ссылки на дубли ссылками на выбранный “верный” элемент.
Настройки поиска дублей
Основные настройки обработки связаны с параметрами поиска дублей – где искать, что считать дублем, а также с уточнением фильтров. Например, искать дубли только в определенной папке, или только с определенными реквизитами, и т.п. Рассмотрим их подробнее.
Область поиска дублей
В области поиска можно указать любой справочник, ПВХ, план видов расчета или план счетов, где следует искать дубли.
Отбор
В настройках отбора можно указать критерии, сужающие область поиска – например, исключить элементы, помеченные на удаление. Настройки отборов идентичны настройкам в отчетах на СКД, и позволяют создавать сложные фильтры со множеством условий. Это может быть полезно, если нужно искать специфичные дубли, например, с определенным ИНН, или с определенным табельным номером.
Правила сравнения
Позволяют “объяснить” обработке, что считать дублем. Для строковых реквизитов (например, для наименования или полного наименования) можно указать “Совпадает ” и “Совпадает по похожим словам”, для остальных – “Совпадает”.
Можно составлять сложные правила сравнения. Например, дублем считать элементы номенклатуры с похожим наименованием и совпадающей номенклатурной группой.
Работа с найденными дублями
После того как параметры поиска дублей настроены, следует нажать кнопку “Найти дубли”. Важно учитывать, что поиск по похожим словам может занять продолжительное время. Строгое совпадение работает быстрее. Кроме того, поиск по похожим словам может выдать некорректные с точки зрения пользователя результаты.
После завершения поиска, в обработке будут отображаться сгруппированные дублирующиеся элементы. Один элемент в каждой группе в обязательном порядке будет назначен основным. Все ссылки в каждой группе дублей будут заменены на основной элемент, а остальные будут помечены на удаление.
Для каждой группы дублирующихся элементов можно проделать следующие действия:
- Исключить всю группу, сняв флажок на уровне группировки.
- Исключить конкретный элемент из обработки. Он будет пропущен при замене ссылок
- Указать конкретный элемент как оригинал, выделив нужную строку и нажав кнопку “Отметить как оригинал”
- Просмотреть места использования, став на нужную строку. Места использования будут выведены в таблице справа.
- Открыть выделенный элемент, нажав кнопку “Открыть”
По умолчанию обработка отмечает как оригинал элемент с наибольшим количеством найденных ссылок. При одинаковом количестве ссылок, отмечается элемент с меньшим кодом, т.к. он считается созданным раньше остальных.
Удаление дублей
После нажатия кнопки “Удалить дубли” обработка попытается заменить ссылки на выбранные оригиналы, а элементы-дубли пометить на удаление. Если замена ссылок прошла успешно, помеченные на удаление элементы можно будет удалить стандартной обработкой “Удаление помеченных”.
Если в процессе замены ссылок возникнут ошибки, обработка выведет соответствующий текст и предложит после исправления ошибок повторить удаление.
Ошибки могут возникнуть по разным причинам – например, при замене ссылок в документе установка цен, может получиться что в одном документе будет несколько строк с одним и тем же набором измерений, что недопустимо при записи в регистр сведений “Цены номенклатуры”. Также возможно, что элемент, объект, который обработка пытается изменить, редактируется другим пользователем, либо при его изменении возникают другие ошибки (контроль остатков, ошибки заполнения и т.п.).
Обработка поиска и удаления дублей – мощный и гибкий инструмент, позволяющий исправлять ошибки дублирующихся элементов в базе. Но следует быть с ней внимательным и осторожным, а перед использованием рекомендуется создать резервную копию базы.
Также, при поиске и удалении дублей следует учитывать наличие других баз, между которыми происходит обмен. Довольно часто операцию поиска и замены дублей приходится делать одновременно в нескольких базах.
Надеюсь, данная статья поможет вам эффективно пользоваться данной обработкой, и упростит наведение порядка в учете 🙂