При переходе на онлайн-кассы по требованиям 54-ФЗ многие пользователи конфигурации 1С:Розница сталкиваются с ситуацией, когда при нажатии в режиме РМК кнопки Отчет без гашения кассовый аппарат выдает ошибку: Ошибка вызова метода <ОбъектДрайвера.НапечататьОтчетБезГашения> с системным сообщением Метод объекта не обнаружен (НапечататьОтчетБезГашения). При этом через сервисную утилиту драйвера производителя (Атол или Штрих-М) X-отчет снимается штатно.
Разберем природу возникновения данной ошибки, выясним, почему функционал ведет себя именно так, и рассмотрим практические способы решения этой задачи.
Проанализируем технические и законодательные причины поведения системы:
НапечататьОтчетБезГашения из обязательного программного интерфейса драйверов.ОбъектДрайвера.НапечататьОтчетБезГашения. Поскольку загружаемый сертифицированный драйвер типа «ККТ с передачей данных» этой функции не содержит, платформа 1С генерирует исключение об отсутствии метода объекта.Рассмотрим основной и наиболее корректный путь устранения проблемы. В ранних версиях стандартов интеграции онлайн-касс метод формирования X-отчета действительно отсутствовал. Однако из-за многочисленных обращений пользователей разработчики 1С вернули команду снятия отчета без гашения в обновленные требования БПО.
Подключаемое оборудование.Тест устройства.Если конфигурация доработана и оперативное обновление типовой базы невозможно, организуем вызов нативной функции кассового аппарата напрямую, в обход ограничений БПО 1С. Для этого создадим внешнюю обработку или добавим команду, обращающуюся к COM-объекту драйвера.
Посмотрим на пример вызова прямого метода для драйвера Атол (ДТО 8/9/10):
// Пример прямого обращения к драйверу ККТ
ОбъектДрайвера = Новый COMОбъект("AddIn.Fptr10");
ОбъектДрайвера.open();
ОбъектДрайвера.setParam(ОбъектДрайвера.LIBFPTR_PARAM_REPORT_TYPE, ОбъектДрайвера.LIBFPTR_RT_X);
ОбъектДрайвера.report();
ОбъектДрайвера.close();
Для кассовых аппаратов Штрих-М логика аналогична: используется вызов метода PrintReportWithoutCleaning() через родной COM-объект драйвера AddIn.DrvFR.
Разберем обходной прием внутри учетной системы, который позволяет задействовать старый обработчик без изменения исходного программного кода конфигурации:
Использование = Истина.Если цель формирования X-отчета кассиром заключается исключительно в оперативной сверке фактической наличности и безналичных оплат в денежном ящике на текущий момент времени, проанализируем вариант создания учетного отчета.
ЧекККМ, Приходный кассовый ордер, Расходный кассовый ордер и Оплата от покупателя платежной картой за текущую смену.ПечатьТекста или НапечататьТекстовыйДокумент.Такой подход исключает расхождения при проверке промежуточных итогов и не требует сложных манипуляций с фискальным накопителем.