Почему не создается отчет о розничных продажах при закрытии смены в 1С:Розница

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

После обновления конфигурации «1С:Розница» пользователи могут столкнуться с ситуацией, когда при закрытии кассовой смены ККТ успешно печатает Z-отчет, но в самой программе не формируется документ «Отчет о розничных продажах» и не выполняется автоматическая выемка денежных средств. Рассмотрим причины возникновения этой проблемы и пошагово разберем способы ее исправления.

Анализ причин сбоя при закрытии смены

Проанализируем механику работы процедур закрытия смены в программах 1С. Документ Отчет о розничных продажах создается автоматически в конце смены на основании пробитых документов ЧекККМ и сведений о поступивших оплатах (включая прочую выручку по кассовым ордерам). Процесс состоит из нескольких транзакционных шагов:

  1. Проверка наличия непробитых или отложенных чеков.
  2. Запрос к фискальному регистратору на снятие Z-отчета.
  3. Формирование и проведение документа Отчет о розничных продажах.
  4. Архивация розничных чеков и создание документа выемки.

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

Для выяснения конкретной причины обратимся к журналу регистрации (раздел Администрирование — Обслуживание — Журнал регистрации). Часто при возникновении подобной проблемы фиксируется следующая ошибка:

{Обработка.ЗакрытиеКассовойСмены.Форма.ПроверкаНепробитыхЧеков.Форма(1146)}: Поле объекта не обнаружено (КассаККМ)

Эта ошибка вызвана зарегистрированным дефектом типовых релизов (ошибка 000035232 на портале поддержки 1С). При проверке непробитых чеков система пытается обратиться к свойству КассаККМ структуры контекста, которое отсутствует в определенной ветке выполнения кода, из-за чего вся процедура закрытия смены завершается аварийно.

Особенности учета продаж через Реализацию и ПКО

Разберем еще один важный нюанс учета, с которым часто путаются пользователи. Документы Реализация товаров и услуг и Приходный кассовый ордер (ПКО) предназначены для расчетов с контрагентами. Номенклатурные позиции из документооборота реализаций не попадают в товарную часть документа Отчет о розничных продажах — там аккумулируются только розничные чеки (документы Чек ККМ).

Если чеки через РМК не пробивались, а оплаты принимались исключительно по ПКО, в Отчет о розничных продажах может попадать только итоговая сумма в раздел прочей выручки (если это предусмотрено настройками). Если же сбоит алгоритм обработки данных смены, то документ не создастся вовсе.

Пошаговые способы решения проблемы

Способ 1. Установка исправляющего патча или доработка через расширение

Поскольку ошибка Поле объекта не обнаружено (КассаККМ) является известным багом релиза, правильным техническим решением будет:

  1. Установить официальный патч (исправление .cfe) через раздел Администрирование — Обслуживание — Обновление программы — Исправления (патчи).
  2. Если конфигурация находится на доработке, внести проверку наличия свойства в процедуру проверки чеков с помощью расширения конфигурации:

Если СтруктураПараметров.Свойство("КассаККМ") Тогда
    КассаККМ = СтруктураПараметров.КассаККМ;
Иначе
    КассаККМ = Объект.КассаККМ;
КонецЕсли;

Способ 2. Ручное формирование отчета из документа «Кассовая смена»

Если смена на ККТ уже закрыта, а отчет в базе не сформировался, проанализируем порядок восстановления данных без повторной печати Z-отчета:

  1. Перейдем в раздел Продажи — Кассовые смены.
  2. Найдем и откроем документ Кассовая смена за дату, когда произошел сбой (он будет находиться в статусе «Закрыта»).
  3. Нажмем кнопку Сформировать отчет о розничных продажах в шапке документа.
  4. Проверим созданный документ, убедимся в корректности заполнения всех табличных частей и проведем его.

Способ 3. Очистка кэша платформы 1С

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

  1. Завершим работу всех сеансов пользователей в базе.
  2. Удалим информационную базу из списка запуска 1С и добавим ее повторно (это принудительно обновит кэш физического расположения).
  3. Либо очистим каталог временных файлов платформы (папки %LocalAppData%\1C\1cv8 и %AppData%\1C\1cv8).

Способ 4. Проверка работы торгового оборудования и драйвера ККТ

Если при попытке пробития чеков из документов реализации или РМК программа 1С зависает, необходимо проверить физическое подключение кассового аппарата (например, Viki Print):

  1. Обновим драйвер подключаемого оборудования в разделе Администрирование — Подключаемое оборудование до версии, рекомендованной разработчиками текущего релиза 1С.
  2. В диспетчере устройств Windows для виртуального COM-порта кассы откроем свойства и во вкладке Управление электропитанием снимем флаг Разрешить отключение этого устройства для экономии энергии.
  3. В настройках драйвера ККТ увеличим тайм-аут ожидания ответа от устройства и ОФД.
← На главную