0

需要一些帮助,如上所述,这部分给我带来了麻烦,因为如果 date 的值为 NULL,它将显示为 #Error。如果有日期值没关系,但如果为 NULL 则没有。Argghhhhhhh....我已经在下面表达了几个表达式,但都没有解决问题:

=IIf(IsNothing(Fields!LastReviewDate.Value), "N/A", DateValue(Fields!LastReviewDate.Value).ToString("dd-MMMM-yyyy")) 

OR

IIf(Fields!LastReviewDate.Value Is Nothing, "N/A", DateValue(Fields!LastReviewDate.Value).ToString("dd-MMMM-yyyy")) 

OR

=IIf(Fields!LastReviewDate.IsMissing, "N/A", DateValue(Fields!LastReviewDate.Value).ToString("dd-MMMM-yyyy"))

谁能告诉我如何解决这个问题?我希望用“”或“N/A”或“-”替换 NULL 日期......这是输出:

如果日期为 NULL,则报告显示值为 #Error

我尝试更改数据源上的属性,但它给了我这种错误消息:

更改数据源属性时出错

4

1 回答 1

0

我现在找到了我的问题的解决方案,感谢 Uncle G' (Google) 为我提供了大量资源,感谢所有在互联网上分享知识的人!谢谢!!!

答案是 :

1)为受影响的列配置表达式,在我的情况下,我需要检查我的日期类型列是否包含 NULL 值。这是我的例子:-

=Code.CheckForNull(Fields!LastReviewDate.Value)

第一步,改变表达式

2)查看 RDL 报告的 Visual Studio 菜单,选择 REPORT >>> REPORT PROPERTIES... 转到选项卡“代码”并将表达式的函数放入其中,这是我的示例:-

Public Function CheckForNull(ByVal value As Object) As String
    If IsNothing(value) Then
        Return "N/A"
    Else
        Return DateValue(value).ToString("dd-MMMM-yyyy")
   End If
End Function

必须报告属性

3) 单击确定,保存解决方案并测试您放置 ReportViewer 的页面以查看结果,BRAVO 您做对了!!! 输入您的函数以响应您的报告表达式列

在此处输入图像描述

于 2013-04-08T10:30:52.220 回答