SSRS表达式结合SUM与IIF计算时返回#Error报错问题咨询
问题原因
- 语法逻辑错误:现有表达式两个校验条件未使用逻辑运算符关联,且
ReleaseDate的判断直接放在IIf函数返回值外侧,属于无效语法,直接触发类型运算错误。 - 冗余前缀可省略:
Microsoft.VisualBasic.Interaction.IIf可直接简写为IIf,SSRS运行环境原生支持该函数。
修复后的表达式
=Sum(IIf(Fields!TypeName.Value = "Base" And Fields!ReleaseDate.Value = DateAdd("d",-1,Today), 1, 0), "DataSet1")
该表达式会同时匹配TypeName为Base、ReleaseDate为昨日的行,完成计数求和。
空值适配方案
如果ReleaseDate字段存在空值,建议额外增加空值校验逻辑,避免隐性类型转换报错:
=Sum(IIf(Fields!TypeName.Value = "Base" And Not IsNothing(Fields!ReleaseDate.Value) And Fields!ReleaseDate.Value = DateAdd("d",-1,Today), 1, 0), "DataSet1")
内容的提问来源于stack exchange,提问作者SneakyNinja475
相关产品推荐
相关产品推荐

