Exemplos de expressões de grupo (Reporting Services)

Em uma região de dados, você pode agrupar dados por um único campo ou criar expressões mais complexas que identifiquem os dados nos quais deve ser feito o agrupamento. Expressões complexas incluem referências a vários campos ou parâmetros, instruções condicionais ou código personalizado. Quando você define um grupo para uma região de dados, você adiciona essas expressões às propriedades Group. Para obter mais informações, consulte Como adicionar ou excluir um grupo em uma região de dados (Reporting Services).

Para mesclar dois ou mais grupos baseados em expressões de campo simples, adicione cada campo à lista de expressões de grupo na definição do grupo.

Exemplos de expressões de grupo

A tabela a seguir fornece exemplos de expressões de grupo que podem ser usadas para definir um grupo.

Descrição

Expressão

Agrupar pelo campo Region.

=Fields!Region.Value

Agrupar por sobrenome e nome.

=Fields!LastName.Value

=Fields!FirstName.Value

Agrupar pela primeira letra do sobrenome.

=Fields!LastName.Value.Substring(0,1)

Agrupar pelo parâmetro, baseado na seleção do usuário.

Neste exemplo, o parâmetro GroupBy deve ser baseado em uma lista de valores disponíveis que fornece uma opção válida na qual deve ser feito o agrupamento.

=Fields(Parameters!GroupBy.Value).Value

Agrupar por três faixas etárias separadas:

"Menos de 21", "Entre 21 e 50" e "Mais de 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")))

Agrupar por muitas faixas etárias. Este exemplo mostra o código personalizado, escrito em Visual Basic .NET, que retorna uma cadeia para as seguintes faixas:

25 ou menos

26 a 50

51 a 75

Mais de 75

=Code.GetRangeValueByAge(Fields!Age.Value)

Código personalizado:

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

Para obter mais informações sobre código personalizado, consulte Usando referências de código personalizado em expressões (Reporting Services).