将日期传递给SSRS中的参数

时间:2017-03-16 09:46:56

标签: sql-server datetime reporting-services

我应该以哪种格式将日期字段传递给参数才能选择列表中的日期选择器?

我的查询返回日期(日期格式),我在SSRS中以不同的方式(yyyy-dd-MM,yyyy-MM-dd,dd-MM-yyyy,...)投射:

=Format(Fields!StartDate2.Value,"yyyy-dd-MM")

我在参数中使用此字段,但我总是收到错误:

  

报告处理期间发生错误。 (rsProcessingAborted)   报告参数“STARTDATE”的属性“ValidValues”不包含   有预期的类型。 (rsParameterPropertyTypeMismatch)

当我只传递查询结果(日期格式)时,我有列表:

enter image description here

即使选择日期/时间:

enter image description here

1 个答案:

答案 0 :(得分:2)

<强>答案

您遇到此问题的原因是您的环境中的语言/文化/日期格式不相似。

DEFAULT的SQL使用en-US,您的本地PC使用您的本地语言/文化/日期格式。

有您的问题,而不是将日期的值转换为您的本地 语言/文化/日期格式,将其转换为en-US “MM-DD-YYYY”

回答解释

从透视角度来看,您正在发送带有日期格式的SQL服务器 “MM / dd / yyyy”的价值“2017/16/03”。

所以服务器认为“这家伙告诉我要搜索2017年第17个月,第16天”