アプリケーション プログラムに必要な各ユーザー出口は、その出口が呼び出される前に有効にする必要があります。アプリケーション プログラムがユーザー出口の使用を終了したら、そのユーザー出口を無効にすることができます。ただし、ユーザー出口を無効にする必要性はありません。CICS の起動時には、ユーザー出口は常にデフォルトで無効になります。ユーザー出口プログラムを有効にする場合は CICS コマンド ENABLE PROGRAM を使用し、無効にする場合は CICS コマンド DISABLE PROGRAM を使用します。無効な出口を有効にしようとすると、X'804000' の EIBRCODE が返されます。正当であるが実装されていない出口を有効にしようとすると、X'804010' の EIBRCODE が返されます。また、EXTRACT EXIT コマンドも用意されています。ユーザー出口プログラムの作業領域にアクセスするには、このコマンドを使用します。これらのコマンドに提供されるサポートのレベルの詳細については、トピック「System Programmers Commands」を参照してください。
各ユーザー出口プログラムは、プログラムとして (PLT で) 定義する必要があり、その定義は稼働中のシステムで利用できなければなりません。
グローバル ユーザー出口とタスク関連ユーザー出口の詳細については、IBM マニュアルの『CICS/ESA 3.3 Customization Guide』を参照してください。このマニュアルには、正当なユーザー出口ポイントの一覧が記載されています。
ユーザー出口プログラムには、それがグローバル ユーザー出口とタスク関連ユーザー出口のどちらを対象としているかにかかわらず、次の 2 つのコピーブックをインクルードする必要があります。
78 78-uxi-TRUE value 1. 78 78-uxi-XZCATT value 2. 78 78-uxi-XZCIN value 3. 78 78-uxi-XZCOUT value 4. 78 78-uxi-XEIIN value 5. 78 78-uxi-XEIOUT value 6. 78 78-uxi-XFCFSHRO value 7. 78 78-uxi-XWBOPEN value 8. 78 78-uxi-XWBSNDO value 9. 78 78-uxi-XWBAUTH value 10. 610668 78 78-uxi-XFAINTU value 11. 78 78-exi-rc-UERCBYP value 4. ***--------------------------------------------------------------* *** Base parameters * ***--------------------------------------------------------------* 01 uxi-user-exit-interface. 02 uxi-operational-flags-ptr pointer. 02 uxi-scheduling-flags-ptr pointer. 02 uxi-global-area-ptr pointer. 02 uxi-global-area-length pic x(4) comp-5. 02 uxi-local-area-ptr pointer. 02 uxi-local-area-length pic x(4) comp-5. 02 uxi-dfheiblk-ptr pointer. 02 uxi-unit-of-recovery-ptr pointer. ***--------------------------------------------------------------* *** Exit specific parameters * ***--------------------------------------------------------------* 02 uxi-exit-specific-ptrs. *> XZCAT In/Ot XEin/ot FSHRO XWB???? 03 uxi-resource-ptr pointer. *> TCTTE TCTTE Arg lst Buffer 03 uxi-resource-data-ptr pointer. *> TIOA TIOA UserID UserID 03 uxi-res-data-len-ptr pointer. *> * * 03 uxi-aux-1-ptr pointer. *> 62TPN program F-Name ParmList 03 uxi-aux-1-length-ptr pointer. *> * * 03 uxi-aux-2-ptr pointer. *> Tran Sys EIB Keys 03 uxi-aux-2-length-ptr pointer. *> 03 uxi-aux-3-ptr pointer. *> TEUA TEUA 03 uxi-aux-3-length-ptr pointer. *> * * 03 uxi-aux-4-ptr pointer. *> ComA ComA 03 uxi-aux-4-length-ptr pointer. *> * * 03 pointer. *> 610668 02 redefines uxi-exit-specific-ptrs. *> XFAINTU 610668 03 uxi-xfaintu-uepfareq-ptr *> UEPFAREQ 610668 pointer. 610668 03 uxi-xfaintu-uepfatut-ptr *> UEPFATUT 610668 pointer. 610668 03 uxi-xfaintu-uepfanam-ptr *> UEPFANAM 610668 pointer. 610668 03 uxi-xfaintu-uepfatyp-ptr *> UEPFATYP 610668 pointer. 610668 03 uxi-xfaintu-uepfauaa-ptr *> UEPFAUAA 610668 pointer. 610668 03 uxi-xfaintu-uepfaual-ptr *> UEPFAUAL 610668 pointer. 610668 03 uxi-xfaintu-uepfatk-ptr *> UEPFATK 610668 pointer. 610668 03 uxi-xfaintu-uepfamch-ptr *> UEPFAMCH 610668 pointer. 610668 03 uxi-xfaintu-uepfareg-ptr *> UEPFAREG 610668 pointer. sc-f74 03 pointer. sc-f74 03 pointer. sc-f74 03 pointer. ***--------------------------------------------------------------* *** System parameters * ***--------------------------------------------------------------* 02 uxi-PCA-ptr pointer. 02 uxi-CSA-ptr pointer. 02 uxi-DCA-ptr pointer. 02 uxi-local-trace-table-ptr pointer. *----------------------------------------------------------------* * dfhcbuxi.cpy end *----------------------------------------------------------------*
01 lk-uxc-operation. 03 lk-uxc-exit-id pic x comp-x. 88 lk-uxc-TRUE-88 value 78-uxi-TRUE. 88 lk-uxc-XZCATT-88 value 78-uxi-XZCATT. 88 lk-uxc-XZCIN-88 value 78-uxi-XZCIN. 88 lk-uxc-XZCOUT-88 value 78-uxi-XZCOUT. 88 lk-uxc-XEIIN-88 value 78-uxi-XEIIN. 88 lk-uxc-XEIOUT-88 value 78-uxi-XEIOUT. 88 lk-uxc-XFCFSHRO-88 value 78-uxi-XFCFSHRO. 03 lk-uxc-schedule pic x. 88 lk-uxc-generic-88 value x'80'. 88 lk-uxc-TRUE-on-start-88 value x'80'. 88 lk-uxc-TRUE-on-sync-88 value x'40'. 88 lk-uxc-TRUE-on-prep-88 value x'20'. 88 lk-uxc-TRUE-on-tr-wrap-88 value x'01'. 03 lk-uxc-modifier pic x comp-x. 88 lk-uxc-user-syncpoint-88 value 0. 88 lk-uxc-task-syncpoint-88 value 1. 88 lk-uxc-task-start-88 value 2. Y97157 88 lk-uxc-re-initialization-88 value 253. 88 lk-uxc-initialization-88 value 254. Y97157 88 lk-uxc-initialization-88m value 253 254. 88 lk-uxc-shutdown-88 value 255. 03 lk-uxc-action pic x comp-x. 88 lk-uxc-syncpoint-commit-88 value 0. 88 lk-uxc-syncpoint-rollback-88 value 1. 88 lk-uxc-syncpoint-prepare-88 value 2. 03 lk-uxc-return-code pic x(4) comp-5. a82573 88 ws-uex-max-rc-uercbyp-88 value 4. 01 lk-uxc-schedule-parm. 03 lk-uxc-schedule-byte pic x. 03 lk-uxc-schedule-byte-bin redefines lk-uxc-schedule-byte pic x comp-x. 78 78-lk-uxc-TRUE-on-start value h'80'. 78 78-lk-uxc-TRUE-on-sync value h'40'. 78 78-lk-uxc-TRUE-on-prep value h'20'. 78 78-lk-uxc-TRUE-on-tr-wrap value h'01'. *----------------------------------------------------------------* * dfhcbuxc.cpy end *----------------------------------------------------------------*