2012-03-12 61 views
10

Tengo un informe con múltiples conjuntos de datos. Diferentes campos de diferentes conjuntos de datos se utilizan en diferentes ubicaciones del informe.SSRS - Expresión usando diferentes campos de conjunto de datos

En una parte del informe, necesito hacer un cálculo utilizando campos de dos conjuntos de datos diferentes. ¿Es esto posible dentro de una expresión?
¿Puedo de alguna manera hacer referencia al conjunto de datos en el que se encuentra el campo, en la expresión?

Por ejemplo, me gustaría hacer algo como esto:

=Fields.Dataset1.Field/Fields.Dataset2.Field 

Respuesta

17

se puede lograr mediante la especificación de que el alcance de ustedes campos así:

=First(Fields!fieldName_A.Value, "Dataset1")/First(Fields!fieldName_B.Value, "Dataset2") 

Suponiendo que A es 10 y B es 2 y son de tipo numérico, entonces tendrá el resultado de 5 cuando se presente el informe. Cuando está en el generador de expresiones puede elegir la Categoría: Conjuntos de datos, el conjunto de datos deseado resaltado en Elemento: y luego hacer doble clic en el campo deseado en Valor: y aparecerá en su expresión con el alcance agregado.

Usando misma lógica se puede concatenar dos campos de este modo:

=First(Fields!fieldName_A.Value, "Dataset1") & “ “ & First(Fields!fieldName_B.Value, "Dataset2") 
+0

Gracias. Esto es exactamente lo que necesitaba. – Zolt

3

Como escribe PerPlexSystem, Asumiendo sólo desea comparar el primer valor de un conjunto de datos con los valores de otro conjunto de datos, puede utilizar la primera función .

Sin embargo, si desea comparar los valores de cada fila de un conjunto de datos con los valores de cada fila de otro conjunto de datos, deberá usar un subinforme; consulte here para obtener más detalles.

+0

o si no puede soportar los problemas causados ​​por los subinformes, como los problemas de alineación y los matices de las diferencias de SSRS en la representación, puede utilizar el método = LookupSet() en las expresiones de filtro. –

0

Otra opción es usar un parámetro como variable. Esto es útil si desea crear un campo calculado en uno de los conjuntos de datos. Esto se aplica mejor cuando el valor del parámetro proviene de un conjunto de datos con un solo registro.

Cuestiones relacionadas