Код для поиска номенклатуры в конфигурациях 1С. Использование мнемоники по первым буквам как вариант применения

22.09.20

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

Применение мнемоники для поиска в конфигурациях 1С. "Каждый охотник желает знать, где сидит фазан".

Скачать исходный код

Наименование Файл Версия Размер
Расширение для конфигурации БП 3 с добавлением реквизита "Код для поиска" в справочник Номенклатура.
.cfe 18,76Kb
1
.cfe 18,76Kb 1 Скачать
Расширение для конфигурации БП 3 без изменения справочника Номенклатура, с использованием механизма дополнительных реквизитов
.cfe 18,17Kb
1
.cfe 18,17Kb 1 Скачать
Расширение для конфигурации УНФ без изменения справочника Номенклатура, с использованием механизма дополнительных реквизитов.
.cfe 44,38Kb
1
.cfe 44,38Kb 1 Скачать

Основная тенденция автоматизации - сократить участие человека в процессе - мы пытаемся уйти от ручного ввода - вместо человека (вместе с ним) пытаемся использовать сканирование, распознавание, автоматическую загрузку документов, заполнение документа самим клиентом.
Это тенденция, а практика такова, что он - ручной ввод на стороне поставщика (оператора внутри нашей компании) - останется с нами ещё на долгие годы и прекратит своё существование только тогда, когда ИИ (при распознавании речи заказчика) достигнет понимания на уровне понимания человека-человеком, автоответчик при заполнении документа справится со всеми пожеланиями сам.

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

Как же ускорить работу оператора?

 

Обратимся к инструментарию:

Посмотрим, что у нас на сегодняшний день есть в арсеналах на примере современной ЕРП/УТ/КА - мы начинаем набирать "искомый" текст и в списке выбора появляется список "подходящих" элементов.

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

"Возникает на сервере перед стандартным формированием списка при вводе по строке, автоподборе текста и быстром выборе, а также при выполнении метода ПолучитьДанныеВыбора."

Что собственно, в конфигурациях ЕРП/УТ/КА и сделано.

В ЕРП/УТ/КА при этом идёт обращение к процедуре общего модуля НоменклатураВызовСервера.НоменклатураОбработкаПолученияДанныхВыбора(ДанныеВыбора, Параметры, СтандартнаяОбработка); внутри которой собственно и формируется список значений для выбора.

 

 
 НоменклатураОбработкаПолученияДанныхВыбора

 

Поиск осуществляется по шаблону СтрокаПоиска + "%" - по совпадению с начала.

Результатом обработки является список, подходящих элементов, упорядоченных по реквизиту "Порядок"

0 - Наименование

1 - Код

2 - Артикул

3 - Код для поиска

Количество, возвращаемых элементов, ограничивается 50 различными значениями.

 

Вернёмся к проблеме:

Каждый, наверное, согласится, что выбор нужного значения, даже из 10 вариантов уже может быть затруднителен. Что тогда говорить о похожих 50. А чем больше в базе номенклатуры, тем больше их похожих.

Т.е. чем меньше отображенных вариантов, тем быстрее оператор выберет необходимый.

За счет чего можно этого добиться? Вернёмся к используемым реквизитам:

Наименование - вводится в базу нами и ничто не мешает при его вводе использовать определённые правила, ну, например, всегда начинать наименование товара с существительного, определяющего товар "Бумага белая", в противовес "Белая бумага".

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

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

Артикул - вводится в базу нами, и как и с наименованием мы можем при вводе придерживаться какого-то шаблона. В Интернете можно поискать "Как правильно составить артикул" и получить массу рекомендаций. Ну, например, как вам "Итоговый внутренний артикул товара - 05M3818R0102AU из которого понятна практически вся информация о элементе каталога."? И как быть, если мы вводим в базу "чужую" номенклатуру с имеющимся артикулом поставщика?

