iif(Fields!ABC.Value< = Fields!XYZ.Value and Fields!XYZ.Value< = Fields!PQR,“Y”,“N”)
此处ABC,XYZ和PQR是日期字段。
问题是如果任何ABC / XYZ / PQR为空,那么它总是返回N但我想如果其中任何一个为空,那么条件忽略空白并检查下一个条件
例如。如果ABC为空,那么Fields!ABC.Value< = Fields!XYZ.Value将被忽略,并且检查条件并检查并根据该值返回值。
请建议任何解决方案。 提前谢谢。
答案 0 :(得分:1)
因为只在另一个条件为真时才检查条件,所以你需要嵌套iif
。再次,因为如果任何日期为空,您想要跳过条件,则需要在将它们放入iif
块之前检查每个日期。
您可以尝试这样的事情
=iif(
iif(isnothing(Fields!ABC.Value) or isnothing(Fields!XYZ.Value),true,Fields!ABC.Value<=Fields!XYZ.Value) and
iif(isnothing(Fields!XYZ.Value) or isnothing(Fields!PQR .Value),true,Fields!XYZ.Value<=Fields!PQR.Value) ,"Y","N")