|
外部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のみをサポートします。
ART CICSでは、EXCIリクエストを行うためのDFHXCIS APIがサポートされます(DFHXCISはクライアント・プログラムでEXCI CALLを行うプロシージャAPIです)。
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/.tuxAppProfileです。
EXCIクライアントによって発行されるDPLプログラムでは、EXEC CICS ASSIGN USERID()コマンドが次を返します。
Tuxedo ubbconfig内にセキュリティ・レベルが設定されていない場合は、$USER環境変数の値。Tuxedo ubbconfig内でセキュリティ・レベルを有効化する場合は、genappprofileツールのUSERID入力値。USERIDの値は、tuxAppProfileから取得され、DPLリクエストによって渡されます。
詳細は、Oracle Tuxedo Application Runtime for Batchのドキュメントを参照してください。
EXCIクライアントによって発行されるDPLプログラムでは、EXEC CICS ASSIGN USERNAME() コマンドが次を返します。
Tuxedo ubbconfig内にセキュリティ・レベルが設定されているかどうかにかかわらず、$USERNAME環境変数の値。
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
|