Если за базой не следить, вовремя не подчищать, то неизбежно дублирование информации. Наиболее часто дублируются номенклатура и, конечно же, контрагенты.
В 1С:Бухгалтерия 8.3 уже встроен механизм для поиска и устранения дублей. Это универсальная обработка "Поиск и удаление дублей", которая подходит для поиска дубликатов не только в номенклатуре и контрагентах, но и в других справочниках.
Рассмотрим её использование на примере справочника "Контрагенты".
Ситуация
1. Итак, у нас есть контрагент "Аэрофлот" в папке покупатели.
2. И его дубликат (полная копия), случайно заведенная в папке поставщики. ИНН у обоих элементов совершенно одинаковый.
Наша задача воспользоваться обработкой по поиску и замене дублей так, чтобы она нашла эти элементы, указала (сопоставив их ИНН), что один дублирует другого и объединила их в один элемент.
Открываем обработку
3. Чтобы открыть обработку для поиска дублей нужно зайти в меню "Функции для технического специалиста..."( Если у вас его нет - вам сюда. ).
И выбрать среди всех обработок "Поиск и удаление дублей".
Настраиваем условия
4. Форма обработки перед нами. Укажем область для поиска дублей, нажав на три точки в поле "Искать в".
5. Выберем "Контрагенты" и нажмем кнопку "Выбрать".
6. Нажмем на кнопку троеточие в поле "Пометка удаления равно нет":
7. И добавим ещё одно правило отбора (кнопка "Добавить новый элемент").
8. В качестве поля для отбора выберем ...
9. ... выберем ИНН.
10. В качестве вида сравнения укажем "Заполнено" и нажмём кнопку ОК:
Таким образом мы будем осуществлять поиск среди всех контрагентов, у которых заполнен ИНН.
11. Осталось задать критерий для сравнения. Нажмите пункт "Наименование совпадает по похожим словам".
12. В открывшихся правилах поиска дублей снимите галку рядом с полем "Наименование".
13. И установите галку рядом с полем "ИНН" и выберите в качестве правила для ИНН пункт "Совпадает". Нажмите кнопку "Выбрать".
Ищем дубли
14. Внизу окна нажмите кнопку "Найти дубли".
15. А вот и наш аэрофлот. Вернее два аэрофлота. И места использования каждого из них. Тот аэрофлот, рядом с которым зеленая стрелка, 1С считает главным и при удалении дублей останется именно он. Если выбор 1С оказался ошибочен - выделите другой элемент и нажмите кнопку "Отметить как оригинал". Установите галки рядом с элементами, которые по-вашему мнению являются дублями главных элементов. Теперь нажмите кнопку "Удалить дубли".
16. Обработка рапортует нам, что дубли объединены в один элемент и теперь вместо двух аэрофлотов у нас один, что и требовалось получить!
Мы молодцы, на этом всё
Кстати, подписывайтесь на новые уроки...
Важное замечание
Друзья, отдельно хочу заострить внимание на моменте, который ставит в тупик многих пользователей (я и сам не сразу это понял).
Обработка позволяет сравнивать поля друг с другом всего по двум правилам (пункт "Сравнивать"):
- полное совпадение
- совпадение по похожим словам, причём мы не можем настраивать эту похожесть
Всё. Других вариантов нет.
Это значит, что мы не можем настроить обработку на поиск дублей по своему принципу.
Например, нам не удастся настроить её так, чтобы она посчитала дублями все элементы, в которых встречается нужное нам слово.
Мы можем только сказать: ищи нам дубли среди такого-то справочника, при этом считай дублями те элементы у которых совпадают такие-то поля или полностью или похожи друг на друга. При этом как именно они похожи - решай сама.
Поле "Отбирать", которое и вводит всех в заблуждение, потому что оно расположено первым, предназначено для отбора элементов, которые обработка уже посчитала дублями.
То есть, если вы в поле "Отбирать" поставили "Все элементы" и дубли не нашлись - смысл в настройке поля "Отбирать" нет. Оно позволяет только сузить результаты, но не расширить.
Уфф.., надеюсь я кому-то помог сэкономить время. До меня самого почти час доходило что же я делаю не так.
А тем кому нужен более настраиваемый поиск по дублям я советую подсистему "Инструменты разработчика".
Только нужно учесть, что она уже для очень опытных пользователей. Начинающим может быть нелегко с ней разобраться.