在SSRS中的参数上使用DateAdd时出错

时间:2018-08-14 14:15:42

标签: visual-studio reporting-services ssrs-2008

我正在尝试设置日期范围。我收到一个名为@EffectiveDate的参数,我想设置一个生效日期前3年的范围。

作为一个例子。这是工作代码。

1,2,3,4
0.8743061353, 0.0122328811, 0.004798154, 0.1086628297

但是当我尝试使用以下参数时

CStr(Format(CDate(DateAdd(DateInterval.Year, -3, Today())),"yyyy"))

我得到一个错误。我不知道这是什么错误。运行报告时,我所看到的只是#Error。

该参数在SSRS中设置为“日期/时间”,我什至将其转换为以防万一。

以下代码确实可以工作

=CStr(Format(DateAdd(DateInterval.Year, -3, CDate(Parameters!EffectiveDate.Value)),"yyyy"))

所以看起来好像是“ DateAdd”方法

任何帮助将不胜感激。谢谢

2 个答案:

答案 0 :(得分:1)

您可以尝试使用此代码

= CStr(Format(CDate(DateAdd(DateInterval.Year,-3,CDate(Parameters!EffectiveDate.Value))),“ yyyy”))

答案 1 :(得分:0)

尝试一下是否可行

=CStr(Format(CDate(DateAdd("yyyy", -3, Now())), "yyyy"))  'Result =2015

,如果可行,请尝试使用您的 Parameter (而不是 Now())。如果不起作用,则您的参数

有问题