При переходе с устаревших конфигураций (например, УТ 10.3 или УПП) на современные версии 1С:Управление торговлей 11 (ERP, КА) пользователи часто сталкиваются с вопросом: куда исчезло поле для регистрации штрихкода серии? В старых системах в регистре сведений Штрихкоды было отдельное измерение для серии, что позволяло хранить уникальный код для каждой партии. В УТ 11 подход в корне изменился. Разберем подробно, как теперь работает эта механика.
Проанализируем ситуацию: в УТ 11 штрихкод серии как отдельный объект в базе данных (в привычном понимании записи в регистре) отсутствует. В регистре сведений ШтрихкодыНоменклатуры остались только измерения Номенклатура и Характеристика (иногда упаковка). Это сделано для оптимизации базы данных и перехода на более гибкие стандарты идентификации.
Важно понимать разницу между терминами, которую часто путают:
В УТ 11 оба этих понятия реализуются через справочник Серии, но логика работы со штрихкодами у них идентична: Штрихкодом серии является сам номер серии.
Прежде чем приступать к работе со штрихкодами, мы должны убедиться, что в программе правильно настроены правила работы с ними. Рассмотрим порядок действий:
Обратите внимание: когда программа просит "сканировать штрихкод серии", она ожидает ввода текстовой строки, которая совпадает со значением в поле Номер справочника Серии. Никакой предварительной генерации "внутренних" ШК типа EAN-13 специально для серии (как для товара) не требуется.
Выясним, как же получить физическую этикетку, которую можно наклеить на товар. Поскольку штрихкод серии — это ее номер, нам нужно просто вывести этот номер на печать в виде штрихкода. Посмотрим на алгоритм:
В редакторе шаблона этикетки мы выполняем ключевую настройку:
Добавляем на форму поле Номер из объекта Серия. В свойствах этого поля указываем тип отображения — Штрихкод. Мы можем выбрать любой формат: Code128, EAN-128 или QR-код. Таким образом, при печати текстовый номер "SER-001" превратится в полосатый код, который успешно считается любым сканером и будет распознан системой как серия товара.
Рассмотрим более продвинутый случай, актуальный для фармацевтики (МДЛП) и товаров, подлежащих обязательной маркировке. Современные стандарты позволяют зашифровать в один код сразу всё: и товар (GTIN), и серию, и срок годности.
В УТ 11 реализована поддержка формата GS1-128. Если вы используете такой штрихкод, вам не нужно сканировать товар и серию по отдельности. Система при сканировании автоматически "разберет" код на составляющие по идентификаторам применения (AI):
(01) — GTIN товара;(10) — Номер серии;(17) — Срок годности.Проанализируем преимущества такого подхода: вам не нужно хранить связки в регистрах 1С, так как вся информация уже содержится в самом коде на упаковке. Программа просто сопоставляет полученную строку с номером серии в справочнике АналитикаУчетаНоменклатуры.
Если перед программистом стоит задача доработать поиск серии или реализовать собственную логику обработки сканирования, следует обратить внимание на то, как данные о сериях связаны с остатками. В УТ 11 серии хранятся в ключе аналитики. Посмотрим на пример кода, который помогает определить серию по считанному значению:
// Пример логики поиска серии по номеру (который и есть ШК)
Функция НайтиСериюПоШтрихкоду(ТекстШтрихкода, НоменклатураСсылка) Экспорт
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| СерииНоменклатуры.Ссылка КАК Серия
|ИЗ
| Справочник.СерииНоменклатуры КАК СерииНоменклатуры
|ГДЕ
| СерииНоменклатуры.Номер = &НомерСерии
| И СерииНоменклатуры.Владелец = &Владелец";
Запрос.УстановитьПараметр("НомерСерии", ТекстШтрихкода);
// В зависимости от настроек, владельцем может быть Номенклатура или Вид номенклатуры
Запрос.УстановитьПараметр("Владелец", НоменклатураСсылка);
Результат = Запрос.Выполнить();
Если Не Результат.Пустой() Тогда
Выборка = Результат.Выбрать();
Выборка.Следующий();
Возврат Выборка.Серия;
КонецЕсли;
Возврат Справочники.СерииНоменклатуры.ПустаяСсылка();
КонецФункции
Мы выяснили, что отсутствие специального поля "Штрихкод" в карточке серии в УТ 11 — это не ошибка, а особенность архитектуры. Штрихкод серии — это ее текстовый номер.
Резюмируем основные выводы:
Номер в формате штрихкода (рекомендуется Code128).Серии номенклатуры, но для его поиска при сканировании потребуется небольшая доработка через расширение.Используя эти методы, мы сможем организовать полноценный учет по сериям и срокам годности в 1С:УТ 11, не прибегая к избыточному хранению данных в регистрах.