画面・帳票サポートシステム XMAP3 メインフレーム連携ガイド
PC上のGUI画面を使用して,メインフレーム上のAPを実行する場合のユーザ業務例(XDM/DCCM3オンライン,またはDCCM3オンライン),およびメインフレーム上のAPと,PC上の画面管理プログラムとのインタフェースについて説明します。
ここで前提とするシステムは,メインフレームのOSをVOS3またはVOS1とし,メインフレーム上のAPとPCは1対1になる構成とします。メインフレームとPCとの通信は拡張ホストアクセスを利用し,PC側で使用する画面管理プログラムは「ONLNPROC.C」です。
GUI画面を使用したユーザ業務例として,受注データ処理,および受注伝票発行業務処理を想定します。ここでは,受注伝票発行業務画面を使用した受注データの修正について,作業の流れとインタフェースの仕組みおよび画面管理プログラムのコーディング例を示します。
画面および作業の遷移を次の図に示します。
図B-1 GUI画面を使用した受注伝票発行業務例
受注伝票発行業務画面の受注データ修正の処理の流れを次に示します。
********************************************************* * 受注伝票発行業務プログラム * * (ディスプレイ仮想端末オープン) ********************************************************* IDENTIFICATION DIVISION. PROGRAM-ID. UP01. ENVIRONMENT DIVISION. DATA DIVISION. WORKING-STORAGE SECTION. * 送受信用メッセージテーブル COPY X3TRNTBL. * トランザクションコード&要求種別 COPY UPTBL. * 通信節 COMMUNICATION SECTION. CD MSG FOR I-O MAP NAME IS MAP-NAME STATUS KEY IS ERR-CODE. ********************************************************* PROCEDURE DIVISION. ********************************************************* * 受信 ********************************************************* * メッセージ受信 SECTION. ********************************************************* RECEIVE MSG FIRST SEGMENT INTO XMAP-RECV. * 業務開始 MOVE '00000' TO ERR-CODE MOVE '%MMC1R ' TO MAP-NAME * メッセージ設定 MOVE 2920 TO XMAP-SEND-MAPL MOVE XMAP-SENDT TO XMAP-SEND MOVE UAPNAME TO XMAP-SEND-UAP MOVE TRNCODE1 TO XMAP-SEND-TRN MOVE REQ-OPEN TO XMAP-SEND-REQ MOVE DSPTERM TO XMAP-SEND-TNAME MOVE ALL X'00' TO XMAP-SEND-PMAPNAME MOVE +0 TO XMAP-SEND-INLNG * 送信 ********************************************************* メッセージ送信 SECTION . ********************************************************* SEND MSG FROM XMAP-SEND WITH EMI. GOBACK.
********************************************************* * 受注伝票発行業務プログラム * * (メニュー画面表示) ********************************************************* IDENTIFICATION DIVISION. PROGRAM-ID. UP12. ENVIRONMENT DIVISION. DATA DIVISION. WORKING-STORAGE SECTION. * 論理マップ COPY MAPG01O. COPY MAPG01I. * 送受信用メッセージテーブル COPY X3TRNTBL. * 動的変更テーブル COPY X3MODTBL. * トランザクションコード&要求種別 COPY UPTBL. * 通信節 COMMUNICATION SECTION. CD MSG FOR I-O MAP NAME IS MAP-NAME STATUS KEY IS ERR-CODE. ********************************************************* PROCEDURE DIVISION. ********************************************************* * 受信 RECEIVE MSG FIRST SEGMENT INTO XMAP-RECV. ********************************************************* ユーザ業務処理部 ********************************************************* * 業務開始 MOVE '00000' TO ERR-CODE MOVE '%MMC1R ' TO MAP-NAME MOVE ALL X'3F' TO MAPG01G MOVE XMAP-CNTRL1 TO MAPG01-CNTRLO * メッセージ設定 MOVE 2920 TO XMAP-SEND-MAPL MOVE XMAP-SENDT TO XMAP-SEND MOVE UAPNAME TO XMAP-SEND-UAP MOVE TRNCODE3 TO XMAP-SEND-TRN MOVE REQ-TRAN TO XMAP-SEND-REQ MOVE DSPTERM TO XMAP-SEND-TNAME MOVE 'MAPG01ND' TO XMAP-SEND-PMAPNAME MOVE MAPG01S TO XMAP-SEND-INLNG COMPUTE XMAP-SEND-MAPL = MAPG01L - 4 MOVE MAPG01O TO XMAP-SEND-MAPO * 送信 COMPUTE XMAP-SEND-LL2 = XMAP-SEND-LL2 + XMAP-SEND-MAPL COMPUTE XMAP-SEND-LL = XMAP-SEND-LL + XMAP-SEND-MAPL SEND MSG FROM XMAP-SEND WITH EMI. GOBACK.
********************************************************* * 受注伝票発行業務プログラム * * (ディスプレイ仮想端末クローズ) ********************************************************* IDENTIFICATION DIVISION. PROGRAM-ID. UP20. ENVIRONMENT DIVISION. DATA DIVISION. WORKING-STORAGE SECTION. * 送受信用メッセージテーブル COPY X3TRNTBL. * トランザクションコード&要求種別 COPY UPTBL. * 通信節 COMMUNICATION SECTION. CD MSG FOR I-O MAP NAME IS MAP-NAME STATUS KEY IS ERR-CODE. ********************************************************* PROCEDURE DIVISION. ********************************************************* * 受信 ********************************************************* メッセージ受信 SECTION. ********************************************************* RECEIVE MSG FIRST SEGMENT INTO XMAP-RECV. * 業務開始 MOVE '00000' TO ERR-CODE MOVE '%MMC1R ' TO MAP-NAME * メッセージ設定 MOVE 2920 TO XMAP-SEND-MAPL MOVE XMAP-SENDT TO XMAP-SEND MOVE UAPNAME TO XMAP-SEND-UAP MOVE TRNCODE8 TO XMAP-SEND-TRN MOVE REQ-CLOS TO XMAP-SEND-REQ MOVE DSPTERM TO XMAP-SEND-TNAME MOVE ALL X'00' TO XMAP-SEND-PMAPNAME MOVE +0 TO XMAP-SEND-INLNG * 送信 ********************************************************* メッセージ送信 SECTION. ********************************************************* SEND MSG FROM XMAP-SEND WITH EMI . GOBACK.
********************************************************* * 受注伝票発行業務プログラム * * (業務終了) ********************************************************* IDENTIFICATION DIVISION. PROGRAM-ID. UP21. ENVIRONMENT DIVISION. DATA DIVISION. WORKING-STORAGE SECTION. * 送受信用メッセージテーブル COPY X3TRNTBL. * トランザクションコード&要求種別 COPY UPTBL. * 通信節 COMMUNICATION SECTION. CD MSG FOR I-O MAP NAME IS MAP-NAME STATUS KEY IS ERR-CODE. ********************************************************* PROCEDURE DIVISION. ********************************************************* * 受信 ********************************************************* メッセージ受信 SECTION. ********************************************************* RECEIVE MSG FIRST SEGMENT INTO XMAP-RECV. * 業務開始 MOVE '00000' TO ERR-CODE MOVE '%MMC1S ' TO MAP-NAME * メッセージ設定 MOVE 2920 TO XMAP-SEND-MAPL MOVE XMAP-SENDT TO XMAP-SEND MOVE UAPNAME TO XMAP-SEND-UAP MOVE REQ-END TO XMAP-SEND-REQ * 送信 ********************************************************* メッセージ送信 SECTION. ********************************************************* MOVE +14 TO XMAP-SEND-LL2 MOVE XMAP-SEND-LL = XMAP-SEND-LL1 + XMAP-SEND-LL2 + 4 SEND MSG FROM XMAP-SEND WITH EMI. GOBACK.
標準的なオンライン処理を行う画面管理プログラムのサンプル「ONLNPROC.C」について説明します。
2,920バイトを超えるデータをやり取りするための画面管理プログラムのサンプル「ONLNPRC2.C」について説明します。
対話処理を行うための画面管理プログラムのサンプル「TSSPROC.C」について説明します。
TP1/Client/Pと連携する画面管理プログラムのサンプル「TPCLPROC.C」について説明します。
TP1/Client/Pと連携する画面管理プログラムのサンプル「TPCLPRC2.C」について説明します。
COBOLで作成した画面管理プログラムのサンプル「ONLNPRC2.CBL」について説明します。
All Rights Reserved. Copyright (C) 2001, 2006, Hitachi, Ltd.