При обновлении конфигурации «Управление торговлей» с версии 11.4 на 11.5 многие специалисты сталкиваются с неприятной ситуацией: при закрытии смены или ручном переформировании документа ОтчетОРозничныхПродажах (ОоРП) в него попадают не все чеки ККМ. Проблема может носить выборочный характер — например, теряется около 10% позиций, что приводит к расхождению итогов в печатных формах и данных управленческого учета. Особенно часто это проявляется в компаниях, оказывающих сопутствующие услуги, такие как колеровка краски или упаковка. Чтобы локализовать проблему, полезно провести предварительный анализ конфигурации и расширений на наличие ошибок, которые могли возникнуть в процессе миграции данных.
В этой статье мы подробно разберем причины такого поведения системы, проанализируем внутренние механизмы УТ 11.5 и выясним, как провести диагностику и исправить ошибки заполнения.
Разберем первопричину: начиная с версии 11.5, фирма «1С» существенно переработала механизмы розничных продаж. В отличие от старых версий, где ОоРП зачастую просто собирал данные напрямую из документов ЧекККМ, новая архитектура стала более зависимой от движений по регистрам накопления. Рассмотрим основные факторы, которые могут блокировать попадание данных в отчет:
ОтчетОРозничныхПродажах. Если вы пытаетесь перезаполнить один существующий документ, он подтянет только те чеки, СНО которых совпадает с реквизитом в шапке документа.Пробит. Если из-за сбоя оборудования чек физически вылез из кассы, но в базе остался в статусе Ошибка или Передан в ККТ, автоматическое заполнение его проигнорирует.Проанализируем ситуацию с услугами, имеющими низкую стоимость (например, колеровка за 1 рубль). В УТ 11.5 работа с бонусами может быть настроена двумя способами: как скидка или как вид оплаты. Рассмотрим, как это влияет на заполнение ОоРП:
Бонусы как скидка: Если клиент оплачивает услугу бонусами, система распределяет эту «скидку» по строкам чека. Для услуги стоимостью 1 рубль применение даже небольшого количества бонусов может привести к тому, что после округления чистая цена реализации станет нулевой. Алгоритм заполнения ОтчетОРозничныхПродажах зачастую настроен на исключение строк с нулевой или отрицательной суммой. Именно здесь могут теряться те самые 10% документов, о которых часто сообщают пользователи.
Бонусы как оплата: В этом случае сумма продаж остается полной, но данные должны отразиться на вкладке Оплата платежными картами и иными способами. Несоответствие настроек бонусной программы и алгоритма заполнения отчета — типовая причина расхождения итогов прописью в печатной форме. В подобных случаях важно наладить сквозной контроль оплаты наличными и эквайринга по организациям,
Выясним причину ошибки на уровне программного кода. Основная логика сбора данных сосредоточена в процедуре РозничныеПродажи.ЗаполнитьОтчетОРозничныхПродажах. Для качественного анализа нам потребуется отладка, но как её выполнить, если касса подключена на рабочем месте кассира?
Воспользуемся современным эмулятором. Старые 32-битные эмуляторы больше не актуальны для современных 64-битных серверов и систем. Рекомендуем использовать «Драйвер ККТ Учебный для 1С:БПО 3.X NativeAPI х64». Рассмотрим шаги для настройки окружения:
Если вы хотите быстро найти «потерянные» строки без эмулятора, используйте Консоль запросов. Вам нужно извлечь основной запрос из функции заполнения. Рассмотрим пример структуры запроса (упрощенно), на который стоит обратить внимание:
ВЫБРАТЬ
Чеки.Номенклатура,
Чеки.Количество,
Чеки.Сумма,
Чеки.Ссылка.СистемаНалогообложения
ИЗ
Документ.ЧекККМ.Товары КАК Чеки
ГДЕ
Чеки.Ссылка.КассоваяСмена = &КассоваяСмена
И Чеки.Ссылка.Статус = ЗНАЧЕНИЕ(Перечисление.СтатусыЧековККМ.Пробит)
И Чеки.Ссылка.СистемаНалогообложения = &ВыбраннаяСНО
Проверьте, не отсекаются ли позиции из-за ВНУТРЕННЕЕ СОЕДИНЕНИЕ с таблицами серий или характеристик. Если для услуги «Колеровка» ошибочно включен учет по сериям, но они не заполнены в чеках, такие строки выпадут из итогового отчета.
Если вы обнаружили, что Отчет о розничных продажах заполняется неверно, выполните следующие действия:
Пробит. Если есть «зависшие» чеки, их нужно либо аннулировать, либо допробить.Услуга. Проанализируйте настройки распределения продаж: если вы используете сторонних исполнителей, может потребоваться загрузка данных из чеков самозанятых для детального отражения таких операций.Заполнить — По чекам ККМ. Если данные не появились, значит, они отсекаются на уровне запроса из-за несоответствия параметров (СНО, склад, организация).СуммаДокумента.Рассмотрим подробнее ситуацию с «Итогом прописью». Если суммы по строкам верные, а итог в подвале расходится — это признак того, что сумма документа в шапке не была пересчитана. В 1С СуммаДокумента — это отдельный реквизит. Попробуйте программно или вручную (через изменение количества и возврат обратно) инициировать пересчет итогов документа и его перезапись.
Используя данные методы анализа, мы можем локализовать проблему: либо это архитектурная особенность распределения по СНО в УТ 11.5, либо ошибка данных в конкретных чеках, связанная с округлением бонусных скидок.