SSRS文本框中显示空值或空值

kei*_*en7 19 reporting-services ssrs-2008

使用SSRS(2008),您发现处理null或空值的最佳方法是什么,并将其替换为显示的其他值.很明显的解决方案是

=IIF(IsNothing(Fields!MyField.Value),"NA",Fields!MyFields.Value)
Run Code Online (Sandbox Code Playgroud)

虽然它很繁琐,但我希望在文本框上找到类似EmptyText属性的内容但是没什么.有任何想法吗?我应该从创建此属性的TextBox基础创建自定义报表项吗?

小智 9

=IIF(ISNOTHING(CStr(Fields!MyFields.Value)) or CStr(Fields!MyFields.Value) = "","-",CStr(Fields!MyFields.Value))
Run Code Online (Sandbox Code Playgroud)

使用此表达式,您可以得到答案.

这里CStr是一个处理String数据类型的默认函数.


ado*_*ic 6

调用自定义函数?

http://msdn.microsoft.com/en-us/library/ms155798.aspx

您总是可以在其中放置一个case stmt来处理不同类型的"空白"数据

  • 选择这个答案是因为大多数其他人在sql中处理ISNULL并且这不是特定于SSRS的解决方案.有效的解决方案但问题范围仅限于SSRS. (2认同)

小智 5

我不同意在服务器端转换它.如果你这样做,它将作为一个字符串类型而不是一个日期类型返回所有​​需要(例如,它将排序为一个字符串)

处理日期时我的原则是尽可能长时间地输入日期.

如果您在报表服务器上遇到性能瓶颈,则有更好的方法来处理它而不是破坏您的逻辑.