Версия для печати темы (https://pro1c.org.ua/index.php?s=44dfb905ee279afe337d01e3aa57c278&showtopic=67671)

Нажмите сюда для просмотра этой темы в обычном формате

Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 _ Программирование в 1С Предприятие 8.3 _ Як уникнути двомовності в найменуваннях елементів довідника

Автор: kostya77 12.11.24, 8:35

Добрий день. При завантаженні з файлу елементи довідника створюються програмно по найменування. Щоб уникнути дублювання я виконую пошук по найменуванню, якщо находжу то не створюю, але що робити з двомовнісью? Наприклад, є найменування на укр мові і таке ж саме на рос мові і у мене створюються два елементи хоча повенен створитися один.

Автор: Profi_1C77 12.11.24, 9:27

kostya77 @ Сегодня, 8:35 * ,
Вряд ли будет хороший ответ. Потому что даже лишний пробел и несовпадение. Руками перебирать после загрузки

Автор: denis84 12.11.24, 10:55

kostya77 @ Сегодня, 8:35 * ,
Пошук по найменуванню дуже тонка штука (не корректно може працювати)- любий лишній символ (пробіл, буква, крапка, кавичка і т.д) і все новий унікальний елемент довідника. Потрібно використовувати, якийсь унікальний реквізит - код, штрихкод

Автор: AnryMc 12.11.24, 12:22

Подключить Искусственный интеллект и обучить его...

Автор: volodya1122 12.11.24, 17:09

kostya77 @ Сегодня, 8:35 * ,

У мене була подібна задача.
Не панацея на всі випадки життя, але деякі подібні написи помогає вявляти при загрузці.

Коли потрібно робити загрузку
1. Заганяємо весь список товару в таблицю значень (Колонки: "ссилка" і "назва для пошуку")
2. "Назву для пошуку" попередньо перетворюємо: видаляємо з назви товару неважливі символи - пробіли, нерозривні пробіли, крапки, коми, дефіси, тире, лапки, символи переносу строки).
3. При загрузці назву товару проганяємо тим самим алгоритмом з п.2. і робимо пошук в таблиці значень по колонці "назва для пошуку".

Функция ВиправитиСтроку(дане)
ччч=дане;  

  ччч=НРег(СтрЗаменить(ччч," ",""));  // пробіл
ччч=СтрЗаменить(ччч," ",""); // нерозривн пробыл
ччч=СтрЗаменить(ччч,"    ","");    // табуляція
ччч=СтрЗаменить(ччч,"?","і"); // на українське і
ччч=СтрЗаменить(ччч,Символ(34),"");  // лапки
ччч=СтрЗаменить(ччч,".","");   // крапка
ччч=СтрЗаменить(ччч,",","");  // кома
ччч=СтрЗаменить(ччч,"'","");  // апостроф
ччч=СтрЗаменить(ччч,";","");  // крапка з комою
ччч=СтрЗаменить(ччч,":",""); // дві крапки
ччч=СтрЗаменить(ччч,"-","");  // дефіс
ччч=СтрЗаменить(ччч,"_","");  // нижнє підкреслення
ччч=СтрЗаменить(ччч,"i","і"); //латинське і на українське
ччч=СтрЗаменить(ччч,"/","");  //
ччч=СтрЗаменить(ччч,"\","");  //
ччч=СтрЗаменить(ччч,"|","");  //  


    
Возврат ччч;
КонецФункции


Автор: AnryMc 12.11.24, 17:18

volodya1122 @ Сегодня, 17:09 * ,

А я еще добавлял нечеткий поиск - отличия соседних символов и количества совпадений назначался "вес соответствия"

И по "весу" совпадения (больше некоего значения) происходила замена с выводом уведомления + в конце показывался протокол - для ручных корректировок...

Автор: xlmel 12.11.24, 18:15

В качестве экзотики и если не очень большие требования к времени загрузки, то можно подключить Google Translator. Если номенклатура найдена, то отправлять запрос к Google нет необходимости, если нет, то отправить 2 пакета (ru->ua и ua->ru) и искать по полученным данным.
Ну и если это регулярная операция, то можно сделать для номенклатуры дополнительный реквизит или свойство, заполнить его и проводить поиск и по нему. Работы на начальном этапе больше, но потом меньше разборов.

Автор: volodya1122 12.11.24, 18:34

Цитата(xlmel @ 12.11.24, 18:15) *
В качестве экзотики и если не очень большие требования к времени загрузки, то можно подключить Google Translator.

Також не універсальне рішення.
Наприклад:
Цукерки "Вогник"
Конфеты "Огонёк"
Цукерки "Огонёк"
Це один і той самий товар чи різні?

Цитата(xlmel @ 12.11.24, 18:15) *
можно сделать для номенклатуры дополнительный реквизит или свойство

Також можливий такий варіант. Наприклад зробити окрему табличну частину для назви товару- куди записувати можливі назви які можуть бути і робити пошук ще по них.
Але основте питання хто буде тратити свій час для заповнення всіх цих даних і слідкувати за правильністю заповнення (можливий варіант що для різних товарів ці іншомовні назви можуть співпадати)

Автор: twilight_dream 12.11.24, 18:58

підключіть модуль чата GPT. Або свій штучний інтелект навчіть, хоча в другому варіанті мабуть більше роботи буде ніж вихлопу.

Автор: Vofka 13.11.24, 10:02

Цитата(twilight_dream @ 12.11.24, 18:58) *
підключіть модуль чата GPT.

Що за модуль і як він тут може допомогти?

Автор: AnryMc 13.11.24, 11:39

Цитата(volodya1122 @ 12.11.24, 18:34) *
Цукерки "Вогник"
Конфеты "Огонёк"
Цукерки "Огонёк"


Стандартный полнотекстовый поиск 1С поддерживает дополнительные словари (в нём ветка - синонимы) .... (общие макеты)

Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7
https://pro1c.org.ua