Report Builder 3.0 SWITCH выражение DEFAULT/ELSE
Я пытаюсь отобразить другой логотип на основе номера франшизы пользователей.
Параметр = UserFranNr
Если значение < > 99 и < > 87, то отображаемое изображение должно быть ID0. (Встраиваемые имена изображений являются строками.)
Это работает с вложенными IIF, но кажется правильным временем/местом для использования SWITCH
.
(Существует большая вероятность того, что больше франшиз будет использовать свой собственный логотип в будущем.)
=Switch
(
Parameters!UserFranNr.Value = "99","ID99",
Parameters!UserFranNr.Value = "87","ID87",
"ID0"
)
Я не нашел документацию, в которой объясняется, как реализовать значение по умолчанию с помощью SWITCH
.
Возможно ли это? Если да, то как? Если нет каких-либо достойных альтернатив?
Благодаря
Ресурсы:
Примеры выражений (построитель отчетов и службы SSRS)
Диалоговое окно "Определить формулу" (построитель отчетов)
Плюс здесь и другие форумы.
Ответы
Ответ 1
В выражении SSRS Switch
нет предложения по умолчанию.
Однако вы всегда можете слегка изменить свое выражение:
=Switch
(
Parameters!UserFranNr.Value = "99","ID99",
Parameters!UserFranNr.Value = "87","ID87",
true, "ID0"
)
Так как в любое время, когда последнее условие попадает, оно будет явно оценено до true
, последняя строка будет эффективно действовать как значение по умолчанию.
Я использовал это в прошлом без проблем. Помимо того, что, возможно, создавая хмуры в людях, которые читают выражение, он отлично работает с минимальными усилиями.
В отношении того, имеет ли разумное поведение отсутствие предложения по умолчанию, ну, это вопрос для Microsoft. Это, безусловно, кажется странным для меня, но там вы идете.