Report Builder 3.0 SWITCH表达式DEFAULT/ELSE

Den*_*ost 41 reporting expression reporting-services reportbuilder3.0 ssrs-expression

我试图根据用户特许经营号码显示不同的徽标.

参数= UserFranNr

如果值<> 99且<> 87,则要显示的嵌入图像为ID0.(嵌入的图像名称是字符串.)

这适用于嵌套的IIF,但似乎是正确的时间/地点SWITCH.

(将来很多特许经营商很可能会使用自己的标识.)

=Switch 
(
Parameters!UserFranNr.Value = "99","ID99",
Parameters!UserFranNr.Value = "87","ID87",
"ID0"
)
Run Code Online (Sandbox Code Playgroud)

我没有找到任何解释如何使用默认值的文档SWITCH.

这甚至可能吗?如果是这样的话?如果没有任何体面的选择?谢谢

资源: 表达式示例(Report Builder和SSRS) 定义公式对话框(报表生成器)

加上这里和其他论坛.

Ian*_*ton 87

SSRS Switch表达式中没有默认子句.

但是,您始终可以稍微修改表达式:

=Switch 
(
  Parameters!UserFranNr.Value = "99","ID99",
  Parameters!UserFranNr.Value = "87","ID87",
  true, "ID0"
)
Run Code Online (Sandbox Code Playgroud)

由于任何时候最后一个条件被命中,它将被显式评估true,最后一行将有效地作为默认值.

我过去使用过这个没有问题.除了可能在阅读表达的人中产生皱眉之外,它以最小的努力完美地工作.

至于没有默认条款是否明智,这对微软来说是一个问题.这对我来说当然很奇怪,但你去了.

  • 大声笑.非常简单!完善!谢谢伊恩:) (7认同)
  • 真正的问题是,在没有明确的DEFAULT案例的情况下实施交换机操作员是一个好主意是什么样的不熟练的机智,因为几十年来切换它的工作完美无瑕.微软总是提供支持. (4认同)
  • 救生员,您就是。(我想,尤达,我是)。 (2认同)