![](/img/trans.png)
[英]How to use “And” and “Or” keywords together in a same “If” statement
[英]SSRS how to use If and format statement together for negative values
我試圖將秒顯示為分鍾。 有時我得到的價值是負的。 這會引起問題。 我想檢查該值是否為負,以便可以指定一個默認值。 但是我無法讓If和Format語句一起工作。
這是我所做的顯示值而不轉換為分鍾的操作:
=Fields!RateLossSeconds.Value
這是我將秒轉換為分鍾的方法:
=Format(DateAdd("s", Fields!RateLossSeconds.Value, "00:00"), "mm:ss")
這是我用來添加條件的代碼:
=IIF(Fields!RateLossSeconds.Value < 0, 0, Format(DateAdd("s", Fields!RateLossSeconds.Value, "00:00"), "mm:ss"))
如您所見,if語句無法按預期運行。
#Error是由於SSRS在IIF
邏輯流程之前評估整個IIF()
表達式引起的,因此,即使您正在處理負值,它也會檢查兩個分支是否有錯誤。
嘗試使用以下表達式:
=IIF(
Fields!RateLossSeconds.Value < 0, 0,
Format(
DateAdd("s",IIF(Fields!RateLossSeconds.Value<0,0,Fields!RateLossSeconds.Value),"00:00"),
"mm:ss"
)
)
它檢查第一個IIF()的False分支中是否存在負值。 在這種情況下,我將負值替換為零,但您可以使用任何想要的值。
讓我知道是否有幫助。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.