我正在尝试为SSRS 2008 R2中的日期/时间参数指定dd / mm / yyyy dateformat。我的电脑日期时间格式是mm-dd-yyyy。
我的要求是,我想以dd / mm / yyyy显示日期格式,而不管系统/服务器日期格式如何。我已经尝试过CDate(格式(今天,“dd / mm / yyyy”)),但这些都不起作用。我观察到一个非常奇怪的事情,它显示dd / mm / yyyy格式仅适用于12-MM-yyyy之前或之前的日期,并且13之后它给出错误:从字符串'25 -04-2014'转换为类型Date不是有效。 (可能它试图用MM-dd-yyyy(月份部分)映射25(时段)),这超出了总月份的范围,即12)
我对互联网的研究表明这是BIDS 2008中的一个错误。我该如何将日期显示为dd / mm / yyyy?
我没有足够的声誉来评论,但我注意到你没有在“今天”之后加上“()”。如果我没有弄错你必须把Today()
用于该功能。此外,您可能想尝试将CDate
放在Today()
函数周围。你不应该需要它,但它值得一试。此外,由于一些奇怪的原因,根据我的经验,你必须利用MM来使format
正常工作。就像@Aditaya所说,它应该是=format(Today(),"dd/MM/yyyy")
我经常使用的表达式是:
=FormatDateTime(Fields!Date.Value, DateFormat.ShortDate)
但是,这可能是特定于地区的。
您也可以使用文本框格式属性,而不是编写表达式来进行格式化。但首先,您需要确保数据采用日期格式。因此,在列上使用CDate
函数,如下所示:
=CDate(Fields!Date.Value)
然后在文本框属性中转到“数字”选项卡。选择类别的日期。然后,您可以选择所需的格式或使用自定义格式。这将更改运行报表时列的显示方式。