Код для поиска - вот собственно и цель публикации - смею предложить следующий алгоритм использования данного реквизита в практической работе для ускорения ввода оператором номенклатуры:
- заполняем наименование номенклатуры по "узаконенным" нами правила, например "Тип-Бренд-Модель-Прочее" ("Сотейник Tefal Original Cook, с крышкой, диаметр 24 см", "Одеяло Green Line Delphia Теплое Цвет: Белый (140х205 см)")

- заполняем код для поиска по "мнемоническому" алгоритму, кодируем его по первым буквам слов наименования, отбрасывая "запрещённые" символы (кавычки, запятые,точки, скобки и прочее).

Похожее изделие другого бренда "Сотейник TimA "Art Granit", с антипригарным покрытием, со съемной ручкой. Диаметр 24 см", не будет совпадать по коду поиска уже с третьего введённого символа. 


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

Кто-то возможно обработает имеющую в базе номенклатуру групповой обработкой и будет периодически анализировать текущее положение и что-то менять по результатам.  

Приведу пример функции, формирующий код для поиска по первым буквам наименования

 

 
 КодДляПоиска = ВернутьКодДляПоиска("Сотейник TimA "Art Granit", с антипригарным покрытием, со съемной ручкой. Диаметр 24 см", 4); // второй параметр - максимальная длина возвращаемого кода

 

Как вариант усовершенствования можно предложить преобразование всех символов к русскоязычной раскладке, при вводе по строке вряд ли удобно помнить что что-то в латинице и переключаться.  На Инфостарте есть Транслитерация из латиницы в кириллицу, но придётся вероятно разбираться с нюансами, "СТАГ" для вышеуказанного сотейника годится, но что-то может и плохим вариантом.

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

 

А как же быть "счастливым" пользователям тех баз, где этого механизма нет - БП и УНФ?

Воспользуйтесь приложенными расширениями, добавляющими работу с кодами для поиска в эти конфигурации.

Номера релизов на которых расширения работают: Бухгалтерия предприятия, редакция 3.0 (3.0.74.69) и Управление нашей фирмой, редакция 1.6 (1.6.19.215)

Для работы расширения необходимо отключать безопасный режим.

 

поиск паттерн шаблон пример мнемоника

См. также

Быстрый поиск дублей с четким/нечетким поиском по любому сочетанию реквизитов/реквизитов таб. частей с отбором и быстрой заменой значений в ЛЮБЫХ базах 8.1-8.3 (УТ 10.3, БП 2, ЗУП 2.5, КА 1.1, УТ 11, БП 3, УНФ 1.6/3.0, КА 2, ЗУП 3 и т.д.)

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

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

10800 руб.

14.05.2012    155617    327    252    

559

Журнал изменений с восстановлением состояния ссылочных объектов и архивацией по HTTP / COM (расширение + конфигурация, 8.3.14+, ЛЮБАЯ конфигурация)

Архивирование (backup) Журнал регистрации Поиск данных Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 1С:Управление торговлей 11 Платные (руб)

База данных «сама» меняет данные в документах/справочниках? Тогда данный журнал изменений для Вас! Практически не влияет на скорость записи объектов за счет быстрого алгоритма! Скорость работы почти в 2 раза выше типового механизма "История изменений"! Позволяет следить за изменениями и удалением в любых ссылочных объектах конфигурации, с возможностью архивации по HTTP(!) или COM, и сверткой данных. А так же, может восстановить состояние реквизитов (значения) до момента изменения или удаления объекта из базы. Есть ДЕМО-база где можно самостоятельно протестировать часть функционала! Работает на любых платформах выше 8.3.14+ и любых конфигурациях! Версия 3.1 от 24.08.2023!

21600 руб.

15.05.2017    42645    10    24    

38

Кто такая Мантикора?

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

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

1 стартмани

30.11.2023    3241    andreysidor4uk    16    

46

PowerOffice

Поиск данных Корректировка данных Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

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

1 стартмани

05.06.2023    1972    23    PowerBoy    1    

15

Получение ссылки по бинарной строке PostgreSQL или MSSQL

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

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

1 стартмани

04.04.2023    2638    2    berserg    2    

