Reporting services SSRS报告-使用表达式格式化日期列

Reporting services SSRS报告-使用表达式格式化日期列,reporting-services,date-formatting,Reporting Services,Date Formatting,我正在使用SSAS多维数据集在报表中显示数据。多维数据集中有一个日期列,该列可能为空。如果是空白,我需要显示空白,否则我需要将其格式化为“MM yyyy”。我在专栏中使用了下面提到的表达式 =IIf(Trim(字段!Chargeoff.Value)=“”,“”, 格式(CDate(字段!Chargeoff.Value),“MM yyyy”)) 具有日期值的行与格式正确的日期完全一致。但是,对于空行,它会显示错误提示 textrun“Chargeoff.段落[0]”的值表达式包含错误:从字符串“

我正在使用SSAS多维数据集在报表中显示数据。多维数据集中有一个日期列,该列可能为空。如果是空白,我需要显示空白,否则我需要将其格式化为“MM yyyy”。我在专栏中使用了下面提到的表达式

=IIf(Trim(字段!Chargeoff.Value)=“”,“”,
格式(CDate(字段!Chargeoff.Value),“MM yyyy”))
具有日期值的行与格式正确的日期完全一致。但是,对于空行,它会显示错误提示

textrun“Chargeoff.段落[0]”的值表达式包含错误:从字符串“”转换为类型“Date”无效

我试过使用IsNothing、Null和我想到的所有其他东西,但无法显示为空白

有人对此有什么建议吗

更新


实际上,我用SSAS而不是SSRS格式化了我的日期。。这对我来说很有用。

试着在输出中输入空日期,而不是空字符串
00-0000
它正在查找日期,而您给它一个空字符串。我想你要么给它一个
空日期
,要么给它一个
默认日期

=IIF(CDATE(IIF(TRIM(Fields!RequiredStart.Value).ToString().Length = 0,
"1/1/0001",
Fields!RequiredStart.Value)).ToString() = CDATE("01/01/0001"),
"",
Format(CDATE(IIF(TRIM(Fields!RequiredStart.Value).ToString().Length = 0,
"1/1/0001",
Fields!RequiredStart.Value)), "dd-MMM-yyyy"))

:)

感谢您的快速响应,但我担心的问题是,对于空白单元格,“IIf”条件本身的计算结果不是真的,因为错误消息说它正在尝试将“”转换为不受支持的日期。但是,我尝试使用“00-0000”来代替“”,但它不起作用。请在您的帖子中添加更新,以便其他人知道您已经尝试过。你尝试过不同的日期格式吗?我实际上是用SSAS格式而不是SSRS格式。。这对我来说是个窍门。@user1627749发布你所做的并将其标记为答案,这样当其他人有同样的问题时,他们可以知道你做了什么来解决它。