2014-02-25 76 views
3

快速免責聲明:我是.Net開發人員,可能未提供有關該環境的所有信息,但可以根據請求獲取信息。我們有COBOL程序員,但他們從來沒有這樣做過。如何從DB2上的COBOL存儲過程調用COBOL批處理程序

我們將帶有DB2數據庫的大型機應用程序轉換爲帶有SQL數據庫的.Net MVC應用程序。有一個大型機COBOL批處理程序,我們想從DB2上的COBOL存儲過程調用。我讀過這可以完成,但我還沒有找到一個很好的例子來說明如何創建一個調用COBOL程序的COBOL存儲過程。 COBOL批處理程序需要約5個輸入參數,但不返回任何內容。

我們已經有一個鏈接服務器用於從SQL服務器調用DB2上的原生sql存儲過程。

編輯下面

我們看着解決我們問題的兩個方面備查 - 創建可以通過DB2大型主機z/OS上,我們會複製/粘貼運行中使用的COBOL存儲過程我們的COBOL來自CICS程序,並將其作爲存儲過程進行調整(從而完全切割CICS),或者使用CICS託管可以調用我們想調用的CICS程序的Web服務端點,就像在slide 21 of this PowerPoint上描述的那樣。

我們決定繼續推進第二種選擇,因爲有這樣的先例,所以這對我們來說會是更容易的途徑。

+0

你在哪裏遇到困難?定義存儲過程或編寫COBOL存儲過程?你想調用批處理程序還是想執行一個執行批處理程序的jobstream(JCL)? – cschneid

+0

我可以同時使用高級解釋(包括任何注意安全方面的注意事項以使DB2與大型機對話),並且能夠在Web上某處顯示此示例的引用會很好,或者到描述它的文檔。當我與我們團隊的COBOL程序員交談時,他們告訴我他們以前從未做過,也不知道該怎麼做,所以我想幫助他們。 –

+0

從「讓DB2與大型機對話」聽起來好像你想讓LUW上的DB2中的存儲過程調用System z上的程序(而不是存儲過程),這是否正確?這與你原來的問題明顯不同。 – cschneid

回答

2

有趣的問題!

我在想爲什麼不讓你的LUW DB2存儲過程調用一個事務管理器來執行你的cobol程序?如果你在大型機中使用事務管理器(我假設你這麼做!)。如果您不熟悉這一點,只需檢查您的大型機人員是否將事務管理器用作CICS或IMS。

我沒有這樣做,但它應該工作。

(二選一,請從DB2 SP A的HTTP/Web服務將執行執行你的COBOL程序IMS事務...)

我必須補充一點,我已經沒有嘗試過任何上述,我have'nt使用db2 luw。但也許這些想法值得在此提及?

+0

將此標記爲正確,因爲我們已決定採用您建議的路線 - 調用Web服務,就像[本幻燈片的第21張幻燈片](https://www.google.com/url?sa=t&rct=j&q= &ESRC = S&源=幅和CD = 1&VED = 0CCkQFjAA&URL = HTTP%3A%2F%2Fpublic.dhe.ibm.com%2Fsoftware%2Fhtp%2Fcics%2Ftserver%2FCICS_TS3.1_WebServices.ppt&EI = X_4VU5z9FqLCyQHoioHABg&USG = AFQjCNGHICyd-iWSU4falRtLCssVOBr2KA&SIG2 = QzRpmy2Eg8E6ZKlggNFxqw&BVM = bv.62286460, d.aWc&cad = rjt)描述。 –

+0

感謝您的反饋,祝您好運,並讓我們知道進展情況。 – MrSimpleMind