Как настроить подсчет уникальных клиентов в стандартном отчете по продажам 1С:УТ 11.5

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

При работе с программой 1С:Управление торговлей 11.5 менеджеры и аналитики часто сталкиваются с необходимостью не просто видеть сумму выручки, но и понимать количественные показатели клиентской базы. Типовой отчет "Продажи" по умолчанию ориентирован на товарные позиции и документы, что создает определенные сложности при попытке посчитать количество "живых" клиентов. Рассмотрим подробно, почему возникают ошибки в расчетах и как правильно настроить отчет, чтобы получить корректные цифры.

Анализируем причину неверного подсчета клиентов

Типовые отчеты по продажам в УТ 11.5 строятся на данных регистра накопления ВыручкаИСебестоимостьПродаж. Особенность этого регистра заключается в высокой степени детализации: каждая строка отчета соответствует определенной номенклатурной позиции в конкретном документе (Заказ или Реализация).

Если мы попытаемся применить простую функцию Количество к полю Клиент, программа просто просуммирует все записи в выборке. Проанализируем ситуацию на примере: если один клиент приобрел 10 различных товаров в рамках пяти заказов, стандартная функция подсчета выдаст результат 10 (по количеству строк с товарами) или 5 (по количеству документов), в то время как фактический клиент — всего один. Именно поэтому у пользователей часто возникают ситуации, когда вместо ожидаемых 17 клиентов отчет показывает 148 и более.

Способ 1. Использование системного поля «Номер по порядку»

Это самый простой способ визуально пронумеровать строки, если отчет сгруппирован по клиентам. Рассмотрим, как это реализовать через пользовательские настройки:

  1. Откроем отчет "Продажи" и перейдем в меню Настройки.
  2. Переключим вид настроек на Расширенный.
  3. Перейдем на вкладку Поля и сортировки.
  4. Нажмем кнопку Добавить и найдем в списке доступных полей папку Системные поля.
  5. Выберем поле № п/п (номер по порядку).

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

Способ 2. Создание пользовательского поля-выражения (Рекомендуемый)

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

  1. В окне настроек отчета нажмем Еще — Изменить вариант.
  2. В открывшемся окне перейдем на вкладку Пользовательские поля.
  3. Нажмем Добавить и выберем Новое поле-выражение.
  4. Зададим заголовок поля, например: Кол-во уникальных клиентов.
  5. В поле Выражение детальных записей введем: Выбор Когда КупленоКоличество > 0 Тогда 1 Иначе 0 Конец
  6. В поле Выражение итогов пропишем ключевую формулу: Количество(Различные Клиент)

Функция Количество(Различные ...) игнорирует дубликаты внутри заданной группировки. Таким образом, даже если клиент встречается в отчете сотни раз, в итог он попадет как единица.

Способ 3. Настройка ресурсов для подсчета по группировкам

Если вы хотите видеть количество клиентов не только в общем итоге, но и в разрезе дополнительных реквизитов (например, по Источникам информации, о которых упоминал автор темы), нужно правильно настроить расчет ресурсов.

Разберем ситуацию: менеджер заводит доп. реквизит "Источник" (Реклама, ТВ, Рекомендация). Чтобы отчет корректно считал клиентов по каждому источнику, выполним следующие действия:

  1. В режиме изменения варианта отчета перейдем на вкладку Ресурсы.
  2. Добавим поле Клиент в список ресурсов.
  3. В колонке Выражение укажем: Количество(Различные Клиент).
  4. В колонке Рассчитывать по... выберем те группировки, где этот подсчет необходим (например, группировка по "Источнику информации" или "Менеджеру").

Обратите внимание: если одно и то же доверенное лицо или контрагент пришел к вам сначала из "ТВ", а потом по "Рекламе" (и это зафиксировано в разных заказах), при группировке по источникам он будет посчитан в каждой группе. Однако в Общем итоге по всему отчету он все равно отобразится как 1 клиент, благодаря оператору Различные.

Дополнительные возможности: Вычисляемые поля

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

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

Сумма(ВычислитьВыражениеСГруппировкойМассив("Максимум(1)", "Клиент"))

Данная конструкция работает по следующему алгоритму:

Этот метод считается наиболее отказоустойчивым при работе с очень сложными структурами отчетов, где присутствуют и характеристики, и доп. реквизиты, и несколько уровней вложенности.

Резюме

Для реализации корректного подсчета клиентов в 1С:УТ 11.5 не обязательно привлекать программиста. Достаточно освоить инструмент Изменить вариант и научиться использовать агрегатную функцию Количество(Различные ...). Помните, что ключевым моментом является настройка поля именно как Ресурса, так как только ресурсы позволяют получать суммируемые итоги в иерархических отчетах СКД.

← На главную