wake-up-neo.com

Report Builder 3.0 SWITCH-Ausdruck DEFAULT / ELSE

Ich versuche, ein anderes Logo basierend auf der Franchise-Nummer des Benutzers anzuzeigen.

Parameter = UserFranNr

Wenn der Wert <> 99 und <> 87 ist, lautet das anzuzeigende eingebettete Bild ID0. (Eingebettete Bildnamen sind Zeichenfolgen.)

Dies funktioniert mit verschachtelten IIFs, scheint jedoch der richtige Zeitpunkt/Ort zu sein, um SWITCH zu verwenden.

(Es ist sehr wahrscheinlich, dass in Zukunft mehr Franchise-Unternehmen ihr eigenes Logo verwenden.)

=Switch 
(
Parameters!UserFranNr.Value = "99","ID99",
Parameters!UserFranNr.Value = "87","ID87",
"ID0"
)

Ich habe keine Dokumentation gefunden, die erklärt, wie ein Standardwert mit SWITCH implementiert wird.

Ist das überhaupt möglich? Wenn das so ist, wie? Wenn nicht irgendwelche anständigen Alternativen? Vielen Dank

Ressourcen: Ausdrucksbeispiele (Berichts-Generator und SSRS)Dialogfeld "Formel definieren" (Berichts-Generator)

Plus hier und in anderen Foren.

39
Dennis Post

Es gibt keine Standardklausel im SSRS-Ausdruck Switch.

Sie können Ihren Ausdruck jedoch jederzeit leicht ändern:

=Switch 
(
  Parameters!UserFranNr.Value = "99","ID99",
  Parameters!UserFranNr.Value = "87","ID87",
  true, "ID0"
)

Da die letzte Bedingung jedes Mal explizit als true ausgewertet wird, fungiert die letzte Zeile als Standardwert.

Ich habe dies in der Vergangenheit ohne Probleme verwendet. Abgesehen davon, dass die Leute, die den Ausdruck lesen, möglicherweise die Stirn runzeln, funktioniert er mit minimalem Aufwand perfekt.

Ob es sinnvoll ist, keine Standardklausel zu haben, ist eine Frage für Microsoft. Es kommt mir auf jeden Fall komisch vor, aber los geht's.

83
Ian Preston