存储过程包含在rdl类型的报表生成器文件中。存储过程有很多字段。其中一个字段返回日期(不是日期时间)。报告中的期望结果是仅显示日期,如果没有返回日期则显示空字段。
仅使用字段值,当日期为空时,结果显示空字段,否则显示具有日期时间值的日期。
使用IIF检查“无”的值,如下所示。
=IIF(Fields!myDate.Value Is Nothing,"",Fields!myDate.Value)
输出相同。日期可用时显示日期时间值。
尝试使用shortDateString()函数会在日期存在时产生正确的结果,但在不存在日期时会产生#Error。这是声明:
=IIF(Fields!rlsPromoDate.Value Is Nothing, "",
Fields!rlsPromoDate.Value.ToShortDateString())
尝试了以下版本。没有出现错误,但没有返回日期,但这是“Microsoft.ReportingServices.ReportProcessing.OnDemandReportObjectModel.FieldImpl”。
=IIF(Fields!myDate.Value Is Nothing,"", String.Format("{0:MM/dd/yyyy}",
Fields!myDate))
请告知是否有解决方案。
答案 0 :(得分:3)
尝试以下方法:
=IIF(Fields!rlsPromoDate.Value Is Nothing, "", Format(Fields!rlsPromoDate.Value, "dd/MM/yyyy"))
或您实际想要使用的任何日期格式。