Как в УТ 11 добавить группировки по менеджеру, подразделению и товарам в отчет «Ведомость расчетов с клиентами»?

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

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

Почему поле «Регистратор» отображается без свойств в СКД

Выясним причину поведения поля Регистратор в Системе компоновки данных. Стандартное поле Регистратор имеет составной ссылочный тип данных, объединяющий десятки документов конфигурации (заказы, реализации, платежные поручения, корректировки долга и т. д.). Поскольку набор реквизитов у разных видов документов различается, платформа 1С не может автоматически развернуть список свойств через «плюс» в режиме пользователя. Для извлечения конкретных реквизитов из регистратора в СКД требуется программно ограничить тип с помощью функции ВЫРАЗИТЬ или использовать вычисляемые поля с конструкцией ВЫБОР.

Настройка группировок по менеджеру и подразделению типовыми средствами

Рассмотрим, как вывести менеджера и подразделение без доработки конфигурации. Архитектура взаиморасчетов в УТ 11 опирается на регистры накопления РасчетыСКлиентами и РасчетыСКлиентамиПоСрокам. Измерений менеджера и подразделения в них нет, но они хранятся в связанных объектах. Применим следующие подходы:

  1. Группировка через объект расчетов: если в договоре или соглашении с клиентом детализация взаиморасчетов ведется по документам («По заказам» или «По накладным»), то реквизит ОбъектРасчетов содержит прямую ссылку на документ ЗаказКлиента или РеализацияТоваровУслуг. В окне «Изменить вариант» отчета мы можем добавить группировки через точку:
    Объект расчетов.Менеджер
    Объект расчетов.Подразделение
  2. Группировка через партнера: в случаях, когда расчеты ведутся «По договорам» в целом или требуется зафиксировать ответственность конкретного сотрудника за клиента независимо от того, кто оформил конкретную накладную, используем путь:
    Клиент.Основной менеджер

В чем сложность учета задолженности в разрезе товаров

Проанализируем ситуацию с дебиторской задолженностью по номенклатуре. В типовой архитектуре 1С дебиторская задолженность — это сугубо денежная (суммовая) величина. Оплата от клиента поступает по объекту расчетов или расчетному документу в целом без разбивки по конкретным строкам товарной части. Платежное поручение или приходный кассовый ордер физически не содержат номенклатуры. Поэтому остаток долга «по товару» в базе данных не хранится, и получить его простой группировкой в типовом отчете невозможно.

Тем не менее, если подобное требование выдвигается руководством или обусловлено условиями поставщиков (например, отслеживание дебиторки по конкретным брендам или SKU), задачу можно решить расчетными или организационными способами.

Способ 1. Расчетный отчет с пропорциональным распределением долга

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

  1. Получаем остаток долга по объекту расчетов из регистра РасчетыСКлиентами.Остатки.
  2. Получаем общую сумму реализации и строки ее табличной части Товары.
  3. Вычисляем коэффициент неоплаченного остатка: Коэффициент = ОстатокДолга / СуммаДокумента.
  4. Сумма задолженности по каждой номенклатурной позиции в накладной рассчитывается как произведение суммы строки на полученный коэффициент.

Способ 2. Приоритетное погашение задолженности по брендам или SKU

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

  1. Анализируем поступившие по накладной оплаты: Оплачено = СуммаДокумента - ОстатокДолга.
  2. Если целевой бренд имеет приоритет при погашении: поступившая оплата в первую очередь закрывает строки с товарами этого бренда. Если сумма оплаты превышает стоимость приоритетного товара, остаток долга по бренду равен 0, а непогашенная сумма относится на прочие товары.
  3. При обратной стратегии (погашение в последнюю очередь): оплата сначала списывает сумму неприоритетных позиций, и только затем закрывает ключевой бренд.

Посмотрим на пример логики вычисления остатка долга в запросе СКД при условии, что оплата в первую очередь закрывает товары ключевого бренда:


ВЫБОР
    // Если накладная полностью оплачена - долга нет
    КОГДА ОстатокПоНакладной <= 0 ТОГДА 0
    // Если оплата превышает стоимость приоритетного бренда - долг по бренду закрыт
    КОГДА (СуммаНакладной - ОстатокПоНакладной) >= СуммаПриоритетногоБренда ТОГДА 0
    // Если оплаты недостаточно для покрытия бренда - считаем остаток
    ИНАЧЕ СуммаПриоритетногоБренда - (СуммаНакладной - ОстатокПоНакладной)
КОНЕЦ

Способ 3. Организационное и методическое разделение расчетов

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

  1. Разделение накладных по группам товаров: оформление отгрузок разных товарных направлений или брендов отдельными документами РеализацияТоваровУслуг. При ведении расчетов с детализацией «По накладным» каждая реализация выступает отдельным объектом расчетов, что исключает смешивание долгов по разным товарам.
  2. Использование договоров и соглашений: открытие раздельных договоров или индивидуальных соглашений под конкретные бренды с установкой индивидуальных условий оплаты.
  3. Обособление по направлениям деятельности: при включенном сквозном финансовом учете по направлениям деятельности в настройках программы, расчеты с клиентами можно обособлять по соответствующим направлениям бизнеса, сопоставленным с товарными категориями.
← На главную