|   |   | 
| 
 | Как хранится код маркировки в 1С:Рознице 2.3 | ☑ | ||
|---|---|---|---|---|
| 0
    
        petya_ petrov_63 23.03.23✎ 10:37 | 
        Кто-нибудь может сказать в каком виде хранится  код маркировки воды в справочнике ШтрихкодыУпаковокТоваров в поле ЗначениеШтрихкода в том числе 32ой знак, который согласно формата должен быть символом с кодом 29. В чем проблема - у меня проверка кодов маркировки средствами честного знака не работает какого-то лешего. Я хочу реализовать просто тупую запись кода маркировки в поле значениеШтрихКода, но при записи в обычном виде конфа встает на раскоряку так как 32 символ в коде непечатаемый и не серилиализуется. Поэтому и хотелось бы знать каким эта проблема решена в Рознице 2.3.     | |||
| 1
    
        timurhv 23.03.23✎ 11:27 | 
        1C не хранит разделитель и все что после кроме эмиссии марок.
 ЧЗ тоже он не нужен, можно использовать только при проверке марок ЕАЭС. | |||
| 2
    
        petya_ petrov_63 23.03.23✎ 12:03 | 
        (1) Т.е. хранится только код товара и серийный номер? Или вообще только серийный номер? 
 Спасибо за ответ. | |||
| 3
    
        timurhv 23.03.23✎ 12:09 | 
        Вы бы описали что дальше с маркой хотите делать? В каком документе, при пробитии чека или онлайн продаже нужен полный код для фискальника.     | |||
| 4
    
        petya_ petrov_63 23.03.23✎ 12:11 | 
        (3) Дальше - списать при продаже, т.е. передать согласно формату фискальных данных код маркировки для отметки о выбытии марки в ЧЗ.     | |||
| 5
    
        petya_ petrov_63 23.03.23✎ 13:59 | 
        (3) Т.е. для пробития чека все равно нужен полный код маркировки получается? Тогда глупый вопрос, если 1С не хранит полный код, тьо как решается проблема наличия полного кода маркировки для пробития чека?     | |||
| 6
    
        timurhv 23.03.23✎ 14:07 | 
        Справочник.ШтрихкодыУпаковокТоваров - там не должен храниться, во всяком случае при эмиссии и вводе в оборот записывается упрощенный состав.
 Для пробития - полная марка (зависит от версии ОФД, раньше ГТИН + серии было достаточно, в новых версиях только полный). Думаю, в типовых документах полный код хранится в переменной кэша у документа, т.к. хранить полный код марки в БД запрещено (кроме случаев когда он нужен для печати, онлайн-продаже при сборке и тд, потом удалять\очищать). | |||
