Agrupar exemplos de expressões em relatórios paginados (Construtor de Relatórios)

Aplica-se a: SSRS (Construtor de Relatórios da Microsoft) Power BI Report Builder Report Designer no SQL Server Data Tools

Em uma região de dados em um relatório paginado, 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, confira Adicionar ou excluir um grupo em uma região de dados (Construtor de Relatórios e SSRS).

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.

Observação

Você pode criar e modificar arquivos de definição de relatório paginado (.rdl) no Construtor de Relatórios da Microsoft, Construtor de Relatórios do Power BI e no Designer de Relatórios no SQL Server Data Tools.

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 Expression
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