Страница 31 из 35

Класс для API АТОЛ «Драйвер ККТ версии 10»

Добавлено: 18 Январь 2019, 10:36
Игорь Столяров
Привет всем !

Класс работы с драйвером ККТ АТОЛ 10 на основе JSON заданий.
(форк класса ADMIN'а 2019 г.)

Класс рабочий, в комплекте примеры использования. Любые замечания и дополнения - приветствуются. :)
В FTP разделе форума создана папка: /_Books/Atol.KKT со всей сопутствующей документацией.

ВНИМАНИЕ !
Для работы с КМ (кодами маркировки) через JSON задания требуется прошивка ККТ 5.12 и выше (двухлетней давности).
На старых прошивках будет ошибка: Объекту 0x05C1E828 присвоен код ошибки 148 [Ошибка программирования реквизита 1023]

atol2.png

ATOL драйвер 10.x

Добавлено: 28 Март 2024, 19:35
finsoftrz
Сергей, а можно весь код формирования строки чека, до libfptr_registration?

ATOL драйвер 10.x

Добавлено: 28 Март 2024, 20:09
SergioRaguzini
finsoftrz писал(а): 28 Март 2024, 19:35 Сергей, а можно весь код формирования строки чека, до libfptr_registration?
Вячеслав, код довольно большой, чтобы не загружать форум, отправил на e-mail

ATOL драйвер 10.x

Добавлено: 28 Март 2024, 20:40
finsoftrz
Спасибо, посмотрел. Комплексный параметр формируется первым. Я так делал, у меня вылетает ошибка типа нет информации для печати. Ладно, подумаю еще. Может, дело и в прошивке/драйвере, в своем коде проблемы не вижу.

ATOL драйвер 10.x

Добавлено: 28 Март 2024, 22:08
Игорь Столяров
Вариант формирования отраслевого реквизита через write_sales_notice() попробовали ?

ATOL драйвер 10.x

Добавлено: 28 Март 2024, 22:20
finsoftrz
Игорь Столяров писал(а): 28 Март 2024, 22:08 Вариант формирования отраслевого реквизита через write_sales_notice() попробовали ?
Нет, судя по доке это вообще не про это...

ATOL драйвер 10.x

Добавлено: 28 Март 2024, 22:35
Игорь Столяров
Ни в коем случае не хочу бесплатно спорить, но в первом сообщении я привёл реально работающий код. :wink:
Правда не для пива, а медикоментов, там тоже задействован отраслевой реквизит и давно ...

ATOL драйвер 10.x

Добавлено: 28 Март 2024, 23:23
finsoftrz
Игорь Столяров писал(а): 28 Март 2024, 22:35 Ни в коем случае не хочу бесплатно спорить, но в первом сообщении я привёл реально работающий код. :wink:
Правда не для пива, а медикоментов, там тоже задействован отраслевой реквизит и давно ...
Так вроде там очевидно, приведенный код для тега 1261, то есть для заголовка чека, а не для строки. И в документации прямо написано, что инструкция для формирования тега 1261, и по коду сразу видно, что явной ссылки на 1261 нет.

ATOL драйвер 10.x

Добавлено: 28 Март 2024, 23:45
Игорь Столяров
OK ! В документации сначала формируется составной тег 1260 и записывается в переменную как ByteArray.
Если у Вас после записи составного тега сбрасываются параметры заголовка чека - переустановите их обратно.

ATOL драйвер 10.x

Добавлено: 29 Март 2024, 9:32
finsoftrz
Проблема с составным реквизитом решилась. Как и ожидалось, это у меня в одном из методов класса происходило обрезание строки. :sur:

ATOL драйвер 10.x

Добавлено: 20 Май 2024, 17:28
finsoftrz
Что-то не нахожу функцию продолжить печать. Админ написал, что из теста драйвера можно. Часто пошли сбои на атолах с недопечатыванием чеков, то ли датчики туфтят, то ли ещё что. В результате чек проходит, но на следующем ошибка, что не завершена печать предыдущего чека. В штрихах такая команда работает. Я всегда думал, что достаточно поправить бумагу, после закрытия крышки продолжит печать автоматически. Пишет, что не печатает так.

ATOL драйвер 10.x

Добавлено: 20 Май 2024, 17:47
finsoftrz
Отбой, нашёл.

ATOL драйвер 10.x

Добавлено: 20 Май 2024, 17:48
Игорь Столяров
finsoftrz писал(а): 20 Май 2024, 17:28 что достаточно поправить бумагу
В общем-то так и должно быть. Возможно съехала какая-то настройка или козлячья прошивка ... :(
Застрявший чек аннулируется или допечатывается. Допечатать программно мона вот так:

Код: Выделить всё

! --- Допечатать предыдущий чек если он не закрыт

Atol10.ContinueCheck  Procedure
  Code
  If Self.FlagLoaded and Self.CheckOpened()
     If libfptr_continue_print(Self.fptr) <> LIBFPTR_OK then Self.ErrorMessage('libfptr_continue_print').
  end
P/S: Раз есть вопрос, то пусть и ответ останется, иначе тема превращается в книгу тайных знаний. ;)

ATOL драйвер 10.x

Добавлено: 11 Июнь 2024, 22:42
Игорь Столяров
И с такими тупыми ботами Скайнет хочет захвать весь мир ... Мда ! :)

ATOL драйвер 10.x

Добавлено: 11 Июнь 2024, 23:33
Дед Пахом
С тупыми модераторами легко!

ATOL драйвер 10.x

Добавлено: 21 Август 2024, 6:48
Игорь Столяров
Сообщение переехало в первый пост темы. :nr: