16

Estoy tratando de escribir una expresión de campo para una celda en mi informe donde tengo que cambiar el color de fondo de la celda dependiendo del valor de cadena en la celda. Ejemplo: si la columna tiene un valor 'Aprobado', la celda debe mostrar un color de fondo verde. He intentado lo siguiente:Expresión de campo de SSRS para cambiar el color de fondo de la celda

= IIF(fields!column.value = "Approved", "Green") 

y

= IIF(Fields!column.Value, "Approved", "Green") 

ni trabaja .. Sé que me falta algo en la sintaxis .. Probablemente no estoy refiriendo al color verde tierra de nuevo en el sintaxis. ¡Por favor ayuda!

+0

Si hop resolvió su problema que debe aceptar su respuesta – DForck42

Respuesta

44

El problema con IIF (Fields! Column.Value = "Approved", "Green") es que le falta el tercer parámetro. La sintaxis correcta es IIF ([alguna expresión booleana], [resultar si la expresión booleana es verdadera], [resultar si booleano es falso])

probar este

=IIF(Fields!Column.Value = "Approved", "Green", "No Color") 

Aquí es una lista de ejemplos de expresión Expression Examples in Reporting Services

IIF in SSRS report

+0

muchas gracias para la Reponse .. los que resuelve la sintaxis parte ... pero cuando obtengo una vista previa del informe, veo que el valor de cadena "Aprobado" se reemplaza por el valor de cadena "Verde". y quiero que el color de fondo no cambie el valor de la cadena. – Avinash

+1

Si está utilizando el generador de informes o BIDS, cuando hace clic en ver las propiedades de la celda en la ventana de propiedades, debe haber una propiedad de Color de fondo. Ahí es donde ingresas tu expresión desde arriba. – Hopdizzle

+0

Ah ... Eso resuelve el requisito ... Muchas gracias por su ayuda. Muy apreciado. – Avinash

3

Aprovechar el uso de las propiedades de color y BackColor para escribir expresiones para su consulta. Añadir lo siguiente a la opción de expresión de la propiedad color que desee para atender a)

Ejemplo

=iif(fields!column.value = "Approved", "Green","<other color>") 

iif necesidades 3 valores, primero la columna correspondiente, a continuación, el segundo es para manejar lo Verdadero y lo tercero es para manejar el falso para la declaración iif

0

= IIF (Fields! ADPAction.Value.ToString(). ToUpper(). contiene ("FAIL"), "rojo", "Blanco")

También es necesario convertir a mayúsculas para comparar en es una prueba binaria.

+0

Hola, bienvenidos a SO, es bueno verte comenzando con una respuesta. ¡El código es más legible cuando lo formatea como código, simplemente escríbalo con 4 espacios! – iScrE4m

1

= IIF (campos! Column.value = Condiciones, "Rojo", "Negro")

Cuestiones relacionadas