我在SSRS VS2008中有一個需要從Oracle運行Stord過程的報告。在過去,我運行Oracle的函數來返回表以顯示數據。除了直接的SELECT語句SSRS在Oracle中執行存儲過程
例如:
select * from table(MyFunction(:parm1, :parm2))
select * from MyTable
我還沒有遇到來自甲骨文在SSRS一個存儲過程,我想知道....
如何定義查詢在DataSet中返回結果?
我在SSRS VS2008中有一個需要從Oracle運行Stord過程的報告。在過去,我運行Oracle的函數來返回表以顯示數據。除了直接的SELECT語句SSRS在Oracle中執行存儲過程
例如:
select * from table(MyFunction(:parm1, :parm2))
select * from MyTable
我還沒有遇到來自甲骨文在SSRS一個存儲過程,我想知道....
如何定義查詢在DataSet中返回結果?
類型SYS_REFCURSOR的輸出參數創建一個存儲過程,並將其放置在顯示過程中的輸出遊標的查詢的結果 - 像這樣:
CREATE OR REPLACE PROCEDURE pr_myproc(L_CURSOR out SYS_REFCURSOR)
is
BEGIN
OPEN L_CURSOR FOR
SELECT * FROM mytable;
END;
然後在您的報告創建數據集 - 上Query選項卡,將Command類型設置爲StoredProcedure,將Query字符串設置爲該過程的名稱,例如。 pr_myproc。如果您檢查字段選項卡,它們應該匹配遊標的預期結構,即。查詢輸出。
這是偉大的....謝謝! – MikeTWebb 2010-10-27 15:58:44
您是直接訪問Oracle,還是通過鏈接服務器實例? – 2010-10-26 16:12:26
它直接訪問Oracle – MikeTWebb 2010-10-26 17:46:08