我正在尝试格式化Reporting Services报告中的某些单元格,这些单元格将包含DateTime?
值-或不包含。
如果基础数据具有该NULL
的DateTime?
,则我不显示任何内容(空单元格)-如果该数据源包含一个值,则希望以短日期格式显示日期(< cc>在我的语言环境中)。
所以我试图将这个公式放到相关的SSRS单元格中
=FormatDateTime(Fields!DatumBSE.Value, 2)
但是现在我得到所有
dd.MM.yyyy
日期的01.01.0001
。我似乎无法全神贯注地在SSRS(VB)公式中执行此操作...。我尝试使用
NULL
,但这似乎并没有真正帮助-我可以检测到IsNothing()
,但是在这种情况下,如何告诉单元显示一个空字符串?解:
我最终使用了这个功能:
=IIF(IsNothing(Fields!DatumBSE.Value), "", FormatDateTime(Fields!DatumBSE.Value, 2))
看起来对我来说现在一切正常。
最佳答案
我只是测试了以下表达式,它用空字符串替换了null
日期:
=IIF(Fields!DatumBSE.Value is nothing, nothing, FormatDateTime(Fields!DatumBSE.Value, 2))
我要提出的另一个建议是,您可以通过在日期值周围放置一个
CASE
表达式来将日期设置为报表数据集中的正确格式。
关于sql-server-2005 - 检测NULL日期并在SSRS中显示空字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14606390/