Поиск по схожести наименования

11.04.25

Задачи пользователя - Поиск данных

Данная публикация содержит обработку по поиску ссылок справочника по схожести наименований, либо других текстовых реквизитов. Тестировалось на версии 1С:Предприятие 8.3 (8.3.24.1368). Написана как для управляемых, так и для обычных форм.

Скачать файл

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование По подписке [?] Купить один файл
Поиск ссылок справочника по схожести
.epf 25,95Kb
1
1 Скачать (1 SM) Купить за 1 850 руб.

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

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

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

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

Какие ошибки заполнения могут быть?

1. Замена схожих внешне латинских символов кириллицей и наоборот, например буквы "С". Внешне это выглядит одинаково, но функция НайтиПоНаименованию такого не найдет.

2. Перестановка слов.

3. Синтаксические ошибки

4. Неполное название.

Данная обработка позволяет это найти с некоторыми оговорками.

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

Настройки работают следующим образом.

 

 

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

"Точное соответствие" - Ищет по точному соответствию строки поиска.

"Игнорирование пробелов" - пробелы при поиске заменяются на "%"

"Игнорировать знаки препинания" - знаки препинания при поиске заменяются на "%"

"Игнорирование схожих латинских символов" - настраивает поиск так, чтобы символы из набора "кеуаросх" считались одинаковыми как на латинице, так и на кириллице. Например, слова "слава" и "cлaвa" считались одинаковыми. Хотя это не так. Первое слово полностью набрано на кириллице, а во втором символы "c","а" - набраны на латинице. При выключенной настройке найдутся оба слова.

"Поиск от каждого слова" - разбивает предложение, набранное в строке поиска на слова и ищет по каждому слову, используя все настройки, кроме "Игнорирование пробелов" и "Игнорировать знаки препинания", поскольку они и будут разбивать предложение на подстроки.

"Точность слева" и "Точность справа", "Точная длина слова" - работают совместно. Они применимы для каждого слова в предложении.

"Точность слева" и "Точность справа" - показывает, сколько букв в процентном выражении слева и справа от половины длины слова будут оставлены, а остальные будут не учитываться.

При этом параметр "Точная длина слова" говорит о том, как будет сопоставлена средняя часть слова.

Пример: "Точность слева" = 80,Точность справа" = 80. "Точная длина слова" = Да.

Возьмем строку поиска: "Самый вкусный арбуз".

Поставим настройку "Поиск от каждого слова" - "Нет". Тогда обработка будет искать по всей строке писка, но при этом в каждом слове будут сопостовляться не все буквы, а только их часть по такому шаблону:

"С___й вк___ый а___з". И кроме наименования "Самый вкусный арбуз" найдется например "Сытый вкусный артуз" и прочие элементы у которых будет одинаковое число букв с одинаковым началом и окончанием. Если выберем "Точная длина слова" = Нет. Тогба шаблоп поиска будет таким "С%й вк%ый а%з". И кроме элемента "Самый вкусный арбуз", "Сытый вкусный артуз" и прочих, ранее найденных, найдутся те, у которых длина слова не совпадает, но совпадают начало и окончание. Например "Сый вкоторый арз".

Обработка тестировалась на 1С:Предприятие 8.3 (8.3.24.1368). На некоторых версиях более младших может работать некорректно, т.к. в них нет функций работы с регулярными выражениями. Но доработать это не сложно. Вам надо исправить только функцию "ЭтоБуква" в модуле объекта, которая возвращает ИСТИНА, если символ является буквой.

Если набор "кеуаросх" вас не устраивает, тогда его можно отредактировать в функциях "ВернутьСхожиеСимволыКириллица" ,"ВернутьСхожиеСимволыЛатиница".

Удачи!

Поиск наименование схожие одинаковые элементы подобие похожие дубли справочник

См. также

Поиск данных Системный администратор Программист Платформа 1С v8.3 Управляемые формы 1C:Бухгалтерия Платные (руб)

Обработки помогут Вам легко и, главное, быстро (в 5 раз и быстрее штатной обработки 1С), выполнить поиск дублирующих данных в Ваших базах 1С на платформах 8.1-8.3. Это позволит уменьшить объем лишней информации в справочниках и документах, планах видов характеристик и др., упростит работу с данными пользователям. А так же можно, одним нажатием, узнать в каких ссылочных объектах есть вообще дубли! Понятное расположение команд и настроек, в сочетании с описанием и справкой, еще упростят процесс. А так же обновления Вы получаете бесплатно в течение года с момента приобретения данных обработок! (Обновление от 27.11.2023, версия 6.12)

10800 руб.

14.05.2012    160505    341    253    

574

Математика и алгоритмы Инструментарий разработчика Универсальные функции Поиск данных Программист Платформа 1С v8.3 1C:Бухгалтерия 1С:ERP Управление предприятием 2 Абонемент ($m)

Несколько упакованных в один класс интерфейсов для обработки популярных универсальных коллекций. Для тех, кого раздражает отсутствие действительно единого интерфейса для универсальных коллекций.

5 стартмани

25.09.2024    2882    1    Артано    14    

19

Поиск данных Программист Платформа 1С v8.3 Россия Бесплатно (free)

В этой статье я хочу рассмотреть еще один кейс применения Clickhouse в связке с 1С - оптимизацию поиска в справочнике по ключевым словам. Здесь не будет готового решения, но будут описаны важные моменты, которые позволят легко применить данный кейс в реальности.

18.08.2024    2475    1cnik2    23    

17

Поиск данных Программист Платформа 1С v8.3 1C:Бухгалтерия Абонемент ($m)

Отображение и просмотр реквизитов справочника или документа - с бесконечным открытием подуровней.

1 стартмани

14.06.2024    4063    13    RustIG    33    

22

Поиск данных Системный администратор Программист Платформа 1С v8.3 Россия Абонемент ($m)

Статья об опыте развертывания и интеграции с базой данных Manticore Search для быстрого полнотекстового поиска.

1 стартмани

30.11.2023    5536    andreysidor4uk    18    

56

Поиск данных Системный администратор Программист Пользователь Платформа 1С v8.3 1C:Бухгалтерия Абонемент ($m)

Стандартная обработка с доработанным выводом ссылок в виде дерева с учётом фильтра и с удобным подбором исходного объекта

2 стартмани

24.11.2023    1528    21    SerVer1C    10    

10

Поиск данных Корректировка данных Пользователь Платформа 1С v8.3 Управляемые формы 1C:Бухгалтерия Абонемент ($m)

PowerOffice - обработка для поиска, просмотра и обработки данных для пользователей. Доступ к объектам на просмотр и редактирование данных определяется правами пользователя.

1 стартмани

05.06.2023    2543    27    PowerBoy    1    

16

Поиск данных Программист Платформа 1С v8.3 Управляемые формы 1C:Бухгалтерия Абонемент ($m)

Получение ссылки в 1С по бинарной строке из PostgreSQL в виде строки формата bytea или из MSSQL в виде шестнадцатиричной строки. Кроме ссылочных объектов ссылки могут быть получены и для перечислений. Это может быть полезно при анализе логов журнала регистрации или СУБД.

1 стартмани

04.04.2023    3532    6    berserg    2    

13
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. BigB 193 11.04.25 19:50 Сейчас в теме
Е и Ё обрабатывается?
Например: Фёдор и Федор
2. sikuda 678 13.04.25 13:39 Сейчас в теме
Самая интересная задача это найти похожесть у "вкусный арбуз" и "арбуз вкусный"
Оставьте свое сообщение