Процесс маркировки одежды, особенно в старых конфигурациях 1С, таких как Управление торговлей 10.3, часто превращается в техническое испытание. Основная сложность заключается в том, что типовые механизмы требуют глубокой настройки справочников и карточек номенклатуры, что практически невозможно реализовать оперативно, когда речь идет о тысячах единиц остатков. Разберем пошагово, как обойти системные ограничения, правильно получить коды из системы «Честный Знак» (ЧЗ) и организовать процесс печати и ввода в оборот.
Рассмотрим ситуацию, когда у организации имеется многоуровневый справочник номенклатуры с тысячами уникальных наименований. При обновлении до релизов, поддерживающих маркировку (например, 10.3.66.3 и выше), в каждой карточке товара необходимо проставить соответствующие признаки маркированности. Если делать это через типовые обработки, возникает логистическая проблема: кладовщик не сможет быстро сопоставить напечатанную марку с конкретным физическим товаром на складе, если торговля идет «вяло» или учет не был идеально выверен до этого момента.
Проанализируем альтернативный путь: использование упрощенного описания остатков. Вместо того чтобы заводить тысячи карточек, можно описать товар по категориям (например, «Пальто женское», «Одежда мужская»), получить необходимое количество кодов маркировки и клеить их по факту, занимаясь сопоставлением с номенклатурой позже. Выясним, как технически реализовать этот процесс.
Многие пользователи опасаются нажимать кнопку «Печать» в Личном кабинете (ЛК) Честного Знака, полагая, что это сразу отправит документ на принтер. На самом деле, в системе ЧЗ под «печатью» подразумевается формирование файла. Выясним особенности доступных форматов:
Notepad++.JasperReports.Рассмотрим, как выглядит «чистый» код в текстовом редакторе. Между GTIN и серийным номером, а также перед криптохвостом, должны присутствовать спецсимволы. В Notepad++ они отображаются как GS (символ разделителя групп). Если вместо них вы видите пробелы — ваш метод чтения файла повредил структуру кода.
Символ GS (код ASCII 29) критически важен для сканеров и систем проверки. При загрузке кодов в 1С через CSV-файл необходимо убедиться, что ваша обработка корректно считывает этот непечатный символ. Проанализируем пример кода для разбора строки кода маркировки:
Функция ОчиститьКодМаркировки(ИсходныйКод)
// Символ GS часто отображается как символ с кодом 29
СимволGS = Символы.ВК; // В некоторых случаях это может быть другой код
СимволGS = Символ(29);
// Удаляем или заменяем спецсимволы для корректного поиска в базе
Результат = СтрЗаменить(ИсходныйКод, СимволGS, "");
Возврат Результат;
КонецФункции
Важный момент: При печати через 1С необходимо использовать компоненту 1С:Печать штрихкодов, которая умеет правильно кодировать DataMatrix с учетом управляющих символов.
Если стандартные шаблоны из ЛК Честного Знака вам не подходят, рассмотрим два пути:
DataMatrix. Это позволяет добавить на этикетку любую дополнительную информацию: наименование, артикул или дату, что значительно облегчит работу кладовщика.Посмотрим на настройки печати в самом ЧЗ. Существует два варианта расположения в PDF:
После того как марки наклеены, их необходимо ввести в оборот. Выясним, обязательно ли формировать сложный XML для выгрузки из 1С.
Если вы маркируете остатки, система «Честный Знак» позволяет сделать это вручную через веб-интерфейс. В разделе «Документы» создается документ «Ввод в оборот», вид операции — «Маркировка остатков». Рассмотрим алгоритм:
Хотя ручной способ кажется трудоемким, для разовой акции по маркировке остатков это зачастую быстрее, чем написание и отладка выгрузки XML в 1С:УТ 10.3, которая может выдать ошибку из-за любого лишнего пробела в файле.
Проанализируем ситуацию, когда марка потерялась или не читается. Выясним, как организовать хранение данных:
Notepad++ по фрагменту кода (обычно по серийному номеру, который идет после GTIN).В завершение отметим, что для стабильной работы в будущем стоит рассмотреть переход на обмен через API (JSON). Это позволит вашей 1С напрямую «общаться» со Станцией управления заказами (СУЗ), запрашивать коды и проверять их статусы без промежуточного скачивания файлов и ручного манипулирования данными в браузере. Для УТ 10.3 такие решения реализуются через HTTPСоединение и внешние компоненты для работы с JSON.