sql-server-2005 - 检测NULL日期并在SSRS中显示空字符串

标签 sql-server-2005 reportingservices-2005

我正在尝试格式化Reporting Services报告中的某些单元格,这些单元格将包含DateTime?值-或不包含。

如果基础数据具有该NULLDateTime?,则我不显示任何内容(空单元格)-如果该数据源包含一个值,则希望以短日期格式显示日期(< 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/

相关文章:

visual-studio - 从 SSRS 导出到 Excel 时卡住标题

sql - 从平面文件加载 SQL 表

c# - 在 C# 中运行存储过程,传递参数并捕获输出结果

sql-server-2005 - 从表中选择最新记录

sql-server - 如何在运行时控制SSRS图表中不存在的数据项?

reporting-services - 如何在SSRS中将数字格式化为1个小数点?

sql-server-2005 - 通用选择存储过程

sql-server - 批量插入操作系统错误代码 32

reporting-services - SSRS 2005 保存报告参数

visual-studio-2010 - 报告默认折叠。你知道如何避免这种情况吗?