我正在编写一份报告,需要根据列中的特定值显示不同的日期计算。如果订单为“活动”,则启动时间为“现在”或者如果订单停止,则开始停止时间。
单个DateDiff表达式可以工作,但是当我尝试使用switch或IIF将它们组合在一个表达式中时,我会收到错误。
任何建议都会很棒。
=IIF(Fields!OrderStatus.Value="Active", DateDiff("d",Fields!OrderStartTime.Value, "Now"()),
IIF(Fields!OrderStatus.Value="Discontinued", DateDiff("d",Fields!OrderStartTime.Value, Fields!DiscontinueTime.Value)
)
)
=Switch(Fields!OrderStatus.Value="Active",
DateDiff("d",Fields!OrderStartTime.Value, "Now"()),
Fields!OrderStatus.Value="Discontinued",
DateDiff("d",Fields!OrderStartTime.Value, Fields!DiscontinueTime.Value),
)
答案 0 :(得分:0)
你缺少第二个iif语句的第三个参数(在这种情况下,它将是{Nothing}。这应该有效:
= IIF(字段!OrderStatus.Value = “有效”,则DateDiff( “d”,字段!OrderStartTime.Value,今天()),IIF(字段!OrderStatus.Value = “停产”,则DateDiff( “d” ,字段!OrderStartTime.Value,字段!DiscontinuedTime.Value),为Nothing))