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