При автоматизации розничной и оптовой торговли часто возникает необходимость разделения товаров по типам штрихкодов. Например, штучные товары должны кодироваться по одному принципу, весовые — по другому, а дисконтные и скидочные карты — по третьему. В популярной конфигурации «1С:Управление торговлей 10.3» (УТ 10.3) для этих целей предусмотрены специализированные механизмы.
В этой статье мы подробно разберем, какие префиксы зарезервированы для различных нужд, как правильно их настроить в программе, а также выясним причины, по которым дисконтные карты могут не считываться в документе «Чек ККМ», и как это исправить.
Перед тем как переходить к настройкам в 1С, проанализируем теорию штрихкодирования. Согласно международной классификации ассоциации GS1, для внутреннего использования предприятиями выделен диапазон префиксов с 20 по 29 (для формата EAN-13). Это означает, что мировые производители не имеют права выпускать товары со штрихкодами, начинающимися с этих цифр. Соответственно, любая компания может безбоязненно использовать этот диапазон внутри своей локальной базы данных.
В практике работы с 1С принято следующее разделение:
21CCCCCWWWWWK, где:
21 — префикс весового товара;CCCCC — пятизначный внутренний код товара (PLU-код);WWWWW — вес товара в граммах (например, 01550 означает 1 килограмм 550 грамм);K — контрольный символ, рассчитываемый по стандартному алгоритму EAN-13.Выясним, где именно в программе задаются эти параметры. Перейдем по шагам в нужный раздел интерфейса:
Рассмотрим подробнее, какие параметры мы можем здесь настроить:
20. Если ваше предприятие использует другие стандарты внутренней кодировки, вы можете изменить это значение.21. Именно по этому префиксу система будет определять, что отсканированный штрихкод содержит в себе информацию о весе.После внесения изменений обязательно нажмем кнопку «Применить» или «ОК» для сохранения настроек.
Чтобы система корректно распознавала вес при сканировании штрихкода на кассе, одной лишь настройки префикса недостаточно. Нам необходимо правильно подготовить карточку номенклатуры. Проанализируем этот процесс:
Номенклатура и откроем нужную карточку весового товара.00123).При выгрузке в весы с печатью этикеток этот PLU-код будет сопоставлен с товаром. Когда весы распечатают этикетку, штрихкод будет иметь вид 2100123015509. Сканер на кассе считает его, 1С увидит префикс 21, выделит код 00123, найдет соответствующий товар в базе и автоматически подставит количество (вес) 1.550 кг в табличную часть документа.
Важно учитывать, что типовая конфигурация «1С:Управление торговлей 10.3» поддерживает работу только с одним весовым префиксом, указанным в параметрах учета. Если ваше предприятие закупает предварительно расфасованный весовой товар у разных поставщиков, которые маркируют продукцию своими префиксами (например, один использует префикс 23, а другой — 28), стандартный механизм 1С не сможет автоматически извлечь вес для товаров с альтернативными префиксами.
В таких ситуациях требуется доработка конфигурации программистом. Обычно создаются кастомные шаблоны штрихкодов или изменяется процедура разбора штрихкода во внешнем событии сканера.
Часто пользователи сталкиваются с проблемой: при сканировании штрихкода дисконтной (скидочной) карты в документе «Чек ККМ» ничего не происходит — карта не подтягивается в документ, а скидка не рассчитывается. Давайте разберем основные причины этой проблемы по шагам и найдем решения.
Если сканер штрихкодов подключен некорректно, программа не сможет обработать сканирование как системное событие. Сканер может работать в режиме эмуляции клавиатуры без настроенного суффикса (Enter). В таком случае при сканировании карты цифры просто «впечатаются» в активное текстовое поле, где стоял курсор, вместо того чтобы вызвать процедуру поиска карты.
Решение: переподключите сканер через меню «Сервис» -> «Торговое оборудование» -> «Помощник подключения торгового оборудования». Настройте его в режиме виртуального COM-порта и убедитесь, что в системе зарегистрировано внешнее событие.
Посмотрим на пример логики обработки внешнего события в коде 1С:
Процедура ВнешнееСобытие(Источник, Событие, Данные)
Если Событие = "BarCodeValue" Тогда
Штрихкод = СокрЛП(Данные);
// Проверяем, принадлежит ли штрихкод дисконтной карте
ИнформационнаяКарта = Справочники.ИнформационныеКарты.НайтиПоКоду(Штрихкод);
Если ЗначениеЗаполнено(ИнформационнаяКарта) Тогда
// Выполняем логику подключения карты к чеку ККМ
ДобавитьКартуВДокумент(ИнформационнаяКарта);
КонецЕсли;
КонецЕсли;
КонецПроцедуры
Дисконтные карты должны храниться в строго определенном месте. Распространенная ошибка — занесение штрихкода карты в регистр сведений Штрихкоды, предназначенный исключительно для товаров. В этом случае при сканировании система будет пытаться найти номенклатуру с таким штрихкодом и выдаст ошибку «Товар не найден».
Решение: заведите карту в правильном справочнике:
Дисконтная.Штриховая.Иногда карта успешно считывается и прикрепляется к документу «Чек ККМ» (ее номер появляется на форме чека), но кассир считает, что она не работает, так как сумма чека не пересчитывается. Это происходит из-за отсутствия действующих правил скидок.
Решение: убедитесь, что в программе создан и проведен документ «Установка скидок номенклатуры». В документе должно быть указано условие предоставления скидки — «По дисконтной карте» или «По виду дисконтных карт», выбраны соответствующие проценты скидок и указан актуальный период действия.
Таким образом, мы детально разобрали особенности настройки префиксов штрихкодирования и подключения дисконтных карт в «1С:Управление торговлей 10.3». Правильная последовательность настроек гарантирует быструю и безошибочную работу кассового узла.