2012-07-25 91 views
7

He trabajado en 2 sólo es posible en los valores de expresión como rdlc comoCómo comprobar varias condiciones en la expresión rdlc

=iif((Fields!Gender.Value="1"),"Male","Female") 

Aquí puedo trabajar con sólo 2 posibilidades. Pero si quiero verificar 3 o más condiciones, ¿cómo puedo?

+1

podría por favor marque la respuesta correcta para ayudar a otros a encontrar la solución? –

Respuesta

8

Puede usar la propiedad Code del informe. Haga clic con el botón derecho en un espacio en blanco fuera de su informe y haga clic en Report Properties o haga clic en el menú Informe y haga clic en Propiedades de informe.

Haga clic en la pestaña "Código" y escriba su estado de cuenta de cheques condiciones que a continuación

Public Function GetGender(ByVal val as String) As String 
    Dim retVal as String = "" 

    If(val = "1") 
    retVal = "Male" 
    Else If (val = "2") 
    retVal = "???" 
    Else If (val = "3") 
    retVal = "???" 
    Else 
    retVal = "???" 
    End If 

    Return retVal 

End Function 

Luego llama a la función en la expresión de su campo respectivo

= Code.GetGender(Fields!Gender.Value) 
+0

Oye, esta es una muy buena opción para escribir un código en el informe. Gracias. Encontré otra solución para usar la declaración del interruptor al igual que iif. Incluso esto funcionará – Zara

+0

¿Quiere decir 'IIf' en una línea en el cuadro de expresión? Eso es difícil de depurar pero también es útil – codingbiz

+1

Quiero decir Switch ... – Zara

11

utilice el interruptor si tiene más condiciones , también es más legible

=Switch(
    Fields!Gender.Value = 1, "Male", 
    Fields!Gender.Value = 2, "Female" 
    ) 

rdlc expression iif use?

3

Switch y agradable de código personalizado mirada, Gracias chicos

Pero si insiste usando IIF() condición, entonces,

=iif((Fields!Gender.Value="1"), "Male", iif((Fields!Gender.Value="2"), "Female", "Something Else")) 

Ok, bye

2

intente este:

=iif(Fields!Gender.Value="1","Male", iif(Fields!Gender.Value="2","Female","Undefined")) 

el formato es:

=iif(expression=value, true, false) 

que puede cambiar con:

=iif(expression=value, true, iif(expression2=value2, true, false)) 
Cuestiones relacionadas