При переходе на работу с маркированными товарами в 1С:Управление торговлей 11.4 многие разработчики сталкиваются с отсутствием привычных связей между товарными позициями и уникальными кодами маркировки DataMatrix. Рассмотрим, как устроена эта подсистема и где именно искать информацию о том, какие именно марки были отгружены.
Первое, что нужно уяснить — в типовой конфигурации 1С:Управление торговлей информация об отгруженных кодах не хранится в классических регистрах накопления или справочниках серий номенклатуры в явном виде. Архитектура построена на использовании подсистемы интеграции с ИС МП (Информационные системы маркировки продукции).
Принципиальное отличие заключается в том, что 1С рассматривает код маркировки как внешнюю сущность. В базе данных хранятся лишь «сырые» сканы, которые сопоставляются с товаром в момент оформления документа. Рассмотрим основные способы получения этих данных.
Если вы исследуете алгоритмы 1С, то заметите, что функции, такие как ЗапросМаркируемойПродукцииРеализацияТоваровУслуг, выполняют динамическое вычисление на основе состава табличной части Товары. В этой процедуре система сопоставляет GTIN продукции с записями в справочнике ШтрихкодыНоменклатуры.
Рассмотрим пример логики, используемой для получения данных о продукции:
// Пример фрагмента кода, отвечающего за подбор маркируемой продукции
Процедура ЗаполнитьМаркируемуюПродукциюДокумента(Контекст, ВидМаркируемойПродукции, ТаблицаМаркируемойПродукции) Экспорт
РезультатЗапроса = ЗапросМаркируемойПродукцииРеализацияТоваровУслуг(Контекст, ВидМаркируемойПродукции);
// ... дальнейший обход выборки и заполнение таблицы ...
КонецПроцедуры
Как мы видим, система не хранит привязку «код-товар» постоянно, а «вычисляет» её на лету при открытии форм подбора и проверки маркируемой продукции. Это сделано для того, чтобы поддерживать возможность агрегации товаров, когда сканируется один код короба, а внутри него содержится множество единиц товара.
Если ваша задача — получить список кодов, которые физически ушли клиенту, необходимо искать их в специальных табличных частях документа РеализацияТоваровУслуг. Обратите внимание на следующие объекты:
Для того чтобы однозначно вытащить связь между отгруженным товаром и кодом маркировки, мы рекомендуем придерживаться следующих шагов:
DataMatrix.Подводя итог, можно сказать, что данные о маркировке в УТ 11.4 распределены между табличными частями документов и механизмами обмена с ИС МП. Для построения отчетов или выгрузки данных вам необходимо обращаться к табличным частям, которые заполняются при выполнении операции «Подбор и проверка», так как именно там сохраняется связь между конкретным экземпляром товара и его уникальным кодом.