如何向 sql 存储过程传递一个包含 DatetIme.Today() 的字符串

How to pass a sql stored procedure a string with DatetIme.Today() in it

我有一个使用 kendo 参数过滤结果的存储过程。我想使用相同的程序 运行 SSRS 中的报告。参数如下:

        @pFilter = N'DueDate~gte~datetime2017-12-26T11-23-21~DueDate~lte~datetime2018-01-25T11-23-21~',     

这是我需要能够通过构建参数字符串但其中包含当前数据计算来传递它的内容,以便可以通过 Report Builder 报告调用存储过程。

需要:

    @pFilter = N'DueDate~gte~datetime' DATEADD(day, 90, MAX(GETDATE())) + '~DueDate~lte~datetime2018-01-25T11-23-21~',      

这可能吗?如果可以,谁能给我指出一个方向来了解如何完成这个?

-提前致谢-

如果您的过程采用两个日期参数,会更有意义。但是考虑到限制,表达式应该是:

="DueDate~gte~datetime" & DATEADD("d", 90, Today) & "~DueDate~lte~datetime2018-01-25T11-23-21~"

这假设您的程序可以接受标准日期格式,而不是示例中的格式。如果不是,您需要重新格式化它或更新程序以接受它。