Дано: у заказчика собственное производство в магазине (роллы, пицца и т.п.). Для производимой продукции он распечатал собственные штрихкоды (которые начинаются с 2). Эти коды распечатаны на листах А4 и лежат у кассира на кассе. Упаковщик продукции в торговом зале кладёт в контейнеры для покупателя продукцию и пишет на бумажке её название и количество. Кассир на кассе, работая в РМК, сначала читает на бумажке сколько и какой продукции, потом сканирует штрихкоды продукции с листов А4, потом находит их в РМК и устанавливает количество. Это занимает у кассира некоторое время, порождает легкую нервозность у покупателей (особенно когда образовалась очередь на кассу, несоблюдающая социальной дистанции) и, иногда, порождает ошибки, когда кассир установил количество не той продукции.
Задача: уменьшить время работы кассира в 1С:УНФ с такой продукцией и понизить вероятность ошибок. При этом нельзя покупать дополнительное оборудование (например, принтеры этикеток), нельзя сильно изменять бизнес-процессы работы упаковщиков продукции и кассиров, желательно всё сделать без внесения в карточки товаров дополнительных данных, а изменения, вносимые в программный код, должны быть минимальны.
Решение: добавить расширение для модуля менеджера регистра сведений «ШтрихкодыНоменклатуры» процедуры «ПреобразоватьВесовойШтрихкод».
&После("ПреобразоватьВесовойШтрихкод")
Процедура РасшД_ПреобразоватьВесовойШтрихкод(ТекШтрихкод)
//здесь нужно написать алгоритм обработки кода – пример такого кода можно посмотреть в приложенном к публикации расширении
КонецПроцедуры
Как это работает:
1. Из карточек продукции (справочник «Номенклатура») берутся 2,3,..,12 последние цифры (перед ними в штрихкоде должны быть лидирующие нули, чтобы в сумме длина штрихкода была 13 цифр) – это короткий код продукции. Например, для продукции «Филадельфия 33г» из штрихкода «2000000000039» берётся только две последние цифры «39» (это и будет короткий код продукции).
2. На общих контейнерах с продукцией кладутся бумажки с короткими кодами (или просто сверху на упаковочной плёнке пишется код маркером).
3. Упаковщики продукции формируют заказ покупателю и пишут на сопроводительной бумажке или маркером на упаковке покупателя (контейнер, пакет, бутылка, банка и т.д.) текст по следующей схеме: <Количество>+<Короткий_код_продукции>
Примерно так:
4+39 (это 4 ролла Филадельфия 33г)
11+879 (это 11 роллов Калифорния 35г)
3. Кассир на кассе с бумажки (или с надписи на упаковке) вбивает эти коды в поле внесения штрихкодов и получает в чеке продукцию с уже установленным количеством. Примерно так (в <> обозначены кнопки на клавиатуре, горячая клавиша F7 – вызов поля поиска по штрихкоду):
<F7> <4> <+> <3> <9> (это 4 ролла Филадельфия 33г)
Примечание по расширению:
- штрихкод всегда должен начинаться с «2»;
- длина быстрого кода ограничены 12, т.к. EAN13;
- длина количества ограничена только здравым смыслом и программой, т.е. в структуре «К+Ч» знаков К может быть сколь угодно много (даже с разделителями дробной части «.» или «,»), а знаков Ч может быть не более 12.
Разработка и тестирование осуществлялись на базе типовой «1С:Управление нашей фирмой, редакция 1.6 (1.6.19.128)» и платформе 1С:Предприятие 8.3 (8.3.16.1063).