我正在寻找有关更新SSRS报告中使用的表达式的帮助。
当前表达式是这样的:
=IIF(Fields!Type.Value = "TKT", "Ticket No.",
IIF(Fields!Type.Value = "CUN", "Customer Number",
IIF(Fields!Type.Value = "ANM", "Account Number",
IIF(Fields!Type.Value = "CID", "Client ID", ""))))
我们添加了更多“类型”
因此对于类型“ TKT”,我们现在有:“ TKT1”,“ TKT2”。对于类型“ CUN”,现在对于最后2个,我们具有“ CUN1”,“ CUN2,依此类推”。
我不熟悉使用IIF函数时如何指定多个值(类似于IN运算符)。
如果任何人都可以就如何完成此事分享一些看法,那就太好了。
谢谢您的帮助。
答案 0 :(得分:2)
您可能最好先将此表达式转换为SWITCH
语句,然后再进行处理。 SWITCH
接受您需要添加的尽可能多的条件和结果配对。下面的表达式使您可以根据需要添加任意数量的检查,最后的配对true,""
会将与switch
语句不匹配的任何检查简单地设置为空白值。
=SWITCH(Fields!Type.Value = "TKT1", "Ticket No.",
Fields!Type.Value = "TKT2", "Ticket No.",
Fields!Type.Value = "CUN1", "Customer Number",
Fields!Type.Value = "CUN2", "Customer Number",
Fields!Type.Value = "ANM", "Account Number",
Fields!Type.Value = "CID", "Client ID",
[add additional pairings here],
true, "")
另一种解决方案是在SSRS中使用Contains
关键字。这将搜索字符串以找到特定的子字符串。您可以简单地将每个条件修改为以下条件,如果该字段包含该子字符串,则将返回true
。
Fields!Type.Value.Contains("TKT")