При приеме алкогольной продукции (в частности, пива) торговые предприятия часто сталкиваются с ситуацией, когда один и тот же розничный штрихкод EAN-13 используется разными заводами-изготовителями. В государственной системе ЕГАИС такие товары различаются алкокодами и КПП производителей, однако при попытке привязать этот штрихкод к разным элементам справочника Номенклатура в «1С:Управление торговлей 11» система блокирует запись и выдает ошибку уникальности.
В этой статье мы подробно разберем, почему в типовой конфигурации возникает эта проблема, рассмотрим архитектурные ограничения платформы «1С:Предприятие» и изучим проверенные способы решения этой задачи — как методологические, так и технические.
Выясним, почему в настройках программы нельзя просто снять флаг проверки уникальности штрихкодов. Причина кроется в структуре хранения данных платформы «1С:Предприятие».
Для хранения штрихкодов в конфигурации используется регистр сведений ШтрихкодыНоменклатуры. В стандартной архитектуре конфигураций «Управление торговлей 11» и «ERP Управление предприятием» ведущим измерением этого регистра является реквизит Штрихкод.
Согласно правилам работы платформы 1С, запись в регистре сведений однозначно идентифицируется набором его измерений. Позиции номенклатуры, характеристики и упаковки хранятся в реквизитах, а не в измерениях регистра. Соответственно, на уровне СУБД физически невозможно записать две разные строки с абсолютно одинаковым измерением Штрихкод. Поэтому штатной настройки для «отключения» контроля просто не существует.
Проанализируем методы учета, которые позволяют работать с продукцией ЕГАИС от различных заводов без переработки базовой конфигурации.
Вместо создания отдельных элемента справочника Номенклатура под каждый завод-производитель создается единая карточка товара (например, «Пиво Светлое 0.5»). Разделение по производителям и КПП организуется через Характеристики или Серии.
В этом случае штрихкод EAN-13 привязывается к основной номенклатуре, а в механизме сопоставления с ЕГАИС различные алкокоды связываются с одной и той же номенклатурой 1С, но с разным набором характеристик.
Типовой механизм интеграции с ЕГАИС в «1С:Управление торговлей» поддерживают связывание нескольких классифицируемых позиций алкогольной продукции ЕГАИС (разных алкокодов) с единой позицией номенклатуры базы 1С. Это позволяет вести корректный остаточный учет и формировать отчетность без пложения дублирующих штрихкодов.
На этапе приемки или оклейки товара на складе торговой точки генерируются уникальные внутренние штрихкоды (например, с префиксом EAN-13 в диапазоне 20–29). Они наклеиваются поверх заводской маркировки. Это полностью исключает ошибки кассира при сканировании и упрощает инвентаризацию.
Для пива и слабоалкогольных напитков, подлежащих маркировке, идентификация экземпляра происходит по двумерному коду DataMatrix. Код маркировки содержит не только EAN/GTIN, но и индивидуальный серийный номер, что позволяет однозначно идентифицировать товар даже при совпадении линейного EAN-13.
Рассмотрим варианты технической реализации, если предприятию необходимо вести раздельные элементы номенклатуры под каждый завод и использовать один штрихкод для разных позиций.
Для реализации возможности хранения одинаковых штрихкодов необходимо изменить состав измерений регистра сведений ШтрихкодыНоменклатуры. С помощью расширения конфигурации измерение Штрихкод дополняется измерениями Номенклатура и Характеристика.
Посмотрим на пример структуры ключа уникальности регистра при модификации:
// При включении номенклатуры в состав измерений регистра
// уникальным становится составной ключ:
// [Штрихкод] + [Номенклатура] + [Характеристика]
// Это позволяет записать следующие строки:
// 1) Штрихкод: "4600000000001", Номенклатура: "Пиво Завод А"
// 2) Штрихкод: "4600000000001", Номенклатура: "Пиво Завод Б"
При сканировании неуникального штрихкода стандартная процедура подбора вернет массив из нескольких найденных товаров. В обработчик сканирования в форме документа или в рабочее место кассира (РМК) добавляется диалоговое окно для ручного выбора нужного производителя.
В современных релизах сопутствующих конфигураций линейки 1С (например, «1С:Розница» и «1С:УНФ») реализована функциональная опция Использовать неуникальные штрихкоды. При переходе на актуальные версии интеграционных модулей подбор неуникальных штрихкодов поддерживается из коробки.