Ситуация, когда касса Атол 90Ф продолжает печатать чеки, но перестает возвращать в 1С фискальные данные (номер документа, ФПД), является довольно распространенной при работе через веб-сервер. В этой статье мы разберем по шагам, как выявить причину сбоя и какие инструменты помогут восстановить корректную работу интеграции.
Первым делом необходимо проверить, что именно «видит» веб-сервер при отправке команды на печать. Веб-сервер Атол хранит результаты своих операций в базе данных SQLite. Мы рекомендуем воспользоваться любым просмотрщиком для этой СУБД, чтобы открыть файл базы данных веб-сервера.
Нас интересуют две основные таблицы: json_tasks и json_results. В таблице json_results содержатся ответы от ККТ. Ищите записи, где в поле ответа присутствуют ошибки (например, «Не поддерживается в данной версии») или где фискальные параметры, такие как fiscalDocumentNumber, имеют значение 0.
Если при каждой попытке печати вы видите ответ:
{"fiscalParams":{"fiscalDocumentDateTime":"","fiscalDocumentNumber":0,"fiscalDocumentSign":"","fiscalReceiptNumber":14,"fnNumber":"0000000000000000000000000000","fnsUrl":"nalog.ru","registrationNumber":"00000000000000000","shiftNumber":205,"total":0.0},"warnings":null}
Это означает, что запрос от 1С был успешно принят веб-сервером, но сама касса либо не ответила на фискализацию корректно, либо вернула неполный пакет данных. Это важный сигнал для дальнейшей проверки «железа».
Чтобы понять, что именно происходит на низком уровне обмена данными между драйвером DTO и ККТ, необходимо настроить подробные логи. По умолчанию веб-сервер Атол может скрывать детали обмена, что затрудняет поиск ошибки.
Для настройки логирования вам потребуется отредактировать файлы settings.json и log4j2.properties, которые обычно находятся в папке ProgramData/Atol. Установите уровень логирования в состояние DEBUG или TRACE.
После включения расширенного лога мы сможем увидеть:
Если логи показывают, что касса не возвращает параметры фискализации, необходимо исключить проблемы с самим устройством. Рассмотрим, что нужно проверить:
Вспомним, что использование старых прошивок (до 2020 года) вместе с современными версиями драйверов (10.x) часто приводит к конфликтам. Если веб-сервер ожидает от кассы ответа в формате, который старая прошивка не поддерживает, возникнет ошибка 11.
Рекомендуемые действия по обновлению:
Если диагностика подтвердила, что касса исправна, но обмен данными некорректен, разберем возможность обновления прошивки. Обновление до актуальной версии позволяет кассе «понимать» новые команды драйвера и корректно формировать структуры ответов для веб-сервера. Это критический шаг для систем, работающих с ФФД 1.0.5 и выше, так как структура пакета данных в современных версиях DTO была существенно переработана.
Проанализировав эти этапы, вы сможете локализовать проблему: находится ли она на стороне базы данных веб-сервера, в устаревшем ПО ККТ или в физическом выходе из строя фискального накопителя.