Нечеткий поиск и пересорт в документах реализации.

26.01.16

Учетные задачи - Оптовая торговля

Данная обработка ищет реализацию с отрицательными движениями и дает возможность заменить номенклатуру на похожий по наименованию аналог.
Есть функция подключения к семерочной базе и получения ее текущих остатков для сравнения.

Скачать файл

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

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

Назначение обработки: Найти документы с отрицательными движениями за период, подобрать из доступных в наличии остатков похожую по наименованию номенклатуру и выполнить замену в документах реализации.

Процент соответствия задается пользователем;

Количество для замены можно редактировать вручную;

Заменять можно на несколько из подобных;

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

 

Поиск работает по очень простому принципу - разбивает наименование на массив строк, отсеивает незначительные кусочки (для ускорения) и передает в запрос параметром для ПОДОБНО.

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

 

Код поиска:

ИскомыеСлова = ПараметрыПоиска(ТекНоменклатура);
СписокСубконто = Новый СписокЗначений;
СписокСубконто.Добавить(ПредопределенноеЗначение("ПланВидовХарактеристик.ВидыСубконтоХозрасчетные.Номенклатура"));
ТекстЗапроса = "";
ТекстЗапроса = ТекстЗапроса + 
"ВЫБРАТЬ
| ХозрасчетныйОстатки.Субконто1 КАК Номенклатура,
| ХозрасчетныйОстатки.КоличествоОстаток
|ПОМЕСТИТЬ Остатки
|ИЗ
| РегистрБухгалтерии.Хозрасчетный.Остатки(&Дата, Счет = &Счет, &ВидыСубконто, ) КАК ХозрасчетныйОстатки
|ГДЕ
| ХозрасчетныйОстатки.КоличествоОстаток > 0
|;
|////////////////////////////////////////////////////////////////////////////////
|";
Для Каждого Строка Из ИскомыеСлова Цикл
i = Строка.ПолучитьИдентификатор();
ТекстЗапроса = ТекстЗапроса + 
"ВЫБРАТЬ
| Остатки.Номенклатура,
| Остатки.КоличествоОстаток,
| 1 КАК Совпадений
|";
Если i = 0 Тогда
ТекстЗапроса = ТекстЗапроса + 
"ПОМЕСТИТЬ Найдено
|";
КонецЕсли;
ТекстЗапроса = ТекстЗапроса + 
"ИЗ
| Остатки КАК Остатки
|ГДЕ
| Остатки.Номенклатура.Наименование ПОДОБНО &Наименование"+i+"
|";
Если ИскомыеСлова.Количество()>i+1 Тогда
ТекстЗапроса = ТекстЗапроса + 
"ОБЪЕДИНИТЬ ВСЕ
|";
Иначе
ТекстЗапроса = ТекстЗапроса +
"; 
|";
КонецЕсли;
КонецЦикла;

ТекстЗапроса = ТекстЗапроса + 
"ВЫБРАТЬ
| Найдено.Номенклатура КАК Номенклатура,
| Найдено.КоличествоОстаток КАК Остаток,
| СУММА(Найдено.Совпадений) КАК Совпадений
|ПОМЕСТИТЬ Итоговая
|ИЗ
| Найдено КАК Найдено
|
|СГРУППИРОВАТЬ ПО
| Найдено.Номенклатура,
| Найдено.КоличествоОстаток
|;
|
|////////////////////////////////////////////////////////////////////////////////
|ВЫБРАТЬ
| Итоговая.Номенклатура,
| Итоговая.Остаток КАК Остаток,
| Итоговая.Совпадений КАК Совпадений,
| 100 / &КлючевыхСлов * Итоговая.Совпадений КАК Процент
|ИЗ
| Итоговая КАК Итоговая
|ГДЕ
| 100 / &КлючевыхСлов * Итоговая.Совпадений >= &МинПроцент
|
|ОБЪЕДИНИТЬ ВСЕ
|
|ВЫБРАТЬ
| ВЫРАЗИТЬ(&Номенклатура КАК Справочник.Номенклатура),
| СУММА(0),
| СУММА(0),
| МАКСИМУМ(100)
|ИЗ
| Итоговая КАК Итоговая
|ГДЕ
| 100 / &КлючевыхСлов * Итоговая.Совпадений >= &МинПроцент
|
|УПОРЯДОЧИТЬ ПО
| Процент УБЫВ,
| Остаток";

Запрос = Новый Запрос;
Запрос.Текст = ТекстЗапроса;
Запрос.УстановитьПараметр("Счет", ПланыСчетов.Хозрасчетный.ТоварыНаСкладах);
Запрос.УстановитьПараметр("ВидыСубконто", СписокСубконто);
Запрос.УстановитьПараметр("Дата", ДатаПервогоДвижения(ТекНоменклатура));
Запрос.УстановитьПараметр("КлючевыхСлов", ИскомыеСлова.Количество());
Запрос.УстановитьПараметр("МинПроцент", ПроцентСоответствия);
Запрос.УстановитьПараметр("Номенклатура", ТекНоменклатура); 

