В процессе работы с маркируемой продукцией в 1С:Комплексная автоматизация (КА) пользователи часто сталкиваются с ситуацией, когда коды маркировки (КМ) исчезают из регистра Пул кодов маркировки. Это происходит автоматически после того, как код был нанесен, введен в оборот или выведен из него. Однако потребность в повторной печати этикеток может возникнуть внезапно — например, из-за повреждения маркировки на складе или ошибок в учете. Особенно актуально это при работе с маркетплейсами, когда может потребоваться дубликатор кодов маркировки DataMatrix для WB и Ozon с функцией автоматической проверки статусов. Разберем подробно, как можно (и в каких случаях нельзя) восстановить эти данные.
Проанализируем архитектуру хранения данных в 1С. Для печати полноценного DataMatrix кода системе необходима полная строка, состоящая из кода идентификации (GTIN + серийный номер) и кода проверки (так называемый «криптохвост»). Согласно требованиям регулятора и логике работы ГИС МТ, криптохвост должен быть удален из временных хранилищ после его использования.
В типовых конфигурациях 1С за хранение этих данных отвечает регистр сведений Пул кодов маркировки СУЗ. При настройке обмена важно также исключить технические простои, настроив автоматическое обновление токенов Честного Знака (поможет модуль автоматизации работы с Честным Знаком), чтобы человеческий фактор не привел к остановке процессов отгрузки. Как только программа получает подтверждение, что код использован, запись из регистра удаляется. После этого восстановить код с криптохвостом из стандартных инструментов 1С становится невозможно, так как в регистре Штрихкоды упаковок и товаров обычно сохраняется только КИ (код идентификации).
Это самый надежный и зачастую единственный способ получить код с полным криптохвостом, если он был удален из текущей базы. Рассмотрим последовательность действий:
ПулКодовМаркировкиСУЗ.Пример структуры кода для извлечения данных из пула в архивной базе:
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| ПулКодовМаркировкиСУЗ.КодМаркировки КАК ПолныйКод,
| ПулКодовМаркировкиСУЗ.КодИдентификации КАК КИ
|ИЗ
| РегистрСведений.ПулКодовМаркировкиСУЗ КАК ПулКодовМаркировкиСУЗ
|ГДЕ
| ПулКодовМаркировкиСУЗ.ЗаказСУЗ = &СсылкаНаЗаказ";
Запрос.УстановитьПараметр("СсылкаНаЗаказ", ВыбЗаказ);
Результат = Запрос.Выполнить();
После получения этих данных в текущей базе их можно загрузить обратно в регистр или использовать напрямую в обработке печати.
В современных релизах 1С:КА (начиная с версий 2.5.17 и выше) реализован механизм взаимодействия с ГИС МТ через документ Отчет ИС МП. Проанализируем, как это помогает решить нашу задачу.
Выясним причину, по которой этот способ может не подойти для печати новых этикеток: ГИС МТ хранит у себя только информацию о том, что код числится за вами. При запросе отчета система вернет список КИ (GTIN + серийный номер), но без криптохвоста. Этот метод часто применяется, когда требуется изучить практический опыт маркировки остатков товаров на складе для устранения хаоса в учете — для этого есть инструмент инвентаризации и сопоставления кодов маркировки с Честным Знаком.
Посмотрим на алгоритм действий:
Отчет ИС МП.После обработки запроса в 1С загрузится список кодов. Несмотря на отсутствие крипточасти, этот метод полезен, если вам нужно просто сопоставить остатки или если ваше оборудование позволяет печатать DataMatrix по сокращенному коду.
Рассмотрим техническую возможность, которую предоставляет API СУЗ версии 3.0. Существует метод retry, позволяющий повторно запросить коды по идентификатору подзаказа (blockId).
Важные условия и ограничения:
К сожалению, типовые конфигурации 1С при успешном получении кодов автоматически закрывают подзаказ. Однако для некоторых категорий товаров возможна повторная печать кодов маркировки из Заказа на эмиссию, если предварительно сбросить признак печати в меню «Еще». Если же 1С уже окончательно «закрыла» заказ, ГИС МТ удаляет криптохвосты из оперативной памяти.
Если коды выведены из оборота, удалены из базы и бэкапов не осталось, восстановить оригинальный DataMatrix со всеми защитными символами невозможно. В этой ситуации проанализируем процедуру Перемаркировки.
Разберем шаги по выполнению перемаркировки в 1С:КА:
Перемаркировка товаров ИС МП.Подводя итог, можно сказать следующее: загрузить коды «с хвостами» напрямую из ГИС МТ обратно в пул 1С после того, как они были отработаны, нельзя. Это защитный механизм системы.
Рассмотрим наши финальные рекомендации: