[英]SSRS Multi Value Parameter Count Expression
我正在嘗試根據選擇的多值參數通過文本框中的計數表達式來計算記錄數。
我的桌子:
WSVLWOs
WO_NUMBER WO_ACTN_TY
18-003759 Adjust to Grade
18-005909 Repair / Replace Box
18-002559 Repair / Replace Box
18-003229 Inspection
18-003224 Repair / Replace Box
我的計數表達式:
=Count(Fields!WO_NUMBER.Value, "WSVLWOs")
我的可用參數
Adjust to Grade
Repair / Replace Box
Inspection
桌子上的過濾器:
現在當我 select 多個參數時,它似乎沒有給我參數值的計數總和,只有一個參數值。 問題出在我的計數表達式中嗎?
您的過濾器表達式是
=Parameters!Tasks.Value(0) which is only the first selected parameter value.
有幾種方法可以解決此問題。
您應該能夠將您的表達式更改為=JOIN(Parameters.Tasks,Value, ",")
盡管這可能無法根據數據類型等進行。所有這些都是將逗號分隔的列表傳遞給過濾器。
但是,我會質疑這是否是最好的方法。 如果可以的話,我會在數據集查詢中進行過濾,因為這意味着只返回所需的數據,這讓你計算起來更加簡單。
如果您需要單獨的記錄但也需要計數,則返回所有必需的行,並使用看起來像這樣的數據集查詢。
SELECT * FROM WSVLWOs WHERE WO_ACTN_TY IN(@Tasks)
@Tasks
將被傳遞到查詢中,正確解析,您只會獲得所需的記錄。 您的COUNT()
表達式與 then 工作正常。
如果您只需要計數,那么您可以在數據集查詢中執行此操作並僅返回計數
SELECT COUNT(*) as myCount FROM WSVLWOs WHERE WO_ACTN_TY IN(@Tasks)
然后你可以從數據集中引用myCount
字段來得到你的答案。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.