Страница 19 из 19

Класс для API ГСЦМ «Честный ЗНАК» / ТС ПИоТ

Добавлено: 31 Август 2024, 7:30
Игорь Столяров
Привет всем !

Класс для выполнения разрешительной проверки КМ (кодов маркировки)
через API ГСЦМ "Честный ЗНАК" (ГИС МТ + ПО Локальный Модуль) и ТС ПИоТ.

Полный боевой комплект с описанием интерфейса API и примерами.

Реализованный в классе функционал полностью соответствует ПФС ЦРПТ (версия 1.10 / 21 сценарий)
для получения сертификата совместимости и допуска в промышленную среду работы с ТС ПИоТ. 😎

Благодарность за помощь на старте проекта: FinsoftRZ и Alex412.
Любые замечания, исправления и дополнения - приветствуются !
----------------------------------------------------------------------------------------------------
НАСТОЯТЕЛЬНО рекомендуем использовать актуальные версии классов LibCURL, cJSON и PrintF.

2.jpg

Класс для API ГСЦМ «Честный ЗНАК» / ТС ПИоТ

Добавлено: 16 Февраль 2026, 16:16
finsoftrz
Игорь, а какие версии libcurl, json и printf Вам достались от бабушки? Вроде все это от дедушки. :lol:
Если от дедушки можно, а от бабушки нет, то это сексизм. :lol:

Класс для API ГСЦМ «Честный ЗНАК» / ТС ПИоТ

Добавлено: 16 Февраль 2026, 16:28
zmi
zmi писал(а): 16 Февраль 2026, 14:16 Коды как раз-таки идут в том же порядке, диагностика к ним неправильная.
Игорь, кажется я понял, что происходит с обработкой списка.
Как только появляется код с диагностикой "КМ не найден в ГИС МТ" происходит смещение диагностики на него (и именно диагностики, последовательность кодов верная), как будто этой строки очереди нет.

Вот например, если добавить в мой пример еще один код, который отсутствует в ГИС МТ, на 2-е место, то диагностика по 1-му коду верная, по 2-му - от третьего, по 3-му - от четвертого, к последнему дописывается от 2-го.
Free(qCodes)
Clear(qCodes); qCodes.GS1 = '0104670540176099215''W9Um<29>93dGVz'; Add(qCodes) ! КМ из сертификации 5.1
Clear(qCodes); qCodes.GS1 = '0107613036147262215ChK<W<29>93NKId'; Add(qCodes) ! КМ зоокорм
Clear(qCodes); qCodes.GS1 = '0104670540176099215LnOjv<29>93dGVz'; Add(qCodes) ! КМ из сертификации 5.2
Clear(qCodes); qCodes.GS1 = '0104602220006549215opFcmK<29>93dGVz'; Add(qCodes) ! КМ из примера (алкоголь)

PS. Я пробовал разные варианты, но все они соответствуют данной версии.

Класс для API ГСЦМ «Честный ЗНАК» / ТС ПИоТ

Добавлено: 16 Февраль 2026, 16:31
Игорь Столяров
Современный софт на всех уровнях стал достаточно сложным.
Ошибки - это рабочий процесс, и далеко не всё официально публикуется. Просто исправляется и всё. 🤷‍♀️
Недавно я говорил об ошибках в драйвере ККТ POScenter, которых нет в драйвере ТБМ.
Всё-таки после разбора логов они сознались, что это ошибка "новой команды разработчиков" и она исправлена.
Но это только в переписке со мной, для всех остальных на сайте - всё супер ! 🤦‍♀️

Класс для API ГСЦМ «Честный ЗНАК» / ТС ПИоТ

Добавлено: 16 Февраль 2026, 16:32
Игорь Столяров
zmi писал(а): 16 Февраль 2026, 16:28 Игорь, кажется я понял, что происходит с обработкой списка
Мне кажется всё проще. Сначала идут успешные коды, а потом ошибки. :D

Класс для API ГСЦМ «Честный ЗНАК» / ТС ПИоТ

