Страница 40 из 40
Класс для API АТОЛ «Драйвер ККТ версии 10»
Добавлено: 18 Январь 2019, 10:36
Игорь Столяров
Привет всем !
Класс работы с драйвером ККТ АТОЛ 10 на основе JSON заданий.
Форк класса ADMIN'а:
Driver10.zip
Класс рабочий, в комплекте примеры использования. Любые замечания и дополнения - приветствуются.

В FTP разделе форума создана папка:
/_Books/Atol.KKT со всей сопутствующей документацией.
----------------------------------------------------------------------------------------------------
Рекомендуем использовать актуальные версии классов
cJSON и
PrintF.
Класс для API АТОЛ «Драйвер ККТ версии 10»
Добавлено: 17 Декабрь 2025, 7:48
Игорь Столяров
Версия класса для API АТОЛ 10 от 17.12.2025 г.
-----------------------------------------------------------
- Отработаны изменения и рекомендации в релизном драйвере АТОЛ 10.10.8.0;
- Исправлены мелкие помарки по запросам.
Класс для API АТОЛ «Драйвер ККТ версии 10»
Добавлено: 11 Январь 2026, 19:47
Игорь Столяров
Всем привет !
Версия класса для API АТОЛ 10 от 11.01.2026 г.
-----------------------------------------------------------
- Очистка кодов маркировки от GS1 и разбор кода маркировки на части;
- Дополнение форматов поддерживаемых кодов маркировки;
- Исправлены мелкие помарки по запросам.
Класс для API АТОЛ «Драйвер ККТ версии 10»
Добавлено: 05 Февраль 2026, 20:54
Игорь Столяров
Всем привет !
Обновление версии класса для API ККТ АТОЛ.
-----------------------------------------------------------
- Обработка новых форматов кодов маркировки с переменной длиной;
- При запросе чека из ФН возвращаются ставки и суммы налога;
- Устранена проблема с первым чеком при автоматическом переоткрытии смены;
- Отработаны мелкие помарки по запросам.
Класс для API АТОЛ «Драйвер ККТ версии 10»
Добавлено: 11 Февраль 2026, 13:52
zmi
1. В последней версии класса процедура jCreateNewCheck признана рудиментом. Тем не менее, в примерах классов ATOL и HONEST (*.txt) она присутствует. Ее можно просто без последствий убрать у себя из исходников или все-таки следует заменить на что-то?
При Atol:Legacy Equate(1) вышеуказанная процедура включается в компиляцию, НО вместе с ней включается описание отсутствующей не использующейся процедуры jFreeItems. Надо бы в Atol.inc убрать ее описание.
2. При изъятии/внесении денег (jCashInOut) в чек выводится опционально информация процедурами jAddEasyHeader/jAddEasyFooter, как описано в примере (Atol.txt). Я использовал jAddEasyHeader для конкретизации. Сейчас убрал, чтобы класс не корежить. Можно ее чем-то заменить и как правильнее это сделать?
Класс для API АТОЛ «Драйвер ККТ версии 10»
Добавлено: 11 Февраль 2026, 14:27
Игорь Столяров
zmi писал(а): 11 Февраль 2026, 13:52
В последней версии класса процедура jCreateNewCheck признана рудиментом.
Уже давно ... Метод класса jCreateNewCheck() заменён на аналогичную процедуру Atol::CreateNewCheck().
Это удобней, если нужно одновременно формировать несколько кассовых чеков (и не только). См. пример.
Вопросы с флагом Atol:Legacy Equate и примерами устраним в следующем (опубликованном здесь) релизе.
zmi писал(а): 11 Февраль 2026, 13:52
Сейчас убрал, чтобы класс не корежить
Вообще без проблем.
Печатайте нефискальный информационный текст до и после любого фискального документа.
Вот реальный пример из рабочей программы для чеков на внесение / выплаты кеша.
Код: Выделить всё
! Создать новый фискальный документ
Atol::CreateNewCheck(Loc:Header,Glo:MyAtol.qTextItems,Glo:MyAtol.qPostItems)
Atol::AddOutItem('ТЕКСТ ДО ЧЕКА', Glo:MyAtol.qTextItems) ! Добавить текст для печати перед документом
Atol::AddOutItem('ТЕКСТ ПОСЛЕ ЧЕКА',Glo:MyAtol.qPostItems) ! Добавить текст для печати после документа
Loc:Header.gOperator = MyFRS.gOperator ! Данные кассира (ФИО / ИНН)
Loc:Header.OpenDrawer = MyFRS.FBox ! Открыть денежный ящик при оплате наличными
Loc:Header.Electronically = MyFRS.Electronically ! Электронный чек (без печати на кассовую ленту)
Loc:Header.Silent = MyFRS.Silent ! Без выдачи сообщений (принт-сервер чеков)
Loc:Header.Total = MyFRS.Summa ! Сумма операции
Execute MyFRS.XType ! Вид чека (для обработки внутри класса)
Loc:Header.CheckType = ATOL:CASH_IN ! 1. Внесение
Loc:Header.CheckType = ATOL:CASH_OUT ! 2. Выплата
end
Loc:RetValue = Glo:MyAtol.jCashInOut(Loc:Header)