我有一个无法正常工作的自定义 SSRS 表达式

I have a custom SSRS Expression that is not working properly

我有一个自定义 SSRS 表达式来计算百分比:

=IIF(Sum(Fields!BidTotal.Value)=0,0,Sum(Fields!Bid_Margin.Value)/Sum(Fields!BidTotal.Value))

但是,当我去预览报告时,我不断收到 #Error 消息,这是由于跳零,但 IIF 语句应该可以解决这个问题。我对其他字段使用相同的公式并且它按预期工作,不确定为什么这个表达式会有所不同。

不幸的是,无论初始表达式的结果如何,SSRS 都会计算 IIF 的两边。

你只需要一个额外的 IIF 来让它足够复杂,这样它就不会发现问题。

=IIF(Sum(Fields!BidTotal.Value) = 0, 0, Sum(Fields!Bid_Margin.Value))  
 /
 IIF(Sum(Fields!BidTotal.Value) = 0, 1, Sum(Fields!BidTotal.Value))