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