如何解决SSRS 表达式到总和值 IIF YearMonth = Parameter
我希望有人能够提供帮助\帮助。
我有一个 Tablix,我试图根据参数从一个字段中填充三个单独的(总和)值(本月、本年和上一年)。我的参数设置为yyyymm
。我对每个求和值的表达逻辑如下:
汇总当前月份值
=SUM(Fields!Quantity.Value),IIF(Parameters!YearMonth.Value) = CDATE(Now()),"yyyyMM")
汇总当前年份值
=SUM(Fields!Quantity.Value),"yyyy")
汇总上一年的值
=SUM(Fields!Quantity.Value),"yyyy")-1
尝试上述表达式时出现以下错误:
文本运行 Quantity5.Paragraphs[0].TextRuns[0]
的值表达式包含错误:[BC30205] End of statement expected
解决方法
正如 Harry 指出的,IIF 语句的语法是
IIF([Expression to evalute],[Expression to return if true],[Expression to return if false])
此外,我认为您需要格式化从 now()
返回的日期,使其与您的参数格式相匹配。
所以,就你的第一个表达而言,它应该是这样的
=SUM(
IIF(Parameters!YearMonth.Value = FORMAT(Now(),"yyyyMM"),Fields!Quantity.Value,Nothing)
)
因此从内部表达式开始,我们将参数与格式化为 yyyyMM
的今天日期进行比较。如果匹配则返回 Quantity
字段的值,如果不匹配则不返回任何内容。
然后外部 SUM 只是将所有这些结果相加。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。