![]() ![]() ![]() ![]() ![]() ![]() ![]() |
外部CICSインタフェースは、MVSで実行されるCICS以外のプログラムを有効化するアプリケーション・プログラミング・インタフェースです。次の操作を実行できます。
外部CICSインタフェースは、2種類の形式のプログラミング・インタフェースを提供します。
それぞれのEXCI ART CICS
プログラムは、resource/program.desc
ファイル内でDPLサービスとして定義する必要があります。7番目の列にはCICS SYSID
を含める必要があり、サービスは<SYSID>_<PROGRAM>
という名前で通知されます。
transaction.desc
でDFHMIRS
を使用してミラー・トランザクションが定義されている場合、DPLは<APPLID>_MIRROR_<TRANSID>
またはMIRROR_<TRANSID>
という名前でサービスを通知します。
すべてのDPLリクエストがSYNCONRETURN
を使用して実行され、RRMSの制御化にない場合、Tuxedoクライアントではリソース・マネージャは必要ありません。最初のEXCIリクエスト・プロセス中に初期化が実行され、Tuxedoセッションはクライアント・プロセスの最後に終了されます。
RRMSが使用されるか、または1つのDPLリクエストがSYNCONRETURN
を使用せずに実行される場合、Tuxedoクライアント・プロセスは1つのリソース・マネージャを使用して構築する必要があります。初期化時にリソース・マネージャが開かれ、クライアント・プロセスの開始時にトランザクションが始まります。これらの手順のいずれかが正常に実行されない場合、クライアント・プロセスは中断します。クライアント・プロセスが通常どおりに終了すると、トランザクションがクライアント・プログラム(RSSCMIT
)によって明示的に実行されない場合、そのトランザクションはコミットされます。クライアント・プロセスが異常に終了すると、トランザクションはロールバックされます。これらのいずれかの場合、リソース・マネージャが閉じられ、Tuxedoセッションが終了されます。
EXCIプリコンパイラ・オプションは、CICSクライアント・バッチ・プログラム用に使用する必要があります。
COBOLプリコンパイラは、EXCI CALL
または1つのCICSコマンド(EXEC CICS LINK
)のみを次に説明するオプションとともにサポートします。Cプリコンパイラは、EXCI EXEC CICS LINK
のみをサポートします。
EXEC CICS LINK
の場合、RETCODE
コマンド・オプションはEXCI
で必須ですが、NOEXCI
では禁止されており、APPLID
オプションはEXCI
専用です。EXCI
を使用しない場合、SYSID
オプションを使用できます。
EXCIプリコンパイラ・オプションを使用する場合、DFHEIBLK
もDFHCOMMAREA
もPROCEDURE DIVISION USING
パラメータとして生成されません。
EXCIプリコンパイラ・オプションは、7番目の列から含まれるCOBOLコメント行を挿入すると設定されます。
*KIX--OPTION EXCI
EXCI Cプリコンパイラ・オプションは、-B
で設定されます。
ART CICSがサポートするEXCI EXEC CICS LINK
コマンドは、PROGRAM (name)
、APPLID (name)
およびTRANSID (name)
です。DATALENGTH (data-value)
は認識されます。
Tuxedo構成のSECURITY
レベルによってアクセス認証が実行されます。
MT_EXCIAPPPROFILE
環境変数は、genappprofile ARTKIX
ツールによって生成されるアプリケーション・プロファイル・ファイル名を提供します。デフォルト・ファイル名は$HOME/.EXCIappProfile
です。
DPLサービスでは、EXEC CICS ASSIGN USERID()
コマンドが次を返します。
詳細は、ART Batch Runtimeのドキュメントを参照してください。
EXCIインタフェースを介してリンクされるプログラムは、ARTDPL
サーバーによって通知されます。そのプログラム名は<program>_<sysid>
となり、<program>
はリンクされるプログラム名(EXCI EXEC
インタフェースのoption PROGRAM(<program>
))で、<sysid>
はCICSシステムIDです。
EXCIインタフェースは、<applid>
CICSアプリケーションIDを使用して適切なCICS領域のアドレスを指定します。<applid>
と<sysid>
との間の関係は、<applid>_info
と言う名前の特定のDPLサーバー・サービス経由で構築されます。
DPLサーバー・コマンド・ライン(CLOPT)の-a
ユーザー・パラメータ値は、_info
サービスの<applid>
値として使用されます。
<applid>
がクライアント(APPLID(<applid>
を使用せずに) EXCI EXEC
インタフェース・オプション)によって省略される場合、default_info
サービスが呼び出されます。このサービスは、最初に起動されるDPLサーバーによって通知されます。
_info
サービスは、サーバー・コマンド・ラインの-s
ユーザー・パラメータによってサーバーに関連付けられる<sysid>
を返します。
ART CICSローリング・パッチ015以降、4つの新しいサービスがARTDPL
サーバーによって通知されます。
<applid>_CSMI
。<applid>
は、適切なCICSリージョンのアドレスを指定するCICSアプリケーションIDです。このサービスは、EXCIインタフェースでクライアントによって<transid>
は指定されないが、<applid>
は指定される場合に呼び出されます。CSMI
。このサービスは、EXCIインタフェースでクライアントによって<applid>
と<transid>
の両方とも指定されない場合に呼び出されます。<applid>_MIRROR_<transid>
。<applid>
は、適切なCICSリージョンのアドレスを指定するCICSアプリケーションIDで、<transid>
は、トランザクションIDです。このサービスは、EXCIインタフェースでクライアントによって<applid>
と<transid>
の両方が指定される場合に呼び出されます。MIRROR_<transid>
。<transid>
はトランザクションIDです。このサービスは、EXCIインタフェースでクライアントによって<applid>
は指定されないが、<transid>
は指定される場合に呼び出されます。VERSION-1
のみがサポートされます。USER-NAME
は、制御を持たないユーザー・トークンを生成するためにのみ使用されます。 DPL UOWID
は互換性を確保する目的でのみ保持され、設定およびテストされません。 PIPE-TYPE
に意味はありません。PIPE-TYPE
に対して認識される値は、X'00'
および(X'C3'またはX'D8)
のみです(X'C3'
およびX'D8'
は、コード・ページに応じて指定できるX'80'
EBCDICのASCII値です)。その他の値では、応答コードは12、理由コードは498に設定されます。SYNC-TYPE
に対して認識される値は、X'00'
および(X'C3'またはX'D8)
のみです(X'C3'
およびX'D8'
は、コード・ページに応じて指定できるX'80'
EBCDICのASCII値です)。その他の値では、応答コードは12、理由コードは499に設定されます。 SRRCMIT
およびSRRBACK
関数を使用できます。ATRCMIT
およびATRBACK
関数はサポートされていません。
SRRCMI
およびSRRBACK
関数は次のようにコーディングする必要があります。
01 SRR-RETCODE PIC 9(8) COMP-5.
CALL "SRRCMIT" USING SRR-RETCODE
CALL "SRRBACK" USING SRR-RETCODE
EXCI EXEC CICS Link
コマンドを使用するには、system.desc
、transactions.desc
およびprogram.desc
構成ファイルを構成する必要があります。
[SYSID]
APPLID={applid}
#TRANSNAME;GROUPNAME; DESCRIPTION; PROGRAM,hardcode with DFHMIRS
ECCI;SIMPDPL;pg for simpapp;DFHMIRS
#PROGRAM;GROUP;DESCRIPTION;LANGUAGE;EXECKEY;STATUS
TOUPSVR;SIMPDPL;pg for simpapp;COBOL; ;ENABLED;KIXD
![]() ![]() ![]() |