如果两个值都不为NULL,如何在两个值之间减去日期在RDLC中

时间:2018-01-30 07:31:14

标签: vb.net rdlc

这是我当前的代码/表达式,用于减去两个值:

 @XmlType(name = "SayHelloName", propOrder = {
    "arg0"
})

但如果它们中的任何一个为空,则表达式仍在继续,如下图所示,在总小时列中

I just want the total hours column has value if Clock in and clock out is not NULL

I.value =时钟

o.value = clock Out

谢谢你们!

1 个答案:

答案 0 :(得分:0)

您可以使用IsNothing()函数检查字段是否包含值。
在SSRS中要知道的另一个重要功能是IIF语句。这允许您根据表达式使用不同的输出。就像你的标准if-else块一样。

这是一个小例子,希望能够解释一下:

=IIF(IsNothing(Fields!I.Value) OR IsNothing(Fields!O.Value), "One of the fields NULL" , "Both fields have values")

下面是你实际想要使用的那个(我还没有测试过,但是如果你的公式是正确的那么这应该有用。)

=IIF(IsNothing(Fields!I.Value) OR IsNothing(Fields!O.Value), "" , RIGHT( Left( (fields!I.value - fields!O.value).ToString(), (fields!I.value - fields!O.value).ToString().Length - (fields!I.value - fields!O.value).ToString().LastIndexOf(".")), 8))

您应该考虑通过以下文档阅读:Expression Examples (Report Builder and SSRS)