在SSRS中尝试DATEADD毫秒时出错

时间:2016-05-12 20:35:07

标签: reporting-services parameters

所以我的报告中有一个enddate参数,我在默认值下面有以下代码,以便让我获得上个月的最后一天。

=DateAdd("d", -1, DateSerial(Year(Now()), Month(Now()), 1))

这很好用,返回04-30-2016。这很好,但是当我在SSRS中使用订阅部分时,它的日期时间字段为:04-30-2016 12:00:00 AM。所以我尝试对我的代码执行以下操作以使其减少3毫秒:

=DateAdd("ms", -3,DateAdd("d", 0, DateSerial(Year(Now()), Month(Now()), 1)))

当我尝试运行报告时出现以下错误:

  

报告参数" enddate"的DefaultValue表达式包含错误:参数' Interval'不是有效值。 (rsRuntimeErrorInExpression)

如何修复此错误并使报告正常运行?

1 个答案:

答案 0 :(得分:1)

在这种情况下,AddMilliseconds功能将适用于您。

=DateAdd("d",-1,DateSerial(Now.Year,Now.Month, 1)).AddMilliseconds(-3)

这使您在上个月的最后一天减去3毫秒。

如果有帮助,请告诉我。