ssrs 2012开关表达式导致错误

时间:2018-09-05 16:32:26

标签: reporting-services ssrs-2012

= Switch(Fields!sale.Value =“ 1”,Fields!REC_ISU.Value,“ 0”,Fields!sale.Value =“ 2”,Fields!REC_ISU.Value,“ 0”,Fields!sale。值=“ 3”,字段!REC_ISU.Value,“ 0”)此代码引发错误。谁能帮忙。预先感谢

1 个答案:

答案 0 :(得分:0)

表达式存在问题,但是不知道您希望这样做做什么,很难给出完整的答案。

SWITCH表达式的工作方式如下... 例如,如果我们想查看一个品牌名称并返回是软饮料还是酒精,我们可以做类似的事情

=SWITCH(
        Fields!Brand.Value = "Coca-Cola", "Soft",
        Fields!Brand.Value = "Fosters", "Alcohol",            
        Fields!Brand.Value = "Smirnoff", "Alcohol",
        True, "Something else"
        )

这基本上是说:“如果品牌是可口可乐,则返回“ Soft”;如果是Fosters或Smirnoff,则返回“ Alcohol”,否则,ELSE返回“ Something else”。SWITCH在发现符合条件的情况时会停止评估,因此最后的TRUE就像其他情况一样,意味着其他测试都不是真的。

我们可以通过替换

来使其更短
        Fields!Brand.Value = "Fosters", "Alcohol",            
        Fields!Brand.Value = "Smirnoff", "Alcohol",

    Fields!Brand.Value = "Fosters" OR Fields!Brand.Value = "Smirnoff", "Alcohol",

如您所见,您可以轻松组合比较。

有关更多信息,请点击此处https://docs.microsoft.com/en-us/sql/reporting-services/report-design/expression-examples-report-builder-and-ssrs?view=sql-server-2017