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

Область применения: Построитель отчетов (SSRS) Power BI конструктор отчетов построитель отчетов в SQL Server Data Tools

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

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

Примечание.

Создать и изменить определение для отчета на страницу (RDL-файл) можно с помощью построителя отчетов (Майкрософт), построителя отчетов Power BI и конструктора отчетов в SQL Server Data Tools.

Создание рекурсивных иерархий

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

Группа, которая определена как рекурсивная иерархия (то есть группа, которая использует свойство Parent), может иметь только одно выражение группы. Можно использовать функцию Level для дополнения текстового поля, чтобы выровнять имена служащих на основе их уровней в иерархии.

Дополнительные сведения см. в разделах Добавление или удаление группы в области данных (построитель отчетов и службы SSRS) и Создание группы рекурсивной иерархии (построитель отчетов и службы SSRS).

Агрегатные функции, поддерживающие рекурсию

Для вычисления сводных данных в рекурсивных иерархиях можно использовать агрегатные функции служб Reporting Services, принимающие параметр Recursive . Параметр Recursive поддерживают следующие функции: Sum, Avg, Count, CountDistinct, CountRows, Max, Min, StDev, StDevP, Sum, Varи VarP. Дополнительные сведения см. в статье Функции построителя отчетов — справочник по агрегатным функциям в отчетах с разбивкой на страницы (построитель отчетов).