Аванкор: Паевые фонды — работа с кассой через web-сервер Атол


«Аванкор: Паевые фонды» — работа с он-лайн кассой через web-сервер Атол. Подключается как расширение + внешняя обработка.

Встала задача отправки чеков с 01.07.19 г. на он-лайн кассу в конфигурации "Аванкор: Паевые фонды, версия 2.5 (2.5.16.8)". ККМ "Атол 30-Ф"
За основу взята статья //infostart.ru/public/974680/

Конфигурация на поддержке, поэтому изначально хотел реализовать всё в расширении. У меня не получилось расширить интерфейс пользователя, чтобы внести обработку в меню (похоже пока это нельзя в обычных формах). Поэтому сама обработка сделана внешней и подключена в базу как внешняя обработка.

В расширении:
ОбщийМодуль "РаботаС_ОчередьюККМ"
Дополнительный реквизит "НомерЧекаСКассы" у документа "ПоступлениеНаРасчетныйСчет"
РегистрСведений "ОчередьРаботыСККТ"

На текущий момент стоит файловая 1С:Предприятие 8.3 (8.3.13.1644) и нет возможности добавлять в расширение константы. Поэтому адрес web-сервера и порт прописаны в коде модуля обработки. 
ККТ можно управлять напрямую из установленного драйвера (в частности отправлять JSON команды), но предварительно надо погасить службу web-сервера (кучу времени убил, пока узнал).
Для отладки можете отправлять команду на открытие смены и закрытие. Внутри дня хоть 10 раз можно открывать/закрывать смену. По-крайней мере так проконсультировал меня специалист по ККМ. 

Касса одна, поэтому аналитики по "кассам" нет совсем.

Порядок работы с обработкой следующий:
При выборе периода и нажатии "Заполнить" делается запрос по "Поступлениям на расчетный счет" (физ.лица, не ИП) и заполняется таблица формы.

Далее нажатие кнопки "Открыть смену" отправляет команду открытия на web-сервер. (Как уже позже выяснил, просто отправка команды "Печати чека" автоматически приводит к открытию смены)

Нажатие кнопки "Выполнить" отправляет POST запросы с данными из табличной части формы. После отправки запроса создается запись в  регистре "Очередь работы с ККТ".
В обработке подключается обработчик ожидания, который для записей из  "Очереди работы с ККТ" по УИД делает GET-запросы к web-серверу. По результату запроса делается запись.

После распечатки чеков необходимо закрыть смену кнопкой "Закрыть смену".

Кнопка "Удалить задания" больше служила для отладки. Вы можете выключить ККМ, отправить на web-сервер запросы, посмотреть логи C:ProgramDataATOLdrivers10weblogsweb.log и потом удалить все эти запросы. (Если не удалите, то при включении ККМ пойдет выполнение этих запросов).

Leave a Comment

Ваш адрес email не будет опубликован. Обязательные поля помечены *