Previous Topic: #GETQUE ParametersNext Topic: #GETQUE Example


#GETQUE Status Codes

By default, the #GETQUE request is unconditional; any runtime error will result in an abend of the issuing task. The issuing program can request return of control with the COND parameter to avoid an abend.

After completion of the #GETQUE function, the value in register 15 indicates the outcome of the operation. The following is a list of the Register 15 values and the corresponding meaning:

X'00'

The request has been serviced successfully.

X'04'

The request cannot be serviced due to an invalid parameter list.

X'08'

The request cannot be serviced because the requested queue header record (identified by QUEID) cannot be found.

X'0C'

The request cannot be serviced because the requested queue record cannot be found.

X'18'

The program storage area specified for return of the queue record is too small; the returned record has been truncated to fit the available storage.

X'1C'

A database error occurred during queue processing. A common cause is a DBKEY deadlock. For a PUT QUEUE operation, this code can also mean that the queue upper limit has been reached.

If a database error has occurred, there are usually be other messages in the CA-IDMS/DC/UCF log indicating a problem encountered in RHDCRUAL, the internal Run Unit Manager. If a deadlock has occurred, messages DC001000 and DC001002 are also produced.

If an I/O error occurs while processing a #GETQUE request, the system will return the address of the IDMS communications block to register 1. If no error occurs during processing, a user-defined register, as assigned by the RTNQRID parameter, will contain the queue record ID (QRID) of the retrieved queue record.