Система компоновки данных позволяет выводить в отчет записи заданного уровня иерархии в группировке. Для этого в режиме настройки отдельной группировки нужно задать отбор на уровень иерархии и указать в свойстве Применение, к каким записям будет применяться отбор. Возможны три варианта типа применения:
Для примера рассмотрим отчет, в котором выводится список номенклатуры вместе с уровнями иерархии (Уровень и Уровень в группе), которые в данном отчете идентичны (рис. 3.249).
Рис. 3.249. Результат отчета с разными уровнями иерархии
Мы видим, что группа товаров Электротовары имеет первый уровень иерархии, а записи в ней – второй уровень. Эта группа содержит вложенные группы Пылесосы, Телевизоры, Чайники второго уровня, записи в которых имеют третий уровень.
Изменим вариант отчета. В режиме настроек группировки Товар(Иерархия) создадим отбор на системное поле Уровень. Зададим Вид сравнения – Равно, Правое значение – 1, Применение – Только иерархия (рис. 3.250).
Рис. 3.250. Создание отбора в группировке по уровню иерархии
В результате в отчет в группе Электротовары выводятся записи только первого уровня, причем это условие будет применяться только к записям, имеющим иерархию (являющимся родительскими), рис. 3.251.
Рис. 3.251. Результат отчета
Изменим условие отбора, чтобы уровень был меньше трех и это условие применялось только к иерархическим записям. В результате мы увидим исходную таблицу, как будто никакого отбора не было (см. рис. 3.249), т. к. в ней изначально нет иерархических записей больше второго уровня (рис. 3.252).
Рис. 3.252. Создание отбора в группировке по уровню иерархии
Теперь изменим условие отбора, чтобы уровень был меньше трех и это условие применялось к иерархии вообще (Применение – После группировки или для иерархии), рис. 3.253.
Рис. 3.253. Создание отбора в группировке по уровню иерархии
В результате в отчете мы не увидим записей третьего уровня из группы Электротовары (рис. 3.254).
Рис. 3.254. Результат отчета
Теперь зададим условие, чтобы уровень был равен единице и это условие применялось к иерархии вообще (рис. 3.255).
Рис. 3.255. Создание отбора в группировке по уровню иерархии
В результате мы увидим в отчете только иерархические записи первого уровня (рис. 3.256).
Рис. 3.256. Результат отчета