SSRS 2012 开关表达式导致错误



>=Switch(Fields!sale.值 = "1",字段!REC_ISU。值,"0",字段!销售。值 = "2",字段!REC_ISU。值,"0",字段!销售。值 = "3",字段!REC_ISU。值,"0"( 此代码引发错误。谁能帮忙。提前致谢

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

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

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

这基本上是说"如果品牌是可口可乐返回"软",如果是福斯特或斯米尔诺夫返回"酒精",否则返回"其他东西"。当 SWITCH 找到一个条件为真时,它会停止评估,所以最后的 TRUE 就像一个 TRUE,这意味着其他测试都不为真。

我们可以通过替换来缩短它

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

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

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

欲了解更多信息,请查看此处 https://learn.microsoft.com/en-us/sql/reporting-services/report-design/expression-examples-report-builder-and-ssrs?view=sql-server-2017

最新更新