Как вывести дополнительные свойства в универсальном отчете 1С:Управление торговлей

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

При настройке типовых отчетов на базе универсального отчета (построенных с использованием механизма ПостроительОтчета в конфигурациях с обычными формами, таких как «Управление торговлей 10.3» или «Комплексная автоматизация 1.1») пользователи часто включают опцию Использовать свойства и категории. Однако после установки соответствующего флага в перечне доступных полей появляются только поля вида Наименование (Категории), тогда как добавленные свойства объектов в общем списке первого уровня отсутствуют. Разберем механику работы этого механизма, выясним причину такого поведения и пошагово настроим группировку по свойствам.

В чем разница между свойствами и категориями в структуре отчета

Рассмотрим, как платформа и типовой функционал обрабатывают данные механизмы:

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

Пошаговый выбор свойства для группировки или отбора

Разберем по шагам, как добраться до нужного свойства контрагента в отчете (например, в «Ведомости по расчетам с контрагентами»):

  1. Откроем форму отчета и перейдем по кнопке Настройка.
  2. Убедимся, что на панели настройки взведен флаг Использовать свойства и категории.
  3. Перейдем на закладку Группировки строк (или Отбор, если требуется фильтрация).
  4. Нажмем кнопку добавления нового поля или дважды кликнем по строке выбора измерения.
  5. В открывшемся дереве доступных полей найдем измерение Контрагент.
  6. Раскроем ветку Контрагент, нажав на значок плюса (раскрытие реквизитов ссылки).
  7. Внутри развернутого списка найдем созданное дополнительное свойство (оно будет отображаться с наименованием, заданным в плане видов характеристик СвойстваОбъектов).
  8. Выберем найденное свойство двойным щелчком и сформируем отчет.

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

Что делать, если свойство не появилось внутри реквизитов объекта

Проанализируем ситуации, при которых даже внутри развернутой ветки объекта свойство отсутствует:

  1. Проверка назначения свойства: Откроем план видов характеристик СвойстваОбъектов и найдем наше свойство. На закладке Назначение свойства должен быть явно указан справочник Контрагенты (или конкретная группа справочника, в которую входит нужный элемент). Если свойство назначено, например, на Договоры контрагентов, то искать его нужно внутри раскрытой ветки договора, а не контрагента.
  2. Кэширование структуры полей отчетом: Универсальный отчет считывает схему доступных полей при первичном открытии формы. Если свойство было создано в системе в тот момент, когда отчет уже был открыт на рабочем столе, динамическое дерево не обновится автоматически. Закроем отчет полностью и откроем его заново.
  3. Наличие записей в регистре: В типовых алгоритмах построения динамических запросов выборка свойств может опираться на фактические данные в регистре сведений ЗначенияСвойствОбъектов. Убедимся, что хотя бы для одного контрагента из информационной базы это свойство уже задано и сохранено.
  4. Тип данных поля в нестандартном отчете: Если отчет был доработан программистом, проверим текст запроса. Свойства раскрываются только для полей типа СправочникСсылка. Если поле контрагента было выгружено в запрос как строка (например, строковое наименование или код), раскрыть подчиненные свойства стандартным построителем невозможно.

Особенности производительности и группировка пустых значений

Рассмотрим технические нюансы, с которыми можно столкнуться при использовании свойств:

  1. Нагрузка на базу данных: При активации флага использования свойств к базовому запросу отчета динамически подключаются левые соединения к регистру сведений ЗначенияСвойствОбъектов. На больших информационных базах в регистрах с миллионами записей (например, регистр накопления ВзаиморасчетыСКонтрагентами) это может приводить к заметному падению скорости формирования отчета.
  2. Незаполненные значения: Если свойство заполнено не у всех контрагентов, участвующих в выборке, в сформированном отчете появится отдельная строка группировки с текстом <Не указано>, объединяющая всех контрагентов без этого реквизита.
← На главную