Многие пользователи после обновления конфигураций 1С:ERP, Комплексная автоматизация (КА) или Управление торговлей (УТ) столкнулись с неприятной ситуацией. При попытке пробить чек из документа Приходный кассовый ордер (ПКО), даже если в нем указана конкретная накладная, в фискальном чеке вместо перечня номенклатуры выводится одна строка «Аванс» с общей суммой платежа. Это вызывает серьезное беспокойство у бухгалтерии, так как нарушает привычный цикл учета и требования к детализации расчетов. Разберем подробно, почему так происходит и какие действия необходимо предпринять для исправления ситуации.
Основная причина кроется в планомерном ужесточении контроля за соблюдением Формата фискальных данных (ФФД) со стороны разработчиков 1С. В последних релизах система стала более строго разделять понятия момента оплаты и момента передачи товара. С точки зрения налоговой логики, если система не может однозначно и гарантированно сопоставить текущее поступление денежных средств с отгрузкой конкретных товарных позиций в рамках одной транзакции, она обязана выставить признак способа расчета «Аванс».
Проанализируем техническую сторону проблемы. В системе существует зарегистрированная ошибка (например, №000064463), суть которой заключается в том, что механизм распределения оплат в документах Приходный кассовый ордер и Эквайринговая операция перестал корректно «подтягивать» детализацию по строкам номенклатуры из документа-основания (Реализация товаров и услуг), даже если связь между ними установлена. Система «видит» только задолженность по объекту расчетов в целом (Заказу или Договору), что и приводит к сворачиванию чека до одной строки с авансом.
Посмотрим на наиболее эффективный «обходной» путь, который рекомендуют специалисты и который уже успешно внедряется в работу многими компаниями. Если отгрузка товара и оплата происходят фактически одновременно или в рамках одного бизнес-процесса, попробуем изменить порядок действий:
Реализация товаров и услуг полностью оформлен и проведен.Реализация товаров и услуг.В этом случае алгоритм 1С обращается напрямую к табличной части Товары текущего документа реализации. Система видит конкретный перечень номенклатуры, их количество и цену, поэтому формирует чек с признаком «Полный расчет» и полной детализацией товаров, чего и требует бухгалтерия.
Выясним, как настройки ведения взаиморасчетов влияют на формирование чека. Проблема с «Авансом» чаще всего проявляется в тех базах, где выбран способ ведения расчетов «По заказам» или «По договорам». В этих случаях Приходный кассовый ордер закрывает общую задолженность по объекту, и связь с конкретной накладной для подсистемы печати чеков становится «размытой».
Рассмотрим рекомендации по настройке:
Поскольку ситуация признана разработчиками 1С как ошибочная, для многих релизов (например, ветки 2.5.12 и 2.5.15 для ERP и КА) выпускаются оперативные исправления — патчи. Проанализируем, как проверить их наличие в вашей программе:
Если вы планируете исследовать проблему в коде, обратите внимание на то, как заполняется структура данных, передаваемая в модуль печати чеков. В типовых конфигурациях за это отвечают механизмы общего модуля МенеджерОборудованияВызовСервера и процедуры обработки расшифровки платежа в модуле менеджера документа ПриходныйКассовыйОрдер.
Проанализируем пример того, как система определяет состав чека (упрощенно):
// В логике формирования чека система проверяет заполнение объекта расчетов
Если ЗначениеЗаполнено(ОбъектРасчетов) И ТипЗнч(ОбъектРасчетов) = Тип("ДокументСсылка.РеализацияТоваровУслуг") Тогда
// Пытаемся получить состав товаров из реализации
ДанныеЧека = СформироватьСоставПоРеализации(ОбъектРасчетов);
Иначе
// Если объект — договор или заказ без жесткой привязки, выводится Аванс
ДанныеЧека = СформироватьЧекНаАванс(СуммаДокумента);
КонецЕсли;
Важно понимать, что если в ПризнакСпособаРасчета документа ПКО (который может быть скрыт или доступен на вкладке «Дополнительно») установлено значение Аванс, то система проигнорирует список товаров, даже если он теоретически мог быть получен из основания.
Разберем важный методологический момент. В оптовой торговле часто встречается схема, когда оплата поступает раньше отгрузки. В этом случае печать чека на «Аванс» из ПКО является единственно верным действием согласно ФНС. После того как товар будет фактически отгружен, необходимо пробить второй чек из документа Реализация товаров и услуг с признаком способа расчета «Зачет аванса». Именно к этой двухэтапной схеме разработчики 1С пытаются привести пользователей, автоматизируя контроль за событиями оплаты и отгрузки.
Резюмируем: если вам нужен один чек на «Полную оплату» со списком товаров, убедитесь, что реализация проведена раньше или одновременно с ПКО, и печатайте чек непосредственно из формы Реализации товаров и услуг. Если же это невозможно из-за внутренних регламентов, ожидайте или устанавливайте официальный патч от 1С для восстановления работы печати из ПКО.