0

我有 SSRS 2008 R2 并且正在为英国编写报告。

我的报告有一个日期/时间数据类型参数。当用户打开报告时,默认日期格式为 MM/DD/YYYY,但我希望使用 DD/MM/YYYY 格式(如果用户从日历下拉日期选择中选择日期,则相同)。

我已将报告上的语言设置更改为英国,它格式化数据集中的日期,而不是参数。我也尝试过使用 cdate 表达式,但这也不起作用。

一种解决方法是在我的 SQL 代码中将其更改为 nvarchar 但是,我有一些使用 > @eomdate 的脚本,因此 nvarchar 在这种情况下将不起作用。

有任何想法吗?

4

3 回答 3

0

在 MSDN 论坛上查看此帖子。日历下拉菜单和参数文本框的日期格式取决于用户在浏览器中的语言设置,而不是报告。

如果你想强制用户显示相同的日期,你必须使用一个你想要的格式的文本字段,然后在你的代码中使用CDate()将该 varchar 转换为执行时间比较的日期。

于 2013-03-25T21:07:07.260 回答
0

这就是我为解决 SQL 代码中的问题而采取的措施,以使其在 SSRS 中作为 hack 工作。

声明 @eomdate varchar(50) 设置 @eomdate = '31/01/2013'

select * from policiesEOM p where p.eomdate >= convert(datetime, @eomdate, 105)

然后我将数据类型更改为文本,它工作得很好。

于 2013-03-27T14:04:45.570 回答
0

ssrs 日期类型使用 Google Chrome、Mozilla Firefox、Opera 和 Safari 中的浏览器语言。在边缘也是。IE 使用 windows 区域日期格式。

如果您不想使用日期下拉框,可以使用文本参数并使用 ssrs 内置的转换功能将值转换为日期。

于 2017-07-10T01:03:51.873 回答