Примеры выражений групп (построитель отчетов 2.0)
В области данных можно группировать данные по одному полю или создавать более сложные выражения, определяющие данные, по которым выполняется группирование. Сложные выражения могут включать ссылки на несколько полей или параметров, условные инструкции или пользовательский код. При определении группы для области данных эти выражения добавляются к свойству Группировать. Дополнительные сведения см. в разделе Как добавить, переместить или удалить группу в области данных (построитель отчетов 2.0).
Чтобы выполнить слияние двух или нескольких групп, основанных на простых выражениях поля, добавьте каждое поле к списку выражений группы в определении группы.
Примеры выражений группы
В следующей таблице приведены примеры выражений группы, которые можно использовать для определения группы.
Описание |
Выражение |
---|---|
Группирование по полю Region. |
=Fields!Region.Value |
Группирование по фамилии и имени. |
=Fields!LastName.Value =Fields!FirstName.Value |
Группирование по первой букве фамилии. |
=Fields!LastName.Value.Substring(0,1) |
Группирование по параметру, основанному на выборе пользователя. В этом примере параметр GroupBy должен быть основан на списке допустимых значений, которые предоставляет допустимый вариант выбора для группирования. |
=Fields(Parameters!GroupBy.Value).Value |
Группирование по трем отдельным возрастным диапазонам: до 20, между 21 и 50, старше 50. |
=IIF(First(Fields!Age.Value)<21,"Under 21",(IIF(First(Fields!Age.Value)>=21 AND First(Fields!Age.Value)<=50,"Between 21 and 50","Over 50"))) |
Группирование по многим возрастным диапазонам. В этом примере показан пользовательский код, написанный на языке Visual Basic .NET, который возвращает строку, относящуюся к одному из следующих диапазонов: от 25 и младше, от 26 до 50, от 51 до 75, старше 75. |
=Code.GetRangeValueByAge(Fields!Age.Value) Пользовательский код: Function GetRangeValueByAge(ByVal age As Integer) As String Select Case age Case 0 To 25 GetRangeValueByByAge = "25 or Under" Case 26 To 50 GetRangeValueByByAge = "26 to 50" Case 51 to 75 GetRangeValueByByAge = "51 to 75" Case Else GetRangeValueByByAge = "Over 75" End Select Return GetRangeValueByByAge End Function |
Дополнительные сведения о пользовательском коде см. в разделе Использование в выражениях ссылок на пользовательский код (построитель отчетов 2.0).