[英]SSRS - Multi Value Parameter Expression
我有以下表達式,它應該出現在報告的標題上。 但是,當我為一個應該屬於else語句的單個實體運行它時,它會顯示錯誤而不是Label。
參數是一個多值參數。 如果我選擇3個參數,它工作正常,因此else語句正常工作。 但是當我只選擇1個值時,它會返回錯誤。 我究竟做錯了什么。
=IIF(
(Parameters!Parameter1.Count = 2 AND ((Parameters!Parameter1.Value(0)= 4589 AND Parameters!Parameter1.Value(1) = 4324) OR (Parameters!Parameter1.Value(1)= 4589 AND Parameters!Parameter1.Value(0)) = 4324)), "HLITE LLC",
JOIN(Parameters!Parameter1.Label," & ")
)
我也嘗試過以下方法:
= SWITCH(
Parameters!Parameter1.Count = 1 , lookup(Parameters!Parameter1.Value(0), Fields!Legal_Entity_ID.Value, Fields!Legal_Entity.Value, "DataSet2"),
(Parameters!Parameter1.Count = 2 AND ((Parameters!Parameter1.Value(0)= 4589 AND Parameters!Parameter1.Value(1) = 4324) OR (Parameters!Parameter1.Value(1)= 4589 AND Parameters!Parameter1.Value(0)) = 4324)), "HHLITE"
)
這也失敗了。 但查找表達式本身是有效的,而COUNT是1
我認為這個問題是不存在的值(1)如果只有1選擇。
也許嵌套IIF可行:
=IIF(Parameters!Parameter1.Count = 2,
IIF((Parameters!Parameter1.Value(0)= 4589 AND Parameters!Parameter1.Value(1) = 4324)
OR (Parameters!Parameter1.Value(1)= 4589 AND Parameters!Parameter1.Value(0)) = 4324),
"HLITE LLC",
JOIN(Parameters!Parameter1.Label," & "),
JOIN(Parameters!Parameter1.Label," & "))
這樣,它只檢查值(1)是否有2。
如果一切都失敗了,
=IIF(JOIN(Parameters!Parameter1.Label," & ") = "4324 & 4589", "HLITE LLC", JOIN(Parameters!Parameter1.Label," & "))
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.