需要帮助纠正除零误差

时间:2017-03-02 20:42:50

标签: sql-server ssrs-2008

在其中一份报告中,我们得到零除错误。我们想要的是,如果上一年的值为0,则百分比差异应为100%。我已经尝试了各种各样的方法来使这个工作没有成功。

以下是导致问题的脚本。你知道怎么纠正这个吗?

=Iif(Sum(Fields!LYSUMAMOUNT.Value, "Group3") <> 0, ((Sum(Fields!SUMAMOUNT.Value, "Group3") - Sum(Fields!LYSUMAMOUNT.Value, "Group3")) / Sum(Fields!LYSUMAMOUNT.Value, "Group3")) * 100, 0)

提前谢谢!

1 个答案:

答案 0 :(得分:1)

这是SSRS中的错误或Microsoft实施IIF评估的方式。无论IIF条件如何,它都会尝试评估真假表达。您可以尝试以下方式解决您的问题。在这里我也将IIF条件添加到除法中,如果它为零则使用1作为除数。

=Iif(Sum(Fields!LYSUMAMOUNT.Value, "Group3") <> 0, ((Sum(Fields!SUMAMOUNT.Value, "Group3") - Sum(Fields!LYSUMAMOUNT.Value, "Group3")) / Iif(Sum(Fields!LYSUMAMOUNT.Value, "Group3") <> 0, Sum(Fields!LYSUMAMOUNT.Value, "Group3"),1)) * 100, 0)