使用 IIF 筛选除零

可以在表达式中使用 IIF 语句来屏蔽除零:

=IIF(Fields!PossibleZero.Value=0,0,Fields!Denominator.Value/IIF(Fields!PossibleZero.Value=0,1,Fields!PossibleZero.Value))

SSRS 不会使 IIF 参数短路。因此,使用单个 IIF 函数来屏蔽除以零将不起作用并给出 #ERROR 值。

相反,可以使用一对嵌套的 IIF 语句。外部 IIF 控制在除以零的情况下返回的值,在上面的示例中为 0。内部 IIF 是一个虚拟值,在这种情况下阻止引擎实际执行除零。