这是我的陈述:
iif(sum(Fields!myfield1.Value) = 0, 0, sum(Fields!myField2.Value)/sum(Fields!myField1.Value))
有什么建议吗?
答案 0 :(得分:1)
可能 评估为True。正如其他注释中所提到的,无论如何都会出现错误,因为无论测试结果如何,Iif()都会计算所有参数表达式。
可以通过在除数中添加另一个Iif()来避免错误。
iif(
sum(Fields!myfield1.Value) = 0,
0,
sum(Fields!myField2.Value) / iif(
sum(Fields!myfield1.Value) = 0,
1,
sum(Fields!myField1.Value)
)
)
现在,如果myfield1为零并且没有抛出错误,您将获得零。
(当除数为零时,你可能应该显示'N / A'或只是一个空字符串。)