最近我遇到了与SSRS中使用IIF()函数不一致的问题。我正在研究具有多个条件的聚合函数。假设我有这样的代码:使用IIF()函数的SSRS Report Builder表达式错误
=Sum(IIF(Fields!MATL_STAT.Value="Disposed", Fields!MATL_SIZE.Value,0))
通过说明书中,表述确定MATL的大小的总和与MATL_STAT = "Disposed"
但每次我运行有一个#错误的报告。
我的理论是你不能把字段放在IIF()函数的“真正选项”中。
现在,如果我的理论是正确的,是否有解决方法呢?
IIRC这应该工作。你可以在其中一个领域抛出一个NULL的NULL(特别是DbNull)吗? –
我已经使用'NVL()'函数消除了查询中的所有空值。顺便说一句,我使用Oracle。 –
您绝对可以将字段放入IIF函数的真实选项中。有时候当你期待不同的数据类型时,你会得到#error。你可以做CStr(Fields!MATL_STAT.Value)= CStr(“Disposed”),看看你是否仍然有错误? – mmarie