Exit XFCREQC

Exit XFCREQC is invoked after a file control API request has completed, and before return from the file control EXEC interface program. The exit is not invoked, on the target region, for function-shipped requests.

Exit-specific parameters
UEPCLPS
Address of the command-level parameter structure. See The UEPCLPS exit-specific parameter.
UEPFCTOK
Address of the 4 byte token passed from XFCREQ.
UEPRCODE
Address of a 6-byte hexadecimal copy of the EIB return code EIBRCODE. For details of EIB return codes, refer to EIB fields.
UEPRESP
Address of a 4-byte binary copy of the EIB response code EIBRESP.
Note: If the file that has just been accessed is remote, the addressed field contains zeros (even if UEPRCODE is non-zero).
UEPRESP2
Address of a 4-byte binary copy of the EIB response code EIBRESP2.
Note: If the file that has just been accessed is remote, the addressed field contains zeros (even if UEPRCODE is non-zero).
UEPTSTOK
Address of a 4-byte token that is valid throughout the life of a task. See Using the task token UEPTSTOK.
UEPRECUR
Address of a halfword recursion counter. The counter is set to 0 when the exit is first invoked, and is incremented for each recursive call.
UEPRSRCE
Address of an 8-character copy of the EIB resource value, EIBRSRCE.
Return codes
UERCNORM
Continue processing.
UERCPURG
Task purged during XPI call.
XPI calls
All can be used.

Although the exit permits the use of XPI GETMAIN and FREEMAIN calls, we recommend that you use the EXEC CICS GETMAIN and FREEMAIN commands instead.

API and SPI calls
All can be used, except for:
  • EXEC CICS® SHUTDOWN
  • EXEC CICS XCTL
Note:
  1. Take care when issuing recursive commands not to cause a loop. For example, it is your responsibility to avoid entering a loop when a file control request is issued from the XFCREQC exit. Use of the recursion counter UEPRECUR is recommended.
  2. Exit programs that issue EXEC CICS commands must first address the EIB. See Using CICS services.
  3. 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. See Returning values to CICS.

Example program

CICS supplies, in CICSTS54.CICS.SDFHSAMP, an example program, DFH$XTSE, that shows how to modify fields in the command-level parameter structure passed to EXEC interface exits.