44

我需要编写一个 SSRS 表达式来检查 NULL 字段值并将其替换为另一个字段值。这可以做到吗?

4

2 回答 2

66
=iif(isNothing(Fields!FV1.Value), Fields!FV2.Value, Fields!FV1.Value)
于 2013-10-07T21:29:52.617 回答
38

如果你必须做很多次,你也可以做一个可重用的函数来避免大量的打字。这是一个以SQL 的 ISNULL函数为模型的解决方案:

  1. 右键单击报告文档并转到报告属性。

    报告属性

  2. 导航到代码选项卡并添加以下函数:

    Public Function IsNull(input As Object, defaultValue As Object) As Object
      Return IIf(input Is Nothing, defaultValue, input)
    End Function
    

    报告属性 > 代码

    注意- 即使自定义代码需要有效的 VB.NET 代码,您也必须使用IIF三元运算符

  3. 然后你可以在这样的表达式中使用它:

    =Code.IsNull(Fields!MyField.Value,0)
    

    字段表达式

于 2014-12-10T19:49:49.983 回答