as if the exit program had not been invoked, and it is a valid option at most global
user exit points. The exceptions are shown in the list of return codes provided with
each exit description.
The return code currently established for an exit is addressed by parameter
UEPCRCA of DFHUEPAR, and it is needed when two or more exit programs are
used at one exit. For more information, see “Invoking more than one exit program
at a single exit” on page 13.
The return codes that are valid at each of the global user exit points are described
in “List of global user exit points” on page 19.
Important
v At some exit points, the return code UERCPURG is valid. These exits are
identified in the following tables. To prevent unpredictable results, you must
not set the return code UERCPURG except as described on page 289.
v Exit programs that issue EXEC CICS commands, and that use the
DFHEIENT macro, should use the DFHEIRET macro to set a return code
and return to CICS. The DFHEIRET macro:
– Restores registers
– Places a return code in register 15 after the registers are restored
– Returns control to the address in register 14.
For example:
DFHEIRET RCREG=nn
where “nn” is the number of any register (other than 13) that contains the
return code to be placed in register 15 after the registers are restored.
Restrictions on the use of fields as programming interfaces
The
CICS Data Areas
manual contains definitions of the control block fields that
form part of the Product-sensitive and General-use programming interfaces of
CICS. Fields that are not defined in the
CICS Data Areas
manual as either
Product-sensitive programming interface or General-use programming interface
fields are not intended for your use as part of a CICS programming interface.
Exit programs and the CICS storage protection facility
When you are running CICS with the storage protection facility, there are two points
you need to consider for global user exits:
1. The execution key in which your user exit programs run
2. The storage key of data storage obtained for your exit programs.
Execution key for global user exit programs
When you are running with storage protection active, CICS always invokes global
user exit programs in CICS key. Even if you specify EXECKEY(USER) on the
program resource definition, CICS forces CICS key when it passes control to the
exit program. However, if a global user exit program itself passes control to another
global user exit programs
Chapter 1. Global user exit programs 11