Добавлено: 16 Февраль 2026, 16:45
zmi
Игорь Столяров писал(а): 16 Февраль 2026, 16:32 Сначала идут успешные коды, а потом ошибки.
Такая мысль и мне первой пришла в голову :) НО в результате некорректная диагностика!! :D

Класс для API ГСЦМ «Честный ЗНАК» / ТС ПИоТ

Добавлено: 16 Февраль 2026, 16:50
Игорь Столяров
zmi писал(а): 16 Февраль 2026, 16:45 в результате некорректная диагностика
Спасибо. Да, я уже это понял. ТС ПИоТ меняет последовательность кодов при ошибке. :(
Сейчас сделаю - не заморачивайтесь пока с этим. Это будут внутренние изменения в классе.

- Если проверяется один КМ при выписке - с ним не может быть проблемы нарушения последовательности;
- Если ошибка проверки списка КМ в чеке - то чек всё равно снимается с продажи, но возможно неправильное указание КМ с ошибкой.

Класс для API ГСЦМ «Честный ЗНАК» / ТС ПИоТ

Добавлено: 16 Февраль 2026, 20:37
finsoftrz
Игорь Столяров писал(а): 16 Февраль 2026, 16:31 Современный софт на всех уровнях стал достаточно сложным.
Ошибки - это рабочий процесс, и далеко не всё официально публикуется. Просто исправляется и всё. 🤷‍♀️
Недавно я говорил об ошибках в драйвере ККТ POScenter, которых нет в драйвере ТБМ.
Всё-таки после разбора логов они сознались, что это ошибка "новой команды разработчиков" и она исправлена.
Но это только в переписке со мной, для всех остальных на сайте - всё супер ! 🤦‍♀️
Эта сложность объясняется низким уровнем адекватности спускаемых сверху правил, с одной стороны, и попыткой более полно реализовать это в учетных системах (я, конечно, про наших баранов). Это игра в одни ворота. Следовать всем правилам в итоге смогут только крупные компании, которые могут позволить себе тратить много денег на содержание больших ит отделов и прочих бухгалтеров. Для средних и небольших компаний такой подход прямой путь к закрытию. Что мы сейчас и наблюдаем. По этой причине сейчас надо как-то оптимизировать взаимодействие с государственными сервисами, сознательно ограничивая и упрощая их использование.

Класс для API ГСЦМ «Честный ЗНАК» / ТС ПИоТ

Добавлено: 16 Февраль 2026, 20:46
Игорь Столяров
zmi писал(а): 16 Февраль 2026, 16:45 НО в результате некорректная диагностика!!
Устранено ! Приглашаю все заинтересованные стороны к тестированию. :D
Вот негодяи ! Зачем же они сделали в ТС ПИоТ пасхалку с перетасовкой записей в ответе при ошибках ? :evil:
Хотя, кстати, это может быть только проблемой тестового стенда (уже были такие и в ГИС МТ и в Ветисе)

Начали сертификацию в АО ЕСП. Спойлер: всё не просто ... :facepalm:

Класс для API ГСЦМ «Честный ЗНАК» / ТС ПИоТ

Добавлено: 16 Февраль 2026, 20:57
finsoftrz
А зачем нужна сертификация в АО ЕСП? Первый раз слышу, вроде достаточно в ЧЗ.

Класс для API ГСЦМ «Честный ЗНАК» / ТС ПИоТ

Добавлено: 16 Февраль 2026, 21:02
Игорь Столяров
finsoftrz писал(а): 16 Февраль 2026, 20:57 А зачем нужна сертификация в АО ЕСП? Первый раз слышу, вроде достаточно в ЧЗ.
Для работы - оно как бы да, достаточно только попасть в реестр совместимого ПО ЦРПТ и получить свой токен ...
Но ведь теперь хочется (очень), попасть на сайт ЦРПТ в калькулятор выбора ПО и рекомендации ЕСП для удобства клиентов. :D