Usar expresiones (Reporting Services)

En Reporting Services, las expresiones se usan durante la definición de informes para especificar o calcular valores para: parámetros, consultas, filtros, propiedades de elementos de informe, definiciones de ordenación y de grupos, propiedades de cuadros de texto, marcadores, mapas de documento, contenido de encabezados y pies de página dinámicos, imágenes, y definiciones de orígenes de datos dinámicas. En este tema, se proporcionan ejemplos de los muchos lugares en los que se pueden usar expresiones para modificar el contenido o el aspecto de un informe. Esta lista no es una lista completa. Para establecer una expresión para una propiedad, use un cuadro de diálogo que contenga el botón de expresión (fx) o una lista desplegable que muestre <Expresión...>.

Las expresiones se escriben en MicrosoftVisual Basic. Una expresión comienza por un signo igual (=) seguido de una combinación de referencias a colecciones integradas, como campos y parámetros de conjunto de datos, constantes, funciones y operadores.

Usar expresiones simples

Las expresiones simples contienen una referencia a un único campo de conjunto de datos, parámetro o campo integrado. Las expresiones simples aparecen en la superficie de diseño y en los cuadros de diálogo entre corchetes, por ejemplo, un campo de conjunto de datos aparece como [ProductID]. Este tipo de expresiones se crea automáticamente cuando se arrastra un campo desde un conjunto de datos hasta un cuadro de texto. Se crea un marcador de posición y la expresión define el valor subyacente. También puede escribir directamente las expresiones en una celda o en un cuadro de texto de la región de datos, tanto en la superficie de diseño como en un cuadro de diálogo (por ejemplo, [ProductID]).

En la tabla siguiente, se muestran ejemplos de cómo se pueden usar las expresiones simples. En la tabla se describe la funcionalidad, la propiedad que se va a establecer, el cuadro de diálogo que se usa normalmente para establecerla y el valor de la propiedad. Puede escribir la expresión simple directamente en la superficie de diseño, en un cuadro de diálogo o en el panel de propiedades, o puede modificarla en el cuadro de dialogo Expresión, tal y como lo haría con cualquier expresión.

Funcionalidad

Propiedad, contexto y cuadro de diálogo

Valor de la propiedad

Especificar un campo de conjunto de datos para mostrarlo en un cuadro de texto.

Propiedad Value de un marcador de posición dentro de un cuadro de texto. Use Propiedades del marcador de posición (cuadro de diálogo), General.

[Sales]

Valores agregados para un grupo.

Propiedad Value de un marcador de posición dentro de una fila asociada a un grupo de Tablix. Use Propiedades de cuadro de texto (cuadro de diálogo), General.

[Sum(Sales)]

Incluir un número de página.

Propiedad Value de un marcador de posición dentro de un cuadro de texto situado en un encabezado de página. Use Propiedades de cuadro de texto (cuadro de diálogo), General.

[&PageNumber]

Mostrar un valor de parámetro seleccionado.

Propiedad Value de un marcador de posición dentro de un cuadro de texto de la superficie de diseño. Use Propiedades de cuadro de texto (cuadro de diálogo), General.

[@SalesThreshold]

Especificar una definición de grupo para una región de datos.

Expresión de grupo del grupo de Tablix. Use Propiedades de grupo de Tablix (cuadro de diálogo), General.

[Category]

Excluir de una tabla un valor de campo específico.

Ecuación de filtro del Tablix. Use Propiedades de Tablix (cuadro de diálogo), Filtros.

Como tipo de datos, seleccione Integer.

[Quantity]

>

100

Incluir solo un valor específico para un filtro de grupo.

Ecuación de filtro del grupo de Tablix. Use Propiedades de grupo de Tablix (cuadro de diálogo), Filtros.

[Category]

=

Clothing

Excluir valores específicos de varios campos de un conjunto de datos.

Ecuación de filtro para un grupo de un Tablix. Use Propiedades de Tablix (cuadro de diálogo), Filtros.

=[Color]

<>

Red

=[Color]

<>

Blue

Especificar el criterio de ordenación en función de un campo existente en una tabla.

Expresión de ordenación del Tablix. Use Propiedades de Tablix (cuadro de diálogo), Ordenar.

[SizeSortOrder]

Vincular un parámetro de consulta a un parámetro de informe.

Colección de parámetros del conjunto de datos. Use Propiedades del conjunto de datos (cuadro de diálogo), Parámetros.

[@Category]

[@Category]

Pasar un parámetro de un informe principal a un subinforme.

Colección de parámetros del subinforme. Use Propiedades del subinforme (cuadro de diálogo), Parámetros.

[@Category]

[@Category]

Para obtener más ejemplos, vea Ejemplos de expresiones (Reporting Services).

Usar expresiones complejas

