Имя: Пароль:
1C
 
Нечёткое сравнение или что-то подобное — как делать?
0 Dzenn
 
гуру
06.12.18
13:10
Добрый день, коллеги!

Подскажите пожалуйста, какими инструментами в 1С лучше производить нечёткое сравнение.

Например, в одной базе есть строка TOO "AlumConstruction", а в другой — просто AlumConstruction, в одной — САНТАЛ ООО, в другой — САНТАЛ, ООО, в одной — ИП Шуст Игорь Александрович, в другой — Шуст Игорь Александрович,ИП

Я хочу определять некий процент похожести, и если он меньше определённого предела — выводить пользователю уведомление. Какие есть механизмы, обработки или прочее?
1 shuhard
 
06.12.18
13:15
2 Ёхан Палыч
 
06.12.18
13:20
самое простое: парсить на слова и искать вхождения в строку
3 Garykom
 
гуру
06.12.18
13:25
Для общего развития https://habr.com/post/114997/

Для 1С есть готовая ВК StrMatch.dll, но с ней некоторые проблемы на Windows после XP и 2k3
4 Garykom
 
гуру
06.12.18
13:27
Рекомендую изучить "Метод N-грамм" и банально реализовать его средствами 1С, можно и через запросы кстати.

Работает достаточно быстро и надежно, суть все строки разбиваются на биграммы (пары символов рядом) или триграммы (тройки символов рядом последовательных) и сравнивается количество совпадений эти N-грамм для двух строк.
5 Garykom
 
гуру
06.12.18
13:29
"САНТАЛ ООО, в другой — САНТАЛ, ООО"

"СА"
"АН"
"НТ"
"ТА"
"АЛ"
"Л "
" О"
"ОО"
"ОО"

Отличие будет для второй "Л," и ", " остальные же совпадут биграммы
6 maximkasuper
 
06.12.18
13:31
(0) Полнотекстовый поиск в 1С имеет возможность нечеткого поиска с указанием порога нечеткости
7 lodger
 
06.12.18
13:33
голосую за полнотекстовой поиск.
8 Dzenn
 
гуру
06.12.18
13:35
(6) как его можно использовать в такой прикладной задаче?
9 maximkasuper
 
06.12.18
13:55
(8) В базе приемнике, видимо, это не просто строка, а справочник "Контрагенты". Далее, программно обращаемся к полнотекстовому поиску с отбором по данному типу данных и по строке источника с указанием порога нечеткости.
10 Вафель
 
06.12.18
13:57
контрагентов лучше по ИНН сверять
11 Rovan
 
гуру
06.12.18
13:58
12 Dzenn
 
гуру
06.12.18
14:10
2 + 2 = 3.9999999999999999999999999999999...