Форум OlegON > Программы и оборудование для автоматизации торговли > Маркировка

Штрих-М - пример на Delphi работы с маркировкой : Маркировка

12.10.2024 15:01


27.08.2024 08:13
По ссылке можно скачать

"Примеры для разработчиков на Delphi работы с маркировкой на ФФД 1.2"

Файл fmuMain.pas содержит код ( строка 133 )

Код:
  BeginSTLVTag(1261);
  AddTagStr(1262, '001'); // ИД ФОИВ
  AddTagstr(1263, FormatDateTime('dd.mm.yyyy', Now)); // Дата док-та основания
  AddTagStr(1264, '123'); // Номер док-та основания
  AddTagStr(1265, 'Реквизит'); // Отраслевой реквизит
  SendSTLVTag(1261);
Хотя в соседней теме https://olegon.ru/showpost.php?p=402547&postcount=3 реквизиты документа выглядят так

Цитата:
| +- [1260] sectoralData
| | +- [1262] foiv 030
| | +- [1263] authorityDate 21.11.2023
| | +- [1264] authorityDoc 1944
| | +- [1265] sectoralValue UUID=4da4945e-2ee4-45c3-b118-271c5c43f5d8&Time=1712650076457
Вопрос

Почему у штрихов в примере указан тег 1261, а в документации описан тег 1260 ?
27.08.2024 08:21
Для Штрих-М вопреки логике нужно передавать теги 1262, 1263, 1264 и 1265 как отдельные теги, каждый через команду FNSendTagOperation. Тег 1260 не передаем (его микропрограмма Штриха сама сформирует).
27.08.2024 09:24
Цитата:
victuan Для Штрих-М вопреки логике нужно передавать теги 1262, 1263, 1264 и 1265 как отдельные теги, каждый через команду FNSendTagOperation. Тег 1260 не передаем (его микропрограмма Штриха сама сформирует).
Код:
v.TagNumber := 1262
v.TagType := ttString;
v.TagValueStr := '030'
v.FNSendTagOperation()

v.TagNumber := 1263 
v.TagType := ttString;
v.TagValueStr := '21.11.2023'
v.FNSendTagOperation

v.TagNumber := 1264 
v.TagType := ttString;
v.TagValueStr := '1944'
v.FNSendTagOperation

v.TagNumber := 1265 
v.TagType := ttString;
v.TagValueStr := tag1260 // передаётся из интерпретатора как параметр ( 2 места )
v.FNSendTagOperation()
Вот так ?
27.08.2024 10:41
Цитата:
victuan Для Штрих-М вопреки логике нужно передавать теги 1262, 1263, 1264 и 1265 как отдельные теги,
почему вопреки ? просто кроме 1260 на позицию есть еще 1261 что на чек и в его составе все тоже самое - все просто зависит от того в каком месте передавать :) да и у атола и других тоже все отдельными тегами по командам
27.08.2024 12:24
Цитата:
raidex v.TagValueStr := tag1260 // передаётся из интерпретатора как параметр ( 2 места )
Вот это что? Не понимаю.

Цитата:
student почему вопреки ? просто кроме 1260 на позицию есть еще 1261 что на чек и в его составе все тоже самое
Потому что в драйвере Штриха вообще не нужно передавать тег 1260, несмотря на то что он есть.
27.08.2024 12:52
Цитата:
victuan Вот это что? Не понимаю.
tag1260 - это я придумал строковую переменную

Я уже передал в неё значение UUID=a3937851-1041-4251-a385-6099afd62594&Time=1724747742329

Не знаю как должна была реагировать касса штрих-м на то, что я активировал разрешительный режим

раньше в чеке я видел [M] или [M+] ( при сканировании марки )

Я считаю, что касса должна была сказать механическим голосом "ВСЁ В ПОРЯДКЕ ХОЗЯИН, РАЗРЕШИТЕЛЬНЫЙ РЕЖИМ АКТИВИРОВАН"

Чуть позже посмотрим в личном кабинете честного знака, там на закладке "Чеки" появилась кнопочка "Запустить проверку"
27.08.2024 13:12
Цитата:
victuan Потому что в драйвере Штриха вообще не нужно передавать тег 1260, несмотря на то что он есть.
а где надо конкретно передавать именно 1260\1261 в фр ? в атоле тоже нет прямого указания на 1260\1261, правда есть "лишняя" команда сборки 1260 (это если не json), ккс - передача набора параметров по тегам в составе 1260, у с+ зависит от модели либо как ккс либо просто набор параметров тегов без указания 1260, аналогично и в пирите\википринте
т.е. мне просто не понятна сама постановка утверждения :(
Цитата:
victuan Для Штрих-М вопреки логике нужно передавать теги 1262, 1263, 1264 и 1265 как отдельные теги
27.08.2024 13:28
Цитата:
student а где надо конкретно передавать именно 1260\1261 в фр ? в атоле тоже нет прямого указания на 1260\1261, правда есть "лишняя" команда сборки 1260 (это если не json)
Да, в Атоле надо. И в Штрих-М тоже надо для других составных тегов (например, 1084, 1256, 1223, 1224). А вот тег 1260 в штрих-М не нужно передавать как составной, поэтому "вопреки логики".
27.08.2024 13:38
Цитата:
victuan А вот тег 1260 в штрих-М не нужно передавать как составной
ну так я же написал выше - этот набор используется в зависимости от контекста - чек\позиция - на мой взгляд при этом тоже нет смысла выделять отдельные 1260 и 1261 т.к. состав един и там и там, в общем "на вкус и запах все фломастеры разные" :)
27.08.2024 13:49
Проверен ! Заработало

Ура !
Часовой пояс GMT +3, время: 15:01.

Форум на базе vBulletin®
Copyright © Jelsoft Enterprises Ltd.
В случае заимствования информации гипертекстовая индексируемая ссылка на Форум обязательна.