12

Поиск документов с ошибками проведения, универсальный

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

Обработка позволяет найти проведенные документы без движений и, наоборот, НЕ проведенные документы с движениями. Подходит для любой конфигурации.

1 стартмани

18.08.2022    3027    24    KVIKS    3    

10

Поиск и замена значений + Поиск дублирующихся элементов справочников с подключением к внешней базе

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

Обработка предназначена для гибкого поиска и дальнейшей замены дублей справочников, документов, а также планов видов расчетов и планов видов характеристик. В обработку включена возможность проверки наличия ссылки во внешней базе (по УИДу), поиска дублей с предварительным отбором, а также произвольной обработки реквизитов перед поиском (например, возможно удалить определенные символы из наименования).

3600 руб.

30.03.2022    8614    3    0    

5
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. kuzyara 1912 19.02.20 05:37 Сейчас в теме
Делал подобное. Для торговых точек(складов) создал реквизит "СокращенноеНаименование" и вписал туда "разговорные" жаргонные) названия. Потом включаешь индекс и добавляешь в "Поля ввода по строке". Становится удобно в отборы включать по первым буквам обиходного названия.
resonance; +1
2. user633166 12 19.02.20 05:50 Сейчас в теме
(1) обиходное название вряд ли подойдёт в данном случае, при вводе новой номенклатуры её нужно "классифицировать" - откуда брать "жаргонное" название?
+
12. resonance 81 31.01.22 15:37 Сейчас в теме
3. user623856_markina-ov 15.09.20 09:19 Сейчас в теме
Здравствуйте!

Не работает на УНФ 1.6.22.36 (платформа 8.3.16.1224)
Помогите это исправить, пожалуйста
+
4. user633166 12 21.09.20 12:57 Сейчас в теме
(3) Добрый день! Какая ошибка возникает?
+
5. user623856_markina-ov 21.09.20 19:19 Сейчас в теме
(4) Ошибок не выдает. Просто не работает.
Сначала ищу номенклатуру "Хлеб белый пшеничный", как видим в списке он есть.
Забиваем "хл"... уже ничего не находит.

[img][img]https://c.radikal.ru/c43/2009/9b/c7cf42f364cc.png[/img]

[/IMG]
+
6. user633166 12 22.09.20 05:34 Сейчас в теме
(5) Доброе утро. Вероятно у Вас расширение подключено в безопасном режиме

[img][img]https://a.radikal.ru/a11/2009/a1/e8aa6dbdaeed.png[/img][/IMG]
+
7. user623856_markina-ov 22.09.20 06:30 Сейчас в теме
Извините, забиваем "хБ".
Так понимаю, "Хлеб белый пшеничный" должен находиться по буквам "хбп"
+
8. user633166 12 22.09.20 10:00 Сейчас в теме
(7) Поиск по этому дополнительному реквизиту реализован в точном соответствии как вы его для номенклатуры ввели - заглавными, значит по заглавным, прописными - по прописным.
+
9. user623856_markina-ov 22.09.20 15:07 Сейчас в теме
(8) Безопасный режим отключен - галочка не стоит.


Есть номенклатуры "Хлеб Белый пшеничный" и "ХЛЕБ БЕЛЫЙ"
При поиске по "ХБ" так же пишет "Нет в списке".
+
10. пользователь 22.09.20 17:06
Сообщение было скрыто модератором.
...
11. user1713702 04.01.22 19:46 Сейчас в теме
А стандартными средствами можно как то в УТ 11 сделать чтобы поле КодДляПоиска можно было бы самому создавать/редактировать в карточке номенклатуры?

И каким образом это поле заполняется по умолчанию?

За ранее спасибо за ответ.
+
13. resonance 81 31.01.22 15:38 Сейчас в теме
Реквизит "КодДляПоиска" кто то выгружал на сайт с помощью типового обмена?
+
14. roothost 07.02.22 12:42 Сейчас в теме
Поиск по коду работает ?
+
Оставьте свое сообщение