| 7
    
        petya_ petrov_63 23.03.23✎ 14:54 | 
        А упрощенный состав это что?
 (6)Я так понимаю, что это предположения. А что посмотреть в базе консолькой нельзя? ( Спасибо. | |||
| 8
    
        petya_ petrov_63 24.03.23✎ 15:19 | 
        Так вопрос с хранением снят. Хранится GTIN и серийный номер. Теперь вопрос - а что должно уходить в ОФД? В каком виде? Как генерится полный код из GTIN-а и серийного номера?     | |||
| 9
    
        isa2net 24.03.23✎ 15:36 | 
        Для сериализации можете переводить в формат base64 https://infostart.ru/public/1574381/     | |||
| 10
    
        petya_ petrov_63 24.03.23✎ 15:42 | 
        (9) спасибо. В типовой проблема сериализации при хранении непечатного и несерилиализуемого 29 символа решена тем, что этот символ из кода маркировки просто не хранится. Но тогда вопрос: что передается в качестве кода маркировки для ОФД.     | |||
| 11
    
        isa2net 24.03.23✎ 16:27 | 
        (10) 
 // Сформировать реквизита кода товар для DataMatrixGS1 на основе GTIN & SerialNumber. // // Параметры: // GTIN - Строка - Глобальный идентификатор торговой единицы. // СерийныйНомер - Строка - Серийный номер. // // Возвращаемое значение: // Строка - Значение реквизита кода товара в BASE64 // | |||
| 12
    
        petya_ petrov_63 24.03.23✎ 16:33 | 
        Описание есть, а название процедурки потеряли ..     | |||
| 13
    
        petya_ petrov_63 24.03.23✎ 16:34 | 
        МенеджерОборудованияМаркировкаКлиентСервер.СформироватьКодТовараДляDataMatrixGS1     | |||
| 14
    
        petya_ petrov_63 24.03.23✎ 16:36 | 
        Т.е. это значение и есть код маркировки для ОФД?     | |||
| 15
    
        isa2net 24.03.23✎ 16:37 | 
        (13) 
 МенеджерОборудованияКлиентСервер Функция СформироватьКодТовараДляDataMatrixGS1(GTIN, СерийныйНомер) Экспорт | |||
| 16
    
        petya_ petrov_63 24.03.23✎ 16:44 | 
        (15) вот блин, я надеялся, что тип будет строка, а тут тип возвращаемый процедурой сложнее ...
 А всего то надо было бы понимать как генерятся данные для кассы и там соответственно нашел бы нужный кусок кода ( | |||
| 17
    
        isa2net 24.03.23✎ 16:58 | 
        (16) Там же у вас тэг 1162 "РеквизитКодаТовара" строка базе64
  Функция ЗаполнитьИменаРеквизитовКодаТовара(КодРазобран = Ложь)
 | |||
| 18
    
        petya_ petrov_63 24.03.23✎ 17:03 | 
        (17)
 Какой из этих видов передается? РеквизитКодаТовараHEX РеквизитКодаТовара Base64 или HEX? Большое спасибо за помощь. | |||
| 19
    
        isa2net 24.03.23✎ 17:16 | 
        (18)  В сам драйвер уходит файл хмл, в нем строка базе64
 ЗаписьXML.ЗаписатьАтрибут("MarkingCode", XMLСтрока(ДанныеКодаТоварнойНоменклатуры.РеквизитКодаТовара)) | |||
| 20
    
        isa2net 24.03.23✎ 17:17 | 
        (19) Сорри, не файл, данные в хмл формате     | |||
| 21
    
        petya_ petrov_63 24.03.23✎ 17:17 | 
        (18) Для розницы получается тогда так:
 ДанныеКодаТовара = МенеджерОборудованияМаркировкаКлиентСервер.СформироватьКодТовараДляDataMatrixGS1(GTIN, СерийныйНомер); КодМаркировкиОФД = ДанныеКодаТовара.РеквизитКодаТовара; Большое спасибо. | |||
| 22
    
        isa2net 24.03.23✎ 17:22 | 
        (21) Я отсюда ссмотрел:
 
 | |||
| 23
    
        petya_ petrov_63 24.03.23✎ 17:29 | 
        (22) Не понял, странно, что не используется реквизит, который уже есть в справочнике например ХешСуммаЗначенияШтрихкода, а просчитывается при формировании чека. Еще раз большое спасибо.     | |||
| 24
    
        MWWRuza гуру 24.03.23✎ 17:36 | 
        (0) В чем проблема - у меня проверка кодов маркировки средствами честного знака не работает какого-то лешего.
 А должна? О какой проверке речь идет? Средствами ККТ - ? Если так то проверка выполняется только в рамках ФФД-1.2. В более ранних - проверки и не было, данные марки так отправлялись, в закодированном специальным образом теге 1162. То, что выще описано, как раз для его формирования. И все-таки, о чем речь идет? Какоая версия ФФД у кассы - ? 1.2, или 1.05/1.1 - ? | |||
| 25
    
        Тихий омут 27.03.23✎ 03:36 | 
        Не читая всё - полный код маркировки, как сказано в (6), в базе хранить нельзя. В случае работы с ФФД 1.2 вы должны считать его с марки перед пробитием чека и передать в ККТ для проверки в рамках сессии проверки марок.     | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |