Обработка свёртки номенклатуры по похожему артикулу для УТ 11

Опубликовал Tau Cbv (lordeye) в раздел Обработки - Свертка базы

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

Цель

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

Реализация

УТ 11, ред.

На форме обработки необходимо указать:

  • Склад – склад, на котором необходимо произвести все действия.
  • Мин. длина артикула – число
  • Мах процент отклонения цены

Табличная часть

  • Номенклатура списываемая
  • Номенклатура приходуемая
  • Количество

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

Алгоритм следующий:

Берем позицию и начинаем откусывать от артикула с правой его стороны по символу. После каждого откусывания ищем, есть ли среди недостающих позиций позиции с таким же фрагментом артикула (первая итерация должна пройти без откусывания символа артикула). Если нашли, то в таблице фиксирует в таблице строку с пересортом. Если недостачи меньше чем остаток излишка, то записываем в таблицу пересорт и остаток излишков продолжаем дальше распределять «откусывая» артикул дальше. Если после «Откусывания» находим несколько подходящих позиций, то сортируем их по наиболее подходящей цене закупки по сравнению с той позицией, которая в излишке. Стоимость закупки берем из документов поступления (самый последний приход позиции).

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

По кнопке «Создать документ пересорта» должен создаться документ и заполниться его табличная часть.

Скачать файлы

Наименование Файл Версия Размер
Обработка свёртка остатков
.epf 9,92Kb
28.03.13
39
.epf 9,92Kb 39 Скачать

См. также

Комментарии
1. Аркадий Кучер (Abadonna) 3661 28.03.13 17:04 Сейчас в теме
(0) http://infostart.ru/public/178717/
Функция неявного сравнения строк (вычисление релевантности /схожести/). Может пригодиться для чистки справочников от "почти дублей", загрузки прайсов и т.д.
Примеры вычисления релевантности пар строк:
"майка мужская", "мужск. майка" =78
"дизельгенератор", "генератор дизельный" =82
"тонер для принтера", "тонер принт." =73
_____________
Задавай требуемую релевантность - и вперед ;)
2. Ийон Тихий (cool.vlad4) 41 28.03.13 17:11 Сейчас в теме
(1)А что покажет, если сравнить "майка мужская" и "майка мужская", и "дизельгенератор" и "дизельгенератор", потому как непонятно, что есть 78 и 82. или это как раз коэффициент совпадения (от 0 до 100)?
3. Аркадий Кучер (Abadonna) 3661 28.03.13 17:21 Сейчас в теме
(2)
А что покажет, если сравнить "майка мужская" и "майка мужская",

А самому влом проверить?
4. Ийон Тихий (cool.vlad4) 41 28.03.13 17:23 Сейчас в теме
(3) а что мне за это будет? ;) конечно, влом, делать мне больше нечего
5. Аркадий Кучер (Abadonna) 3661 28.03.13 17:43 Сейчас в теме
(4) cool.vlad4,
конечно, влом, делать мне больше нечего

ну а мне влом отвечать на всякие вопросы, на которые я уже ответил в комментах к ВК
6. Ийон Тихий (cool.vlad4) 41 28.03.13 17:48 Сейчас в теме
(5) ну извини, написал бы в статье, прочитал, а комменты перестал читать(ибо оффтопа много бывает, как вот например сейчас)
7. Аркадий Кучер (Abadonna) 3661 28.03.13 20:26 Сейчас в теме
(2) cool.vlad4, не поленился, проверил ;)
"майка мужская", "мужская майка" (эталон) = 88
наоборот, когда эталон "майка мужская" - те же самые 88.
Для оценки, имхо, вполне подходит.
___________
Забавно, что "сратостат" и "статосрат" - аж 95! с "дирижопль" сравнивать не стал :)))