INQUIRE REQID

Retrieve information about a queued request.

INQUIRE REQID

Read syntax diagramSkip visual syntax diagramINQUIRE REQID(data-value )REQTYPE(cvda) TERMID(data-area)TRANSID(data-area)INTERVAL(data-area)TIME(data-area)AFTERhoursminutessecondsAThoursminutessecondsSET(ptr-ref)LENGTH(data-area)FMHSTATUS(cvda)RTRANSID(data-area)RTERMID(data-area)QUEUE(data-area)USERID(data-area)
hours
Read syntax diagramSkip visual syntax diagramHOURS(data-area )
minutes
Read syntax diagramSkip visual syntax diagramMINUTES(data-area )
seconds
Read syntax diagramSkip visual syntax diagramSECONDS(data-area )

Conditions: END, ILLOGIC, INVREQ, NOTAUTH, NOTFND

For more information about the use of CVDAs, see CICS-value data areas (CVDAs).

Description

The INQUIRE REQID command returns information about a queued request. A queued request results from a DELAY, POST, ROUTE, or START command with a nonzero expiry time, and it lasts until that time. For a DELAY command, expiry time is the end of the delay; for a POST, it is the time at which posting is to occur; for a ROUTE, it is the time at which the message is to be delivered; and for a START, it is the time at which CICS is to create the requested task.

After a request expires, you cannot inquire about it with INQUIRE REQID, even if the action requested is not complete. For example, a request to START a transaction may be delayed beyond expiry time, waiting for the terminal it requires.

Requests are identified by the REQID value in the originating command (or assigned by CICS, if omitted in the command). REQID values should be and normally are unique; however, if there is more than one queued request with the same identifier, INQUIRE REQID returns information about the one that will expire soonest.

Expiry time can be expressed either as an interval (the length of time from your INQUIRE to expiry) or as an absolute value (the length of time after the midnight previous to your INQUIRE). If expiry is before midnight of the current day, absolute time is the same as time-of-day, using a 24-hour clock. You can request either form, regardless of how the time was specified in the command that created the request.

There are also two formats for expiry time, whether it is an absolute value or an interval:
  • A 4-byte packed decimal composite (0hhmmss+), which you obtain by using the TIME or INTERVAL option.
  • Separate hours, minutes, and seconds, which you obtain by specifying HOURS, MINUTES, and SECONDS with either AT or AFTER.

Expiry time and request type (the type of command that produced it) are available for any queued request. For START requests additional information is available, including data passed from the starting to the started task.

START commands have four options for passing data. The FROM option is primary, and allows you to pass data of variable length, but three others—QUEUE, RTERMID, and RTRANSID—allow you to pass small items of fixed length. They are intended for convenience in conveying resource names to the started transaction, but are not restricted to that purpose. All four data items are kept in temporary storage, and consequently are subject to explicit deletion by another task. If data that you request in an INQUIRE REQID command has been deleted from temporary storage or cannot be read because of an I/O error, CICS raises the INVREQ condition.

Browsing

You also can browse through all of the queued requests by using the browse options (START, NEXT, and END) on INQUIRE REQID commands. See Browsing resource definitions for general information about browsing, including syntax, exception conditions, and examples.

Options

AFTER
requests that CICS return the expiry time (in the HOURS, MINUTES, and SECONDS options) as the interval between the current time and the expiry time.
AT
requests that CICS return the expiry time (in the HOURS, MINUTES, and SECONDS options) as an absolute value (following the midnight preceding this inquiry).
FMHSTATUS(cvda)
returns a CVDA value indicating whether the data passed in the FROM option of the command that created this request contains function management headers. FMHSTATUS applies only to requests resulting from ROUTE commands, or START commands that specify FROM. CVDA values are:
FMH
The data contains a function management header.
NOFMH
The data does not contain a function management header.
NOTAPPLIC
The request did not result from a ROUTE or START command, or there was no FROM data.
HOURS(data-area)
returns a fullword binary field giving the hours portion of the expiry time (see the AT and AFTER options).
INTERVAL(data-area)
returns the expiry time as an interval from the current time. The value is a 4-byte packed decimal number in the format 0hhmmss+.
LENGTH(data-area)
returns a halfword binary field giving the length of the data passed in the FROM option of the command that created this request. It applies only to requests resulting from ROUTE commands, or START commands that specify FROM; for other requests, the value returned is zero.
MINUTES(data-area)
returns a fullword binary field giving the minutes portion of the expiry time (see the AT and AFTER options).
QUEUE(data-area)
returns the 8-byte field passed in the QUEUE option of the START command that created this request. It applies only to requests resulting from START commands that specify QUEUE; for other requests, the value returned is blanks.
REQID(data-value)
specifies the 8-byte identifier of the request about which you are inquiring. This is the value specified in the REQID option of the command that generated the request (or assigned by CICS if REQID was omitted).
REQTYPE(cvda)
returns a CVDA value indicating the type of command that created this request. CVDA values are:
DELAY
A DELAY command created this request.
POST
A POST command created this request.
ROUTE
A ROUTE command created this request.
START
A START command created this request.
RTERMID(data-area)
returns the 4-byte field passed in the RTERMID option of the START command that created this request. It applies only to requests resulting from START commands that specify RTERMID; for other requests, the value returned is blanks.
RTRANSID(data-area)
returns the 4-byte field passed in the RTRANSID option of the START command that created this request. It applies only to requests resulting from START commands that specify RTRANSID; for other requests, the value returned is blanks.
SECONDS(data-area)
returns a fullword binary field giving the seconds portion of the expiry time (see the AT and AFTER options).
SET(ptr-ref)
returns the address of the data passed in the FROM option of the command which created this request. It applies only to requests resulting from ROUTE commands, or START commands that specify FROM; for other requests, the value returned is the null pointer (X'FF000000').
TERMID(data-area)
returns the 4-character terminal identifier that was specified in the TERMID option of the START command that created the request. It applies only to requests originating from START commands that specify a terminal; for other requests, the value returned is blanks.
TIME(data-area)
returns the expiry time as an absolute value measured from the midnight preceding this INQUIRE command. The value is a 4-byte packed decimal number in the format 0hhmmss+.
TRANSID(data-area)
returns the 4-character transaction identifier that was specified in the TRANSID option of the command that created the request. It applies only to requests originating from ROUTE or START commands; for other requests, the value returned is blanks.
USERID(data-area)
returns the 8-character identifier of the user associated with the task that issued the command that created this request. USERID applies only to requests resulting from ROUTE or START commands.
For a START command:
  • if a TERMID is specified on the START command, the value returned is blanks,
  • if a USERID is specified on the START command, that user-id is returned,
  • if neither of these is specified on the START command, the user-id of the task that issued the START command is returned.
For other requests, the value returned is blanks.

Conditions

END
RESP2 values:
2
There are no more resource definitions of this type.
ILLOGIC
RESP2 values:
1
You have issued a START command when a browse of this resource type is already in progress, or you have issued a NEXT or an END command when a browse of this resource type is not in progress.
INVREQ
RESP2 values:
3
An I/O error occurred while an attempt was made to read data from temporary storage for the SET, QUEUE, RTERMID, or RTRANSID option.
4
Data required for the SET, QUEUE, RTERMID, or RTRANSID option cannot be returned because it has been deleted from temporary storage.
NOTAUTH
RESP2 values:
100
The user associated with the issuing task is not authorized to use this command.
NOTFND
RESP2 values:
1
The REQID cannot be found.