Страница 8 из 8
Класс для API ГСЦМ «Честный ЗНАК»
Добавлено: 31 Август 2024, 7:30
Игорь Столяров
Привет всем !
Класс для разрешительной проверки КМ (кодов маркировки) через API ГСЦМ "Честный знак".
Поддержка целевой реализации в ПО ЛМ "Честный Знак" (обязательна с 01.09.2025 г.)
Полный боевой комплект с описанием интерфейса API и примерами.
Благодарность за помощь на старте проекта: FinsoftRZ и Alex412.
Любые замечания, исправления и дополнения - приветствуются !
----------------------------------------------------------------------------------------------------
Рекомендуем использовать актуальные версии классов
LibCURL и
cJSON.
Класс для API ГСЦМ «Честный ЗНАК»
Добавлено: 10 Ноябрь 2025, 17:30
Игорь Столяров
finsoftrz писал(а): 10 Ноябрь 2025, 15:40
А этой статье можно доверять?
Таки да ! TrueMark.ru - это ресурс ГСЦМ "Честный ЗНАК", только с той стороны, что работает с производителями и импортёрами.
Конкретно для ОСУ мы тег передаём аналогично (но Вас опасная реализация частного случая показана):
Код: Выделить всё
If xMyXML.Opened('НомСредИдентТов') ! Формируем код ОСУ (объёмно сортового учёта)
xMyXML.Closed('НомУпак','02' & |
Format(КОД_GTIN,@n014) & |
'37' & |
Clip(Left(Choose(КОЛИЧЕСТВО % 1 = 0,КОЛИЧЕСТВО,Int(КОЛИЧЕСТВО) + 1))) ) ! Округление дроби вверх до 1
xMyXML.EndTag('НомСредИдентТов')
end
Это пример из
Класс для API XML «На основе штатного CpXML»
Класс для API ГСЦМ «Честный ЗНАК»
Добавлено: 10 Ноябрь 2025, 17:51
finsoftrz
В чем опасность? Не встречал, чтобы количество маркированных товаров было дробным. Бывает, когда отгружают в литрах/кг. В этом случае количество марок указывается отдельно.
Класс для API ГСЦМ «Честный ЗНАК»
Добавлено: 10 Ноябрь 2025, 18:05
Игорь Столяров
finsoftrz писал(а): 10 Ноябрь 2025, 17:51
В чем опасность?
Ну у Вас как бы предполагается, что Len(Tov:Shtrih) всегда 13 и GTIN всегда начинается с "0". Не факт. Например сигареты.
finsoftrz писал(а): 10 Ноябрь 2025, 17:51
Не встречал, чтобы количество маркированных товаров было дробным
И я не встречал. Но пользователь может указать или после какой-нибудь частичной отгрузки образуется остаточек.

Класс для API ГСЦМ «Честный ЗНАК»
Добавлено: 10 Ноябрь 2025, 18:36
finsoftrz
У нас gtin это всегда еан13, дополненный нулем спереди до 14 знаков. С другими вариантами не сталкивался. Столкнемся, будем думать. Видел где-то, что для товара gtin указывался отдельно от шк. Это будет довольно неудобно для работы, так как тогда у товара может быть как несколько шк, так и несколько gtin.
Количество у нас контролируется в зависимости от типа товара (штучный или весовой/мерный). У штучного товара не может быть никаких дробных остаточков. Вот отгружать могут в литрах, когда цена задается на литр. В этом случае рядом с количеством в литрах в накладной можно поставить дополнительно количество целых бутылок или упаковок. А если не поставили, то считается как 1.
Класс для API ГСЦМ «Честный ЗНАК»
Добавлено: 10 Ноябрь 2025, 19:37
Игорь Столяров
finsoftrz писал(а): 10 Ноябрь 2025, 18:36
Видел где-то, что для товара gtin указывался отдельно от шк.
Правильно говоря - это вообще разные коды. Тут можно кратко вспомнить историю.
Когда вводили GTIN то наши деятели успели даже открыть совместно российско-немчиновое предприятие
для выдачи логистических GTIN "всем тёмным росиянам". Кажется хотели недорого. По 3000 рубликов за код.
Но поднялась волна народного гнева, которая дошла до Думы. Тогда Минторге отложили мечту о домике в Израиле
и сказали что пошутили. GTIN - это тот же штрих-код. 0 + EAN13 для штучного товара и EAN14 для фасованного.
Это я к чему рассказал ? Например, на коробку с мороженным наносится упаковочный КМ длиной 60 символов,
который содержит 14-значный GTIN и первая цифря в нём совсем не 0 ...
