我有一个带有日期和时间(只有一个小时和分钟)参数的报告,这些参数是分开的。Date 参数的类型为 Date/Time,Time 参数设置为 Text。我想将这两个值合并为一个,因为我想将最少数量的参数传递给存储过程。我试图以多种方式实现该目标,但 SSRS 每次尝试都会返回错误。
如果我尝试使用这样的表达式:
=Format(FormatDateTime(Parameters!startDate.Value, DateFormat.ShortDate).ToString() + Parameters!startTime.Value, "dd/MM/yyyy HH:mm")
SSRS 返回此错误:
将数据类型 nvarchar 转换为日期时间时出错。
当我尝试这样使用时Datetime.Parse
:
=DateTime.Parse(Format(FormatDateTime(Parameters!startDate.Value, DateFormat.ShortDate).ToString() + Parameters!startTime.Value, "dd/MM/yyyy HH:mm"))
SSRS 说:
查询参数“@startDate”的值表达式包含错误:字符串未被识别为有效的 DateTime。从索引 0 开始有一个未知单词。
当我删除该FormatDateTime
功能时,我又遇到了另一个错误:
查询参数“@startDate”的值表达式包含错误:输入字符串的格式不正确。
您对如何正确编写此表达式有任何想法吗?
PS。我使用 SSRS 2008 R2。