Transient data EXEC interface program exits XTDEREQ and XTDEREQC

The XTDEREQ exit intercepts a transient data request before any action has been taken on it by transient data. The XTDEREQC exit intercepts a transient data request after transient data has completed its processing.

You can change the XTDEREQ exit to perform the following tasks:
  • Analyze the request to determine its type, the keywords specified, and their values.
  • Modify any value specified by the request before the command is executed.
  • Set return codes to specify either of the following instructions:
    • CICS® should continue with the request, with any modifications that you made.
    • CICS should bypass the request. If you set this return code, you must also set up return codes for the EXEC interface block (EIB), as if you had processed the request yourself.
You can change the XTDEREQC exit to perform the following tasks:
  • Analyze the request, to determine its type, the keywords specified, and their values.
  • Set return codes for the EIB.

The CICS transient data facility is threadsafe, so CICS can process transient data requests on an open TCB. Transient data requests are also threadsafe when you function ship them to a remote region over an IPIC connection. To optimize TCB switching and gain the performance benefits of the open transaction environment, programs that run at XTDEREQ and XTDEREQC must be coded to threadsafe standards and defined to CICS as threadsafe.

Both exits are passed eight parameters as follows:
  • The address of the command-level parameter structure.
  • The address of a token (UEPTDTOK) used to pass 4 bytes of data from XTDEREQ to XTDEREQC.
  • The addresses of copies of four pieces of return code and resource information from the EIB.
  • The address of a token (UEPTSTOK) that is valid throughout the life of a task.
  • The address of an exit recursion count (UEPRECUR).

Example program

CICS supplies, as a softcopy listing only and not as a source code file, an example program, DFH$XTSE, that shows how to modify fields in the command-level parameter structure passed to EXEC interface exits. DFH$XTSE is listed in The example program for the XTSEREQ global user exit, DFH$XTSE.