2013-03-14 40 views
1

我需要抓住从我的报告2日期/时间参数中的月和年信息(开始日期和结束日期)到一个文本框。SSRS - 表达预警日期时间格式

我用下面的表达 -

=MonthName(Month(Parameters!StartDate.Value)) & Format(Year(Parameters!EndDate.Value)) & " to " & MonthName(Month(Parameters!EndDate.Value)) & Format(Year(Parameters!EndDate.Value)) 

把它弄成如2012年3月至2012年8月

它的工作原理,但我不断收到以下警告:

[rsRuntimeErrorInExpression] The Value expression for the textrun ‘Textbox18.Paragraphs[0].TextRuns[0]’ contains an error: Conversion from type 'Date' to type 'Integer' is not valid. 

任何想法?

谢谢!

+0

嗯表达,看到这个帖子 - http://stackoverflow.com/a/1508591/763029为一般的解决方法的想法 – Coffee 2013-03-14 23:37:20

回答

1

那是确切的表达你正在使用?它似乎并不喜欢它是因为:

  • 是表达作品,未经警告(我的系统上)
  • 它不给输出你表明它确实
  • 表达是错误的(它列出的结束日期的年份,而两倍,比起始日期的一年的起始日期的月份)

所以我猜想,在实际表达的功能之一是MonthName(Parameters!StartDate.Value)而非MonthName(Month(Parameters!StartDate.Value))这将给予指示的错误。

这也适用于:

=MonthName(Month(Parameters!StartDate.Value)) & " " & Year(Parameters!StartDate.Value).ToString() & " to " & MonthName(Month(Parameters!EndDate.Value)) & " " & Year(Parameters!EndDate.Value).ToString() 

如果不是这样,这是不是在Textbox18

+0

非常感谢克里斯。是的,你说得对第三点,我犯了错误,并使用EndDate两次。但是这不应该引起警告!我会解决你的问题。非常感谢你! – 2013-03-15 02:55:13