Загрузка кодов маркировки в документ Маркировка ИС МП (Отчёт о верификации нанесённых КМ)

1. Menmo 9 28.10.23 11:36 Сейчас в теме
Коллеги, добрый день!
Нужна помощь.
Ситуация следующая:
Мы работаем с производителем из другой страны по схеме контрактного производства.
Сначала мы создаём документ на эмиссию кодов маркировки в 1С, выгружаем коды, отдаём их производителю.
Производитель наносит коды на упаковки и сам их агрегирует (формирует логистические коды).
Далее высылает нам отчёт о нанесении маркировки в формате JSON, где есть дата производства, срок годности, логистические и потребительские коды.
Проблема в чём:
Необходимо загрузить эти коды в документ Маркировки ИС МП с операцией Верификации нанесённых кодов КМ.
Что было сделно:
1) Разбор JSON, создание серий на основе даты производства, срока годности.
2) Разбор кодов маркировки (частичный), перелазил всю обработку Подбора ИС ИП, все бспшные процедуры и функции очень сильно завязаны на форме подбора, которой собственно у меня и нет.
Итого - вроде как потребительские коды считаны правильно, создаю на основе разбора кодов элементы справочника Штрихкоды Упаковок и Товаров - проверяю разницу между созданными мной и теми, что создаёт система при "ручном" сканировании.
Увидел следующую разницу - у меня нет Хешей кодов.
Где их взять и как их расчитать?
Второе логистическая упаковка - при разборе штрихкода не правильно формируется код логистической упаковки, в типовом варианте удаляются скобки перед 21.
Вот два примера штрихкод, который разобран стандартно через форму подбора:
(01)04810910004625(17)251001(10)AAAAA121011
Штрихкод разобранный мной:
(01)04810910004625(17)251001(10)AAAAA1(21)011

Разбираю код следующими процедурами и функциями:

ПримечаниеКРазборуШтрихкода                    = Неопределено;
	ПользовательскиеПараметрыРазбораКодаМаркировки = РазборКодаМаркировкиИССлужебныйКлиентСервер.ПользовательскиеПараметрыРазбораКодаМаркировки();
	ПользовательскиеПараметрыРазбораКодаМаркировки.ВалидироватьШтрихкодЛогистическойУпаковкиGS1128СОшибками = Ложь;
	
	ДанныеРазбора = РазборКодаМаркировкиИССлужебныйКлиент.РазобратьКодМаркировки(
	ДанныеШтрихкода.Штрихкод, ВидМаркируемойПродукции, ПримечаниеКРазборуШтрихкода,, ПользовательскиеПараметрыРазбораКодаМаркировки);
	
	ДанныеРазбораИРезультат = Новый Структура;
	ДанныеРазбораИРезультат.Вставить("ДанныеРазбора",               ДанныеРазбора);
	ДанныеРазбораИРезультат.Вставить("ПримечаниеКРазборуШтрихкода", ПримечаниеКРазборуШтрихкода);
	
	КешДанныхРазбора = Новый Соответствие;
	КешДанныхРазбора.Вставить(ДанныеШтрихкода.Штрихкод, ДанныеРазбораИРезультат);
	
	НормализованныйШтрихкод = РазборКодаМаркировкиИССлужебныйКлиент.НормализованныйШтрихкод(
	ДанныеШтрихкода.Штрихкод, ВидМаркируемойПродукции, КешДанныхРазбора, ПользовательскиеПараметрыРазбораКодаМаркировки);  
Показать


Что я делаю не так?
Причём, как я говорил штрихкоды потребительских упаковок - соответствуют полностью.
Какие могут быть в этом подводные камни, всё ли нормально будет при передачи в ИС МП?
Может кто-то сталкивался с подобной проблемой..
Заранее спасибо за ответ!
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. RustamZz 28.10.23 14:46 Сейчас в теме
(1) Целью Отчета о верификации нанесенных КМ является проверка считывания распечатанных и нанесенных на продукцию кодов. При формировании отчета необходимо именно считывание и передача полного кода маркировки.
3. Menmo 9 28.10.23 14:58 Сейчас в теме
(2) я это понимаю, "считывается", полный код, который выслал производитель.
Но система в любом случае его разбирает на составные части.
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот