Релиз ревью:
В рамках релиза полностью переработан Web-сервер ККТ. Теперь он не требует установленной Java, поддерживает работу с несколькими ККТ и имеет более подробную документацию. Документация по нему вынесена на отдельный ресурс и распространяется в формате openapi 3.0, ссылка на него приведена в документации, а также Новый Web-сервер имеет новое API для работы с ККТ, а также поддерживает старое. Также были учтены пожелания к старому серверу:
- настройка соединения с ККТ через API
- более гибкая настройка драйвера
- настройка времени хранения запросов и.т.п.
Помимо этого добавлена возможность разделения логов от разных объектов драйвера, упрощена настройка канала связи с ОФД на стороне драйвера, а также проведены другие улучшения.
Внесённые изменения:
- Драйвер ККТ
- Добавлен новый конструктор драйвера, которому можно передать идентификатор объекта для разделения логов по разным файлам.
- Метод логирования logWrite() адаптирован под разделение логов.
- Исправлена проблема, когда открытие окна настроек драйвера через вызов метода showProperties() завершалось с неизвестной ошибкой.
- Настройка драйвера «Канал до ОФД» (LIBFPTR_SETTING_OFD_CHANNEL) теперь имеет значения «Нет» (LIBFPTR_OFD_CHANNEL_NONE) и «Автоматически» (LIBFPTR_OFD_CHANNEL_AUTO). При выборе значения Автоматически драйвер сам определит своё поведение по настройкам ККТ. При использовании значения LIBFPTR_OFD_CHANNEL_PROTO драйвер будет переключаться на LIBFPTR_OFD_CHANNEL_AUTO. Также изменено значение по умолчанию — теперь это LIBFPTR_OFD_CHANNEL_AUTO.
- Метод checkDocumentClosed() теперь не ограничен жизнью объекта драйвера и может использоваться даже после перезапуска ПО или ПК.
- Внесены следующие изменения в основной API:
- добавлен запрос LIBFPTR_DT_FONT_INFO для метода queryData() для запроса параметров шрифта (только ККТ версий 5.X).
- добавлен отчёт LIBFPTR_RT_CLOSE_SHIFT_REPORTS для метода report() для печати нераспечатанных отчётов о закрытии смены (только ККТ версий 5.X).
- для метода execDriverScript() добавлен параметр LIBFPTR_PARAM_REMOTE_CALL для управления выполнением скриптов (локально или удалённо на Sigma).
- добавлен метод validateJson() для валидации json-задания без его выполнения.
- для метода utilFormTlv() добавлен параметр LIBFPTR_PARAM_IGNORE_EMPTY для управления поведением при передаче пустых реквизитов.
- для метода execDriverScript() добавлен параметр LIBFPTR_PARAM_SCRIPT_PARAMS для передачи параметров в скрипт.
- Внесены следующие изменения в JSON API:
- добавлена возможность передачи номера автомата в чеках коррекции
- Внесены следующие изменения в поддержку настроек ККТ:
- для ККТ версий 5.X изменены названия настроек 182 и 183 — убрано упоминание системного администратора, добавлено упоминание кассира по умолчанию.
- настройка 55 — Пересчитывать суммы налогов после скидки на итог — теперь актуальна и для ККТ версий 5.X.
- Добавлен скрипт getFiscalDocumentResult для получения данных о документе по номеру в формате, аналогичному результатам json-заданий.
- Для языковых обёрток добавлена возможность загрузки драйвера по пути.
- В окно настроек драйвера добавлен поиск ККТ по TCP/IP.
- C++-обёртка переделана на header-only с возможностью кастомизации пространств имён и названия класса драйвера.
- Добавлено окно «О драйвере» в окне настроек драйвера.
- Исправлен порядок загрузки драйвером дополнительных библиотек — теперь в первую очередь поиск производится по пути, указанном в LIBFPTR_SETTING_LIBRARY_PATH.
- Примеры скриптов драйвера модифицированы так, чтобы не зависеть от внутренних скриптов драйвера.
- Добавлена возможность управлять пользовательскими настройками ККТ версий 5.X, о которых драйвер не знает, через скрипт settings.js.
- В скриптовый движок добавлена возможность приостановить процесс выполнения с помощью метода sleep().
- В состав включен OPOS-драйвер версии 1.14.4.
- В состав включен JPOS-драйвер версии 1.14.13.
- Тестовое приложение
- На страницу регистрации ККТ добавлена кнопка для расчёта РНМ.
- Добавлена возможность выгрузить сервисную информацию о драйвере и ККТ.
- Убрана возможность регистрации ККТ под ФФД 1.0.
- Добавлено окно «О программе».
- Web-сервер
- Первый выпуск нового Web-сервера, поддерживающего подключение к нескольким ККТ.
Исправленные ошибки:
- Драйвер ККТ
- Исправлено зависание драйвера при записи некорректных лицензий и слишком длинного клише при работе с ККТ версий 5.X.
- Исправлена ошибка потери связи при непредсказуемо долгом долгом выполнении команд на ККТ версий 5.X.
- Json-задания регистрации, перерегистрации и замены ФН больше не будут завершаться с ошибкой, если не удалось записать настройки связи с ОФД в автономном режиме.
- Для ККТ версий 5.X добавлена очистка картинок, хранящихся локально, при техобнулении.
- Исправлен возврат некорректных ошибок при выполнении json-задания регистрации под ФФД 1.1.
- В python-обёртке исправлена передача в setParam() параметра типа bool и добавлена обработка типа bytes.
- Исправлено некорректное поведение драйвера при перенастройки его с помощью метода setSettings(), когда соединение уже установлено. В документации уточнены нюансы поведения драйвера в этой ситуации.