SSRS 2008:iif IsNan语句错误错误参数数量错误
问题描述:
当我使用下面的表达式运行SSRS报告时,出现一个错误消息:错误的参数数量。我发现这个错误是.IsNaN,是我发言的一部分。我不明白我错过了什么。任何人都可以帮忙吗?SSRS 2008:iif IsNan语句错误错误参数数量错误
= IIF(
(
(
(Sum(Fields!UNITS.Value, "SFY2011_SW_T19")/Sum(Fields!DISTINCT_CLIENT_PAY.Value, "SFY2011_SW_T19"))
- (Sum(Fields!UNITS.Value, "SFY2010_SW_T19")/Sum(Fields!DISTINCT_CLIENT_PAY.Value, "SFY2010_SW_T19"))
)
/(Sum(Fields!UNITS.Value, "SFY2010_SW_T19")/Sum(Fields!DISTINCT_CLIENT_PAY.Value, "SFY2010_SW_T19"))
).IsNaN,
0.00,
(
(
(Sum(Fields!UNITS.Value, "SFY2011_SW_T19")/Sum(Fields!DISTINCT_CLIENT_PAY.Value, "SFY2011_SW_T19"))
- (Sum(Fields!UNITS.Value, "SFY2010_SW_T19")/Sum(Fields!DISTINCT_CLIENT_PAY.Value, "SFY2010_SW_T19"))
)
/(Sum(Fields!UNITS.Value, "SFY2010_SW_T19")/Sum(Fields!DISTINCT_CLIENT_PAY.Value, "SFY2010_SW_T19"))
)
)
答
的特定错误,可能是因为你应该做IsNaN(价值),而不是Value.IsNaN但以防万一你想使用IIF(),以防止被分零差错,我给你奖金,小费。
这样做......
=Iif(CouldBeZero = 0, 0, SomeValue/CouldBeZero)
...总会抛出时CouldBeZero = 0,因为分裂首先计算,并将结果传递一个错误到Iif()函数。
而是做到这一点...
=Iif(CouldBeZero = 0, 0, SomeValue/Iif(CouldBeZero = 0, 1, CouldBeZero))
...以确保该司和零显示。
答
而不是在.IsNAN
之前有这么大的复杂值,只需使用Single.IsNAN