簡體   English   中英

SSRS 多值參數計數表達式

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM