2015-06-16 43 views
0

我在我的報告中使用下面的參數作爲表達式來輸入1 &之間的數字7.如何求和這一列?SSRS - 如何求和參數表達式?

=Parameters!NoofBookingsYear1.Value 
Expression: [@NoofBookingsYear1] 

數據按季節分組。

+0

我討厭當人們質疑我的問題,但.. 爲什麼你需要總結**參數** - 它是一個多值?您通常會將其與數據中的字段總和進行比較 - 如可見性= IIF(SUM(FIELDS!Bookings.Value)=參數!NoofBookingsYear1.Value,True,False) –

+0

是的,它基本上是一個多值參數[1 - 10]允許用戶選擇潛在的預訂,從而重新計算收入潛力。這組數據按季節,請參閱以下內容: - – Claire

+0

賽季\t均價\t潛在預訂\t \t總收入\t 中秋節\t£252 \t \t£755 非高峯\t£174 \t£522 \t 峯值\t£469 \t \t 3£\t \t 1407年 1目標\t£282 \t 9 ??? £845 – Claire

回答

0

不幸的是,沒有內置的方法來做到這一點。幸運的是,有Code可以解決限制問題。你需要一些VB代碼來總結你的參數。

對於你的表情,你會希望你的參數選擇的所有金額發送到求和函數:

=code.SumParam(Join(Parameters!q.Value, ", ")) 

爲您的代碼,你要分析出逗號,並添加數字:

Function SumParam(Param as string) as Decimal 

Start: 
SumParam = SumParam + Val(Left(Param, INSTR(Param, ",") - 1)) 

Param = Mid(Param, INSTR(Param, ",") + 1, len(Param)) 

If INSTR(Param, ",") > 0 Then Goto Start 

SumParam = SumParam + Val(Param) 

End Function 

我沒有任何錯誤檢查,所以如果有一個無效的值,它可能會出錯。