DevExpress Reports v24.1 - новые функции выражения
DevExpress Reports v24.1 - новые функции выражения
Как вы, возможно, уже знаете, DevExpress Reports предлагает адаптированный вариант макета, который позволяет вам упорядочивать, формировать и организовывать данные наиболее подходящим образом. Одним из таких вариантов формирования данных является группировка. Вы можете упорядочивать данные во вложенных и многополевых группах в пределах полосы детализации табличного отчета. В цикле выпуска v24.1 представили несколько функций, которые позволяют вам получать индексы для различных элементов группы. Эти новые функции включают:
CurrentRowIndexInGroup()
— возвращает индекс текущей строки в группе.GroupIndex(level)
— находит строку родительской группы на указанном уровне вложенности и возвращает индекс этой строки.NextRowColumnValue(columnName)
— получает следующую строку и возвращает значение из указанного столбца.PrevRowColumnValue(columnName)
— получает предыдущую строку и возвращает значение из указанного столбца.
Групповая нумерация по индексу
В этом сценарии использования отчет, отображающий многоуровневый нумерованный список. Чтобы добиться этого, элементы управления отчетом будут использовать функции GroupIndex() и CurrentRowIndexInGroup() в своих выражениях привязки данных (для возврата индексов групп и строк).
Ячейки таблицы определяют следующие выражения привязки данных:
Группа «Название категории»:
GroupIndex(1) + 1
— отображает индексы групп корневого уровня.
Группа «Снятые с производства»:
GroupIndex(1) + 1 + '.' + (GroupIndex(0) + 1)
— добавляет групповые индексы второго уровня.
Детальная полоса:
GroupIndex(1) + 1 + '.' + (GroupIndex(0) + 1) + '.' + (CurrentRowIndexInGroup(0) + 1)
— добавляет индексы строк.
Изменение внешнего вида отдельных групп
В этом сценарии использования разные стили к группам в таблице, чтобы различать группы, когда заголовки связанных групп пусты.
Свойство таблицы StyleName
привязано к следующему выражению:
Iif(GroupIndex(0) %2 == 0, 'DetailData1', 'DetailData3_Odd')
Найдите последний ряд в группе
В этом примере выражение, чтобы выделить продукт с самыми низкими продажами по всему штату (по сравнению с ожидаемыми продажами).
Свойство таблицы Font.Bold
привязано к следующему выражению:
Iif(NextRowColumnValue('Product')!= [Product] OR [DataSource.IsLastRow], True, False)
Как вы можете видеть, выражение находит последнюю строку в группе и применяет к ней жирный стиль (свойство StylePriority.UseFont
имеет значение false
):
Бесплатные продукты DevExpress — получите свою копию сегодня
- DevExpress .NET App Security & Web API Service
- DevExpress .NET MAUI & Xamarin Controls
- DevExpress CodeRush for Visual Studio
- DevExpress .NET ORM Library (XPO)