Поделиться через


Создание групп рекурсивной иерархии (службы Reporting Services)

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

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

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

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

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

Дополнительные сведения см. в разделе Как создать группу рекурсивной иерархии.

Статистические функции, поддерживающие рекурсию

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