当条件正确时,为什么我的IIF语句评估不正确?
-
26-09-2019 - |
题
这是我的说法:
iif(sum(Fields!myfield1.Value) = 0, 0, sum(Fields!myField2.Value)/sum(Fields!myField1.Value))
有什么建议么?
解决方案
可能是 是 评估为真实。如其他注释中所述,无论如何您都会遇到错误,因为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”或只是一个空字符串。)
不隶属于 StackOverflow