2010-08-23 10 views
8

Ich mag einen Reporting Service "Expression" schreiben, die im Grunde wie der folgenden (Pseudo-Code) verhält ...Wie schreibe ich eine if else-Anweisung in die Ausdrucksprache von Reporting Services?

if ([Fields!StateProvinceId.Value] == 1) 
{ 
    return "Ontario"; 
} 
else if ([Fields!StateProvinceId.Value] == 2) 
{ 
    return "Quebec"; 
} 
else if ([Fields!StateProvinceId.Value] == 3) 
{ 
    return "Manitoba"; 
} 
// ... 
// more cases same pattern 

ich diese Art von Logik nicht sehe, kann ich zu nisten habe eine Reihe von IIF?

=IIF(Fields!StateProvinceId.Value = 1, "Ontario", IIF(Fields!StateProvinceId.Value = 2, "Quebec", IFF(Fields!StateProvinceId.Value = 3, "Manitoba", "Unknown Province"))) 

Antwort

14

Haben Sie eine switch-Anweisung versucht?

= Switch(Fields!StateProvinceId.value=1,"Ontario", Fields!StateProvinceId.value=2,"Quebec", Fields!StateProvinceId.value=3,"Manitoba") 

Siehe "Entscheidungsfunktionen" auf dieser Seite zum Beispiel:

http://msdn.microsoft.com/en-us/library/ms157328.aspx

+0

Nope hatte es nicht versucht. Hab es nicht gesehen. Ich werde es versuchen, danke! – Justin