IMS call function codes
IMS Batch Terminal Simulator intercepts all IMS calls from the application program. The calls are handled differently depending on the type of application that is specified (./T TYPE= specification).
If TYPE=DLI is specified by the ./T command, all calls are passed directly to DL/I regardless of the PCB address specified in the call.
If TYPE=BMP, TYPE=MDB, TYPE=IFP, or TYPE=MSG is specified by the ./T command, then calls that refer to a PCB that is not a TPPCB are passed through to DL/I for processing. Calls that refer to the I/O PCB are handled as follows:
- When IMS Batch Terminal Simulator is run in an IMS batch region (that is, EXEC parameter KW=DLI or KW=DBB), IMS Batch Terminal Simulator handles the function codes listed in the following table, as well as GU, GN, ISRT, or PURG. Any other function code results in an 'AD' status code returned in the I/O PCB.
- When IMS Batch Terminal Simulator is run in an IMS batch region with ./T TYPE=IFP, IMS Batch Terminal Simulator handles the calls in the same way as when TYPE=MSG is specified.
The following table shows how the function codes are handled in an IMS batch region.
Call | Explanation |
---|---|
AUTH | A '␢␢' status code is returned in the I/O PCB, and the I/O area is filled up with X'00'. |
CHKP | If ./T TYPE=MSG or TYPE=MDB, the call is passed directly to DL/I. The call is then handled like a GU if the status code '␢␢' is returned. |
CMD | If ./T TYPE=MSG or TYPE=MDB, a '␢␢' status code is returned in the I/O PCB,
and the I/O area is filled up with X'00'. If ./T TYPE=BMP, an 'AD' status code is returned in the I/O PCB. |
DEQ | A '␢␢' status code is returned in the I/O PCB. If IMS Batch Terminal Simulator is running in an IMS DCCTL batch environment, an 'AD' status code is returned in the I/O PCB. |
GCMD | If ./T TYPE=MSG or TYPE=MDB, a '␢␢' status code is returned in the I/O PCB,
and the I/O area is filled up with X'00'. If ./T TYPE=BMP, a 'QE' status code is returned in the I/O PCB. If the I/O area length exceeds 132 bytes, the length is truncated to 132 bytes. |
GSCD | The call is passed directly to DL/I. |
INIT | The call is passed directly to DL/I. |
INQY | The call is passed directly to DL/I,
then the
data is returned in the I/O area. The returned data depends on a subfunction. See IMS call limitations. |
LOG | If IEFRDER DD is valid and BKO=Y is specified
by the EXEC parameter, this call is passed directly to the DL/I. For other cases, the call is checked for validity and the appropriate status code is returned. No logging occurs. |
ROLB | If IEFRDER DD is valid and BKO=Y is specified
by the EXEC parameter, this call is passed directly to the DL/I. For other cases, an 'AL' status code is returned in the I/O PCB. |
ROLL | The call is passed directly to DL/I. |
ROLS | If IMS Batch Terminal Simulator is running with Db2® DL/I Batch Support, an 'RC' status code is returned in the I/O PCB. Otherwise, the call is passed directly to DL/I. |
SETO | This call is checked for validity and the appropriate status code is returned. You do not need to set the processing options. |
SETS | If IMS Batch Terminal Simulator is running with Db2 DL/I Batch Support, a '␢␢' status code is returned in the I/O PCB. Otherwise, the call is passed directly to DL/I. |
SETU | The call is passed directly to DL/I. |
SYNC | If ./T TYPE=MSG or TYPE=MDB, an 'AD' status code is returned in the I/O PCB.
If ./T TYPE=BMP, IMS Batch Terminal Simulator issues a CHKP call to DL/I on the behalf of the caller. A '␢␢' status code is returned in the I/O PCB. |
XRST | If ./T TYPE=MSG, an 'AD' status code is returned
in the I/O PCB. If ./T TYPE=BMP or TYPE=MDB, the call is passed directly to DL/I. |
When IMS Batch Terminal Simulator is run in an IMS online region (that is, EXEC parameter KW=BMP and JBP), IMS Batch Terminal Simulator handles the function codes listed in the following table, as well as GU or GN. Any other function code is passed directly to DL/I.
Call | Explanation |
---|---|
CHKP | If ./T TYPE=MSG or TYPE=MDB, the call is passed directly to DL/I. Then, if the
status code '␢␢' is returned, call is then handled like a GU. If ./T TYPE=BMP, the call is passed directly to DL/I. |
CHNG | This call is simulated
by IMS Batch Terminal Simulator.
If ./E SPLAPI=YES and Advanced Print Function Options is specified, the call is passed directly to DL/I for Spool API Functions. |
CMD | If ./T TYPE=MSG or TYPE=MDB, a '␢␢' status code is returned in the I/O PCB,
and the I/O area is filled up with X'00'. If ./T TYPE=BMP, an 'AD' status code is returned in the I/O PCB. |
GCMD | If ./T TYPE=MSG or TYPE=MDB, a '␢␢' status code is returned in the I/O PCB,
and the I/O area is filled up with X'00'. If ./T TYPE=BMP, a 'QE' status code is returned in the I/O PCB. If the I/O area length exceeds 132 bytes, the length is truncated to 132 bytes. |
INQY | The call is passed directly to DL/I,
and then
the data is returned in the I/O area. The returned data depends on
a subfunction. See IMS call limitations. |
ISRT | If ISRT issues a call for an alternative PCB that has been set up for IAFP processing, the call is passed directly to DL/I. |
PURG | If PURG issues a call for an alternative PCB that has been set up for IAFP processing, the call is passed directly to DL/I. |
SETO | If ./E SPLAPI=YES and Advanced Print Function Options is specified, the call is passed directly to DL/I for Spool API Functions. |
SYNC | If ./T TYPE=MSG or TYPE=MDB, an 'AD' status code is returned in the I/O PCB.
If ./T TYPE=BMP or TYPE=JMP, IMS Batch Terminal Simulator issues a SYNC call to DL/I on the behalf of the caller. A '␢␢' status code is returned in the I/O PCB. |
XRST | If ./T TYPE=MSG, an 'AD' status code is returned
in the I/O PCB. If ./T TYPE=BMP or TYPE=MDB, the call is passed directly to DL/I. |
When IMS Batch Terminal Simulator is run in an IMS online region for a message-driven BMP (that is, EXEC parameter KW=BMP and IN=transaction code), IMS Batch Terminal Simulator handles the function codes listed in the following table for a message-driven BMP. Any other function code is handled as in a non-message-driven online IMS environment.
Call | Explanation |
---|---|
CMD | If ./T TYPE=MSG or TYPE=MDB, the call is passed directly to DL/I. |
GCMD | If ./T TYPE=MSG or TYPE=MDB, the call is passed directly to DL/I. |
IMS Batch Terminal Simulator supports the ICAL function code by passing it directly to DL/I. When IMS Batch Terminal Simulator is run in an IMS online region (that is, EXEC parameter KW=BMP or JBP) where IMS supports the ICAL function code, an ICAL call enables the application program to send a synchronous request to a non-IMS program or a service that runs in a z/OS® or distributed environment. When IMS Batch Terminal Simulator is run in an IMS batch region (that is, EXEC parameter KW=DLI or DBB) where IMS does not support the ICAL function code, an ICAL call fails with DL/I return and reason codes.