DATEDIFF返回负值-SSRS

时间:2015-06-02 14:50:06

标签: reporting-services reportbuilder3.0 ssrs-expression

这是我的表达。

=DateDiff(DateInterval.Day,Fields!scheduledstartValue.Value,Fields!actualendValue.Value )

它返回正数和负数。有时当用户没有输入'actualendValue'时,它会返回一个负数,如'-1234'。

我正在尝试使用此等式(如下所示),如果返回负值,则显示“0”。

IIf([Fields!scheduledstartValue.Value]="","",IIf(Nz(DateDiff('d',[Fields!scheduledstartValue.Value],[Fields!actualendValue.Value]),0)>0,Nz(DateDiff('d',[Fields!scheduledstartValue.Value],[Fields!actualendValue.Value]),0),0))

任何人都可以用我的第二个等式来帮助我,还是有更好的方法来做到这一点?,我只是想把头发拉出来。

非常感谢。

更新1: 我试过了:

=IIF(DateDiff(DateInterval.Day,Fields!scheduledstartValue.Value,Fields!actualendValue.Value ) = 0,"NA",DateDiff(DateInterval.Day,Fields!scheduledstartValue.Value,Fields!actualendValue.Value ))

当我运行这个表达式时,我得到的不是错误,我仍然得到正面和负面的价值。

1 个答案:

答案 0 :(得分:1)

解决方案:

 =IIF(Fields!actualendValue.Value is nothing, nothing, DateDiff(DateInterval.Day,Fields!scheduledstartValue.Value,Fields!actualendValue.Value ))