代码之家  ›  专栏  ›  技术社区  ›  benjiiiii

如果小于0,则设置为Null/空白-SQL Reporting Services

  •  0
  • benjiiiii  · 技术社区  · 7 年前

    我的报告运行了以下表达式。

    =DateDiff(DateInterval.Hour, Fields!ClockedIn.Value, Fields!ClockedOut.Value)
    

    虽然这可以满足我的需要,但如果用户忘记打卡,那么我需要它将工时值设置为空,或者显示一条消息,如“用户尚未打卡”

    这简单吗?

    编辑:我尝试了以下方法-这是正确的方法吗?

    =IIf((DateDiff(DateInterval.Hour, Fields!ClockedIn.Value, Fields!ClockedOut.Value)<0 = TRUE, "User not clocked out", DateDiff(DateInterval.Hour, Fields!ClockedIn.Value, Fields!ClockedOut.Value)))
    

    当前,这在TRUE后的逗号上出错

    1 回复  |  直到 7 年前
        1
  •  1
  •   Ravi Bharati Mathapati    7 年前

    试试这个。。。。

     =IIf((DateDiff(DateInterval.Hour, Fields!ClockedIn.Value, Fields!ClockedOut.Value)<0, NULL, DateDiff(DateInterval.Hour, Fields!ClockedIn.Value, Fields!ClockedOut.Value))