В процессе перехода на требования ФФД 1.1 и 1.2 многие пользователи столкнулись с тем, что при оформлении расчетов с контрагентами (ЮЛ или ИП) в чеках, пробитых из Приходного кассового ордера (ПКО), отсутствуют обязательные реквизиты: ИНН покупателя и его наименование. Давайте разберемся, почему так происходит и как с этим работать в конфигурации 1С:Комплексная автоматизация 2.4.
Рассмотрим архитектурные особенности подсистемы кассы. В конфигурациях уровня КА и ERP логика работы с фискальными устройствами выстраивалась с упором на документы отгрузки. Основным документом, который полноценно поддерживает передачу тегов 1227 (наименование покупателя) и 1228 (ИНН покупателя), является Реализация товаров и услуг.
При использовании Приходного кассового ордера система часто воспринимает его как документ учета движения денежных средств, а не как документ продажи с детализацией по номенклатуре. В модуле ДенежныеСредстваСервер, отвечающем за параметры фискализации, поля для передачи данных получателя зачастую оставались незаполненными, так как типовой алгоритм не всегда мог однозначно связать ПКО с заказом или реализацией, содержащей все необходимые параметры.
Если перед вами стоит задача обеспечить корректное формирование чека в соответствии с требованиями 54-ФЗ, проанализируем следующие варианты:
Это самый «чистый» путь с точки зрения обновлений 1С. Рассмотрим подробнее: вместо пробития чека из ПКО, оформляйте чек непосредственно из документа Реализация товаров и услуг. В этом случае типовой код 1С корректно заполняет структуру параметров для драйвера ККТ, включая данные о контрагенте и номенклатурном составе.
Если бизнес-процесс вашей компании предполагает прием наличных средств, рассмотрите возможность использования Чека ККМ. Этот документ архитектурно спроектирован для работы с фискальными накопителями и содержит все необходимые поля для передачи данных покупателя.
Если отказ от использования ПКО невозможен, придется внести изменения в серверный модуль. Нам необходимо вмешаться в процесс формирования параметров фискализации. Разберем шаги:
Вам потребуется расширение для модуля ДенежныеСредстваСервер. В процедуре заполнения параметров операции фискализации нужно принудительно дозаполнить структуру, если она пуста.
// Примерная логика дополнения параметров
Если ЗначениеЗаполнено(Контрагент) Тогда
ПараметрыОперации.Получатель = Контрагент.Наименование;
ПараметрыОперации.ПолучательИНН = Контрагент.ИНН;
КонецЕсли;
Важно помнить: при доработке кода необходимо учитывать, что драйвер оборудования должен поддерживать работу с ФФД 1.1 и выше. Если ККТ настроена на ФФД 1.05, передача этих тегов может быть проигнорирована самим фискальным накопителем.
Для понимания того, почему данные не передаются, рекомендуем выполнить следующие действия:
Заказ клиента как основание для ПКО, убедитесь, что в самом заказе контрагент выбран правильно.ПараметрыОперацииФискализацииЧека в отладчике. Именно этот объект является «транспортом» данных для ККТ. Если вы видите, что при вызове метода печати эти поля пусты, значит, проблема именно в программной логике заполнения этого объекта в текущем релизе 1С.Таким образом, для стабильной работы мы рекомендуем максимально придерживаться типовых процессов продаж 1С. В случае необходимости сложных доработок через расширения, всегда проводите тестирование на актуальной версии драйвера оборудования и при установленном ФФД 1.1+. Совместное использование Реализации товаров и услуг и ПКО как «технического» документа (без печати чека из него) является наиболее безопасной практикой для учета.