EasyManua.ls Logo

IBM SC34-6814-04 - Page 212

IBM SC34-6814-04
953 pages
To Next Page IconTo Next Page
To Next Page IconTo Next Page
To Previous Page IconTo Previous Page
To Previous Page IconTo Previous Page
Loading...
XPI calls
All can be used.
Exit XPCTA
XPCTA is invoked immediately after a transaction abend, and before any
processing that might modify the existing environment so that the task could not be
resumed. You can use it to:
v Set a resume address, instead of letting CICS process the abend
v Specify the subspace that control is passed in.
If a resume address is passed back, registers 0 through 13 and 15 are restored to
their values at the time of the abend. Register 14 is used to branch to the resume
address. If the exit sets a return code of zero, or a resume address of zero, CICS
processes the abend.
Note: If the transaction abend occurs as a result of a program check or an
operating system abend:
1. It is possible that the XDUREQ dump domain exit may be invoked before
XPCTA. (For details of XDUREQ, see page “Exit XDUREQ” on page 53.)
2. If a resume address is passed back, registers 0 through 15 are restored
to their value at the time of the abend. The PSW is used to branch to the
resume address.
A resume address, normally obtained from the return code UERCMEA from XPCTA,
is ignored for C and C++ programs compiled with the XPLINK option.
When invoked
After an abend and before the environment is modified.
Exit-specific parameters
UEPPCDS
Address of a storage area that contains program- and
terminal-related information, and that can be mapped using the
DSECT DFHPCUE. When XPCTA is invoked, the following
DFHPCUE fields are significant:
PCUE_CONTROL_BITS
1-byte flag field. A setting of PCUECBTE indicates that the
transaction is linked to a terminal.
A flag, PCUE_NO_RESUME, in PCUE_CONTROL_BITS
indicates that a resume address is not supported. When
set, any return code of UERCMEA from XPCTA is ignored.
This flag is set by CICS before invoking XPCTA for C and
C++ programs compiled with the XPLINK option.
PCUE_TASK_NUMBER
3-character packed decimal field containing the task
number.
PCUE_TRANSACTION_ID
4-character field containing the transaction ID.
PCUE_TERMINAL_ID
4-character field containing the terminal ID (if any).
PCUE_PROGRAM_NAME
8-character field containing the name of the failing program.
190 Customization Guide

Table of Contents

Related product manuals