Для Каждого Строка Из ИскомыеСлова Цикл
i = Строка.ПолучитьИдентификатор();
Запрос.УстановитьПараметр("Наименование"+i,"%"+Строка.Значение+"%"); 
КонецЦикла;

Нечеткий поиск пересорт

См. также

Инструментарий разработчика Роли и права Запросы СКД Программист Руководитель проекта Платформа 1С v8.3 Управляемые формы Запросы Система компоновки данных Платные (руб)

Инструменты для разработчиков 1С 8.3: Infostart Toolkit. Автоматизация и ускорение разработки на управляемых формах. Легкость работы с 1С.

15500 руб.

02.09.2020    188555    1050    403    

982

Оптовая торговля Производство готовой продукции (работ, услуг) Обмен с ГосИС Программист Бухгалтер Платформа 1С v8.3 1С:Комплексная автоматизация 1.х 1С:Бухгалтерия 2.0 1С:Управление торговлей 10 1С:Управление производственным предприятием 1С:Управление нашей фирмой 1.6 1С:ERP Управление предприятием 2 1С:Бухгалтерия 1.6 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Оптовая торговля, дистрибуция, логистика Пищевая промышленность Россия Бухгалтерский учет Платные (руб)

Автоматический обмен данными с системой ФГИС Меркурий из 1С через ВетИС API: загрузка данных по хозяйствующим субъектам, предприятиям; типов, групп, видов, наименований продукции, сопоставление данных и запись их в базу данных; создание на основании расходных документов транспортных партий, отправка на сервер, печать полученных ветеринарных свидетельств, запрос остатков складского журнала, проведение инвентаризаций, оформление производственных партий.

11500 руб.

08.12.2017    107114    292    110    

148

Оптовая торговля Розничная торговля Обмен с ГосИС Бухгалтер Платформа 1С v8.3 1С:Управление торговлей 10 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 Розничная и сетевая торговля (FMCG) Оптовая торговля, дистрибуция, логистика Рестораны, кафе и фаст-фуд Россия Бухгалтерский учет Управленческий учет Акцизы Платные (руб)

Автоматизация учета ЕГАИС в 1С для оптовой торговли, производства и импорта. Получение и отправка ТТН, отправка акта о постановке на баланс и акта о списании. Получение остатков. Загрузка и сопоставление номенклатуры и контрагентов. Оправка в ЕГАИС отчетов о производстве и импорте.

828 руб.

15.12.2015    173547    909    370    

408

Загрузка и выгрузка в Excel Оптовая торговля Бухгалтер Пользователь Платформа 1С v8.3 Управляемые формы Платформа 1C v8.2 1C:Бухгалтерия 1С:Комплексная автоматизация 1.х 1С:Бухгалтерия 2.0 1С:Управление торговлей 10 1С:Розница 2 1С:Управление производственным предприятием 1С:Управление нашей фирмой 1.6 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Управление холдингом 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Бухгалтерский учет Управленческий учет Платные (руб)

Универсальная обработка для загрузки документов из Excel в 1С. Забудьте о ручном вводе: загружайте документы из Excel в 1С за секунды! Не требует указания параметров (номера колонок, номер первой строки таблицы и т.д.) и предварительной настройки. Просто выбираете файл Excel, документ 1С и нажимаете кнопку "Загрузить"

8000 руб.

09.11.2016    247511    1137    915    

1058

Оптовая торговля Розничная торговля WEB-интеграция 1С:Управление торговлей 10 1С:Управление производственным предприятием 1С:Управление нашей фирмой 1.6 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 Платные (руб)

Онлайн-заказ - это решение для автоматизации процесса оформления заказов на сайте в торговых организациях. Продукт обеспечивает легкое взаимодействие между компанией и клиентами через веб-интерфейс, интегрированный с 1С:Предприятие. Система позволяет снизить операционные расходы, повысить лояльность клиентов и оптимизировать работу отдела продаж.

57600 руб.

26.11.2024    3396    3    3    

5

Оптовая торговля Розничная торговля Обмен с ГосИС Программист Бухгалтер Пользователь Платформа 1С v8.3 Управляемые формы 1C:Бухгалтерия Розничная и сетевая торговля (FMCG) Оптовая торговля, дистрибуция, логистика Россия Бухгалтерский учет Управленческий учет Платные (руб)

Решение создано для помощи разработчикам, интеграторам и другим заинтересованным лицам по настройке системы маркировки обуви, одежды, лекарств, табака, фото, молока, духов(парфюма), питьевой воды, велосипедов и шин. Задавайте вопросы по работе с ЦРПТ, GS1, ЭДО, Национальным каталогом, накоплен опыт и знания по данным темам.

24000 руб.

18.03.2019    114380    32    115    

184
Оставьте свое сообщение