Встала задача отправки чеков с 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:\ProgramData\ATOL\drivers10\web\logs\web.log и потом удалить все эти запросы. (Если не удалите, то при включении ККМ пойдет выполнение этих запросов).