[英]How to write SSRS expression with OR condition involving a field and a parameter?
我有一組tablix結果,我試圖根據OR條件進行過濾,但是我很難將兩者組合成一個自定義表達式。 [IsSafetyObservation]只是一個布爾字段,[部門]必須是[@部門]的多選參數值的一部分。 這是兩個單獨的過濾器的屏幕截圖,但這是AND條件。 當我嘗試編寫自定義表達式時,我沒有使用write語法,因為在嘗試引用@Department參數時出現紅線
您需要像嘗試的那樣將表達式組合成一個表達式,但是應該使用InStr而不是使用IN。 InStr在另一個字符串中搜索一個字符串,然后返回位置或0(如果找不到)。
首先,您需要使用JOIN將參數組合成字符串。
JOIN(Parameters!Department.Value, ",")
這會將您的參數組合成一個字符串,您現在可以在Department參數中搜索Department字段。
InStr(JOIN(Parameters!Department.Value, ","), Fields!Department.Value) > 0
另外,SSRS並非總是適用於布爾值(ugh)-因此= (1 = 1)
的表達式在某些地方可能適用於布爾結果,但在其他地方則不適用,因此最好指定:
=IIF(InStr(JOIN(Parameters!Department.Value, ","), Fields!Department.Value) > 0
OR Fields!IsSafetyObservation.Value = False,
True,
False)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.