2016-05-31 60 views
1

我目前正在爲某些醫院指標構建儀表板。該州要求我們報告平均關鍵時間。該儀表板將需要顯示每天的組中值時間,總列將需要顯示整個數據集的中位數。Report Builder 3.0將數據元素添加到數組

我與Report Builder 3.0和SQL服務器2014年工作

我已經建立了一個存儲過程,可以準確地計算所有這些值,但完成的意思是,這方式使得擴展數據集有點怪的當需要拉入一個新字段時

所有文章(例如this之一)我已經閱讀了計算報表生成器中的中值,指出需要顯示(或插入和隱藏)來自數據集的所有數據。這種方法對我來說看起來很不好,並且會讓這個儀表板成爲一個絕對的怪物,試圖隨着它的增長而進行管理。

我需要知道的是,有沒有辦法將組值傳遞給自定義代碼函數?報告必須有權訪問組值,否則將無法在這些組中執行內置聚合函數(Sum,First,Last等)。如果我無法將這些值作爲數組傳遞給自定義代碼函數,是否有人知道如何構建組合函數?

在此先感謝任何可能有指導我的人。

回答

0

您可以將過程中的值傳遞給SSRS中的函數,然後讓它顯示結果中位數。我會給你總結,讓你開始。

  1. 創建一個允許多個值的隱藏參數。

  2. 設置其可用值以從您的存儲過程填充的數據集中提取。

  3. 還設置其默認值,以便默認情況下選擇所有值。

  4. 轉到報告屬性的代碼部分編寫您的功能。

  5. 功能將參數像這樣這樣Public Function MyFunc(ByVal p1 as object()) as Integer

  6. 在函數的參數,你可以參考p1.Length和項目在數組中:p1(i)

  7. 在報告中,您可以在這樣的表達式中調用函數:=Code.MyFunc(Parameters!p1.Value)

希望這點能指出您的方向是正確的。

+0

這絕對讓我朝着正確的方向前進。謝謝你的幫助! – Murdok1011