Las expresiones complejas pueden contener varias referencias integradas, operadores y llamadas a función, y aparecen en la superficie de diseño como <<Expr>>. Para ver o cambiar el texto de la expresión, debe abrir el cuadro de diálogo Expresión o escribir directamente en el panel Propiedades. En la tabla siguiente, se muestran las formas más habituales de usar una expresión compleja para mostrar u organizar datos o para cambiar el aspecto de un informe, incluida la propiedad que se va a establecer, el cuadro de diálogo que se usa normalmente para establecerla y el valor de la propiedad. Puede escribir una expresión directamente en un cuadro de diálogo, en la superficie de diseño o en el panel de propiedades.

Funcionalidad

Propiedad, contexto y cuadro de diálogo

Valor de la propiedad

Calcular los valores agregados para un conjunto de datos.

Propiedad Value de un marcador de posición dentro de un cuadro de texto. Use Propiedades del marcador de posición (cuadro de diálogo), General.

=First(Fields!Sales.Value,"DataSet1")

Concatenar texto y expresiones en el mismo cuadro de texto.

Propiedad Value de un marcador de posición dentro de un cuadro de texto situado en un encabezado de página o en un pie de página. Use Propiedades de Tablix (cuadro de diálogo), Filtros.

="This report began processing at " & Globals!ExecutionTime

Calcular un valor agregado para un conjunto de datos de otro ámbito.

Propiedad Value de un marcador de posición dentro de un cuadro de texto situado en un grupo de Tablix. Use Propiedades de Tablix (cuadro de diálogo), Filtros.

=Max(Fields!Total.Value,"DataSet2)

Dar formato a los datos de un cuadro de texto en función del valor.

Propiedad Color de un marcador de posición dentro de un cuadro de texto de la fila de detalles de un Tablix. Use Propiedades de cuadro de texto (cuadro de diálogo), Fuente.

=IIF(Fields!TotalDue.Value < 10000,"Red","Black")

Calcular un valor una sola vez y hacer referencia a él en el informe.

Propiedad Value de una variable de informe. Use Propiedades del informe (cuadro de diálogo), Variables.

Para obtener más información acerca de las variables, vea Usar referencias a las colecciones de variables de informe y de grupo en expresiones (Reporting Services).

=Variables!MyCalculation.Value

Incluir valores específicos de varios campos de un conjunto de datos.

Ecuación de filtro de un grupo de un Tablix. Use Propiedades de Tablix (cuadro de diálogo), Filtros.

Como tipo de datos, seleccione Boolean.

=IIF(InStr(Fields!Subcat.Value,"Shorts")=0 AND (Fields!Size.Value="M" OR Fields!Size.Value="S"),TRUE, FALSE)

=

TRUE

Ocultar un cuadro de texto en la superficie de diseño y permitir que el usuario pueda volver a mostrarlo con un parámetro Boolean denominado Show.

Propiedad Hiddende un cuadro de texto. Use Propiedades de cuadro de texto (cuadro de diálogo), Visibilidad.

=Not Parameters!Show<boolean parameter>.Value

Especificar contenido dinámico para el encabezado o el pie de página.

Propiedad Value de un marcador de posición dentro de un cuadro de texto situado en el encabezado o en el pie de página. Use Propiedades de Tablix (cuadro de diálogo), Filtros.

="Page " & Globals!PageNumber & " of " & Globals!TotalPages

Especificar un origen de datos de forma dinámica mediante un parámetro.

Cadena de conexión del origen de datos. Use Propiedades del origen de datos (cuadro de diálogo), General.

="Data Source=" & Parameters!ServerName.Value & ";initial catalog=AdventureWorks"

Identificar todos los valores de un parámetro de varios valores elegidos por el usuario.

Propiedad Value de un marcador de posición dentro de un cuadro de texto. Use Propiedades de Tablix (cuadro de diálogo), Filtros.

=Join(Parameters!MyMultivalueParameter.Value,", ")

Especificar saltos de página cada 20 filas en un Tablix sin otros grupos.

Expresión de grupo de un grupo de un Tablix. Use Propiedades de grupo de Tablix (cuadro de diálogo), General.

Propiedad PageBreak del grupo de Tablix. Use Propiedades de grupo de Tablix (cuadro de diálogo), Saltos de página. Establecer Entre cada instancia de un grupo.

=Ceiling(RowNumber(Nothing)/20)

Especificar la visibilidad condicional en función de un parámetro.

Propiedad Hidden de un Tablix. Use Propiedades de Tablix (cuadro de diálogo), Visibilidad.

=Not Parameters!<boolean parameter>.Value

Especificar una fecha con formato para una referencia cultural concreta.

Propiedad Value de un marcador de posición dentro de un cuadro de texto de una región de datos. Use Propiedades de cuadro de texto (cuadro de diálogo), General.

=Fields!OrderDate.Value.ToString(System.Globalization.CultureInfo.CreateSpecificCulture("de-DE"))

Concatenar una cadena y un número con formato de porcentaje con dos decimales.

Propiedad Value de un marcador de posición dentro de un cuadro de texto de una región de datos. Use Propiedades de cuadro de texto (cuadro de diálogo), General.

="Growth Percent: " & Format(Fields!Growth.Value,"p2")

Para obtener más ejemplos, vea Ejemplos de expresiones (Reporting Services).