IMS request

You can use the IMS request to make an IMS or Fast Path database request against the currently scheduled PSB.

You must fill in the following input fields in the PAPL:

Field
Contents
PAPLFUNC
PAPLTFUN
PAPLSFNC
PAPLDLI, DL1 request subfunction code
PAPLCTOK
DRA request token (output from an INIT request)
PAPLCTK2
Thread Token number 2. This is the DRA request token that is part of the output from a SCHED request.
PAPLTTOK
Thread token set up by the CCTL
PAPLRTOK
RTOKEN

A 16-byte UOR token.

PAPLCLST
The address of an IMS call list.
PAPLALAN
Application language type. This must reflect how the call list is set up. If PAPLALAN=‘PLI', the DRA expects the call list to contain pointers to the PCB's pointers. For any other programming language, the DRA expects direct pointers.

PAPLALAN does not have to match PAPLPLAN which schedules request returns. For example, if PAPLPLAN=PLI, the PCBLIST in UPSTOR points to an indirect list. If specified, the CCTL can use this to create a PCBLIST that application programs use. If the application programs are written in COBOL, the CCTL may create a new PCBLIST without pointers as long as the new list actually points to PCBs in UPSTOR. The application program IMS call lists can specify PAPLALAN=COBOL, and the DRA will not expect pointers in the call list.

In addition to the required input parameters, the optional input parameters include:

Field
Contents
PAPLTECB
To use the default Suspend exit routine and Resume exit routine, each DRA request must have the field PAPLTECB set with the address of a CCTL ECB to be used if the thread is waited or posted. If your CCTL does not provide Suspend and Resume exit routines, the DRA default exit routines will be used.

The output fields returned in the PAPL to the CCTL are:

Field
Contents
PAPLRETC
Code returned
PAPLSEGL
Length of data returned