Как настроить выгрузку розничных продаж с предоплатой при обмене 1С:УНФ 3.0 и 1С:Бухгалтерия 3.0

Программист 1С v8.3 (Управляемые формы) Управленческий учет Торговля и дистрибуция
← На главную

При работе в связке 1С:Управление нашей фирмой 3.0 и 1С:Бухгалтерия предприятия 3.0 пользователи часто сталкиваются с ситуацией, когда розничные продажи, оформленные через Чек ККМ с зачетом аванса, "теряются" при обмене. В этой статье мы подробно разберем, почему документы не попадают в Отчет о розничных продажах, как работает механизм трансформации данных и как исправить техническую ошибку со статусами документов, которая блокирует синхронизацию.

Разберем логику трансформации документов при обмене

Первое, что нам необходимо понять: в актуальных версиях программ 1С реализована сложная логика миграции розничных документов. Один и тот же вид документа в УНФ — Чек ККМ — может превращаться в разные документы в Бухгалтерии в зависимости от условий оплаты. Проанализируем эти варианты:

  1. Обычная розничная продажа: Если покупатель оплачивает товар сразу (наличными или картой) без предварительных авансов, такие чеки в УНФ за день консолидируются и прилетают в БП в виде одного документа Отчет о розничных продажах.
  2. Продажа с предоплатой (зачетом аванса): Если в чеке фигурирует зачет ранее внесенного аванса, типовой Отчет о розничных продажах в БП не может быть использован, так как он не поддерживает сложную аналитику расчетов с контрагентами по авансам в разрезе конкретных чеков. В этом случае система создает в БП документ Реализация (акт, накладная, УПД) с видом операции Розничная продажа.

Таким образом, если вы не видите товаров в Отчете о розничных продажах в БП, первым делом проверьте список документов Реализация товаров и услуг. Скорее всего, ваши продажи "приехали" именно туда.

Проанализируем цепочку документов для корректного зачета

Чтобы в Бухгалтерии корректно отразился зачет аванса и выручка, из УНФ должна мигрировать полная цепочка данных. Рассмотрим, как это выглядит на практике:

Если цепочка разрывается, например, аванс пришел как Поступление на счет, а реализация не видит этот платеж, проверьте настройки Способы зачета предоплаты в узле обмена. Рекомендуется использовать автоматический зачет, чтобы система сама сопоставляла платежи и отгрузки по ФИО покупателя или договору.

Выясним причину ошибки: проблема реквизита Статус

Часто документы не попадают в БП вовсе. Это происходит из-за программной ошибки в УНФ 3.0, связанной с механизмом регистрации изменений. Рассмотрим технические подробности:

В правилах регистрации объектов для Чек ККМ прописано жесткое условие в обработчике ПередОбработкой:


Если Объект.Статус <> Перечисления.СтатусыЧековККМ.Пробит Тогда
    Отказ = Истина;
КонецЕсли;

Проблема заключается в том, что в форме списка чеков УНФ статус "Пробит" вычисляется динамически на основании наличия номера чека и фискальных признаков. Однако в самой базе данных в реквизите Статус может остаться значение Товар зарезервирован. Это часто происходит, если документ был проведен интерактивно после того, как он уже был пробит на кассе. Визуально в журнале мы видим статус "Пробит", но для обмена этот документ считается "непробитым" и игнорируется.

Как исправить статус чеков для успешной выгрузки

Для решения этой проблемы нам необходимо привести значение реквизита в соответствие с реальностью. Рассмотрим два способа решения.

Способ 1: Использование обработки "Групповое изменение реквизитов"

Это наиболее быстрый способ без написания кода. Выполним следующие действия:

  1. Откроем обработку Групповое изменение реквизитов (в разделе Администрирование - Обслуживание).
  2. Выберем тип объекта Чек ККМ.
  3. Добавим фильтр по документам, которые не улетают в обмен (например, по дате или конкретному списку).
  4. Найдем реквизит Статус и установим ему значение Пробит.
  5. Нажмем "Изменить реквизиты". После этого документы будут зарегистрированы к обмену автоматически (если включена типовая регистрация по изменению).

Способ 2: Программная регистрация объектов

Если вы программист и вам нужно оперативно протолкнуть документы в обмен, можно воспользоваться кодом для принудительной регистрации изменений в узле обмена. Проанализируем пример кода:


УзелОбмена = ПланыОбмена.СинхронизацияДанныхЧерезУниверсальныйФормат.НайтиПоНаименованию("Бухгалтерия предприятия");
ВыборкаЧеков = Документы.ЧекККМ.Выбрать(ДатаНачала, ДатаКонца);

Пока ВыборкаЧеков.Следующий() Цикл
    // Проверяем, что чек реально пробит в фискальном регистраторе
    Если ЗначениеЗаполнено(ВыборкаЧеков.НомерЧекаККМ) Тогда
        ПланыОбмена.ЗарегистрироватьИзменения(УзелОбмена, ВыборкаЧеков.Ссылка);
    КонецЕсли;
КонецЦикла;

Проверим настройки форматов обмена

Механизм выгрузки розничной предоплаты через документ Реализация корректно функционирует только при использовании современного формата Enterprise Data (ED). Если вы используете старые правила обмена (через формат .xml и обработку "Обмен данными"), то чеки с зачетом аванса могут попросту игнорироваться или приводить к ошибкам в БП.

Также обратите внимание на тип склада. В Бухгалтерии документ Реализация требует наличия склада с типом Оптовый или Розничный магазин. Если в УНФ торговая точка настроена как НТТ (Неавтоматизированная торговая точка), то в БП могут возникнуть сложности с проведением документа реализации, так как учет в НТТ в бухгалтерии ведется специфическим образом (чаще всего суммовым учетом).

Подведем итоги проверки

Если у вас возникла проблема с обменом розницы и предоплаты, пройдите по следующему чек-листу:

Соблюдение этих правил и понимание логики трансформации документов позволит вам настроить бесперебойный обмен данными между управленческой и бухгалтерской базами, сохранив точность взаиморасчетов с покупателями.

← На главную