Compartir a través de


Agrupación de ejemplos de expresiones en informes paginados (Generador de informes)

Se aplica a: Generador de informes de Microsoft (SSRS) Power BI Report Builder Diseñador de informes en SQL Server Data Tools

En una región de datos de un informe paginado, puede agrupar los datos por un solo campo o crear expresiones más complejas que identifiquen los datos por los que agrupar. Las expresiones complejas incluyen referencias a varios campos o parámetros, instrucciones condicionales o código personalizado. Al definir un grupo para una región de datos, debe agregar estas expresiones a las propiedades del Grupo . Para más información, consulte Incorporación o eliminación de un grupo en una región de datos (Generador de informes y SSRS).

Para combinar dos o más grupos basados en expresiones de campo simples, agregue cada campo a la lista de expresiones de grupo en la definición de grupo.

Nota

Puede crear y modificar los archivos de definición de informes paginados (.rdl) en el Generador de informes de Microsoft, en Power BI Report Builder y en el Diseñador de informes de SQL Server Data Tools.

Ejemplos de expresiones de grupo

En la siguiente tabla, se incluyen ejemplos de expresiones de grupo que se pueden usar para definir un grupo.

Descripción Expression
Agrupar por el campo Region . =Fields!Region.Value
Agrupar por apellidos y nombre. =Fields!LastName.Value

=Fields!FirstName.Value
Agrupar por la primera letra del apellido. =Fields!LastName.Value.Substring(0,1)
Agrupar por parámetro, en función de la selección del usuario.

En este ejemplo, el parámetro GroupBy debe estar basado en una lista de valores disponibles que proporcione una opción válida por la que agrupar.
=Fields(Parameters!GroupBy.Value).Value
Agrupar por tres intervalos de edad independientes:

"Under 21", "Between 21 and 50" y "Over 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 varios intervalos de edad. En este ejemplo se muestra código personalizado, escrito en Visual Basic .NET, que devuelve una cadena para los intervalos siguientes:

25 or Under

26 to 50

51 to 75

Over 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