CICS DL/I user interface block return codes
After issuing any DL/I call, CICS® online programs must check the return code in the UIB before checking the DL/I status code.
If the value in UIBRCODE is not null, the contents of the PCB status code are not meaningful. For more information about defining and addressing a UIB, see Specifying the UIB (CICS online programs only).
The UIBRCODE contains two bytes, UIBFCTR and UIBDLTR. You should first check the contents of UIBFCTR; the contents of UIBDLTR are meaningful only if UIBFCTR indicates a NOTOPEN or INVREQ condition. Table 1, Table 2, and Table 3 show the return codes from the CICS-DL/I interface.
Condition | ASM | COBOL | PL/I |
---|---|---|---|
NORESP (normal response) | X'00' | LOW-VALUES | 00000 000 |
NOTOPEN (not open) | X'0C' | X'0C' | 00001 100 |
INVREQ (invalid request) | X'08' | X'08' | 00001 000 |
Condition | ASM | COBOL | PL/I |
---|---|---|---|
Database not open | X'00' | LOW-VALUES | 00000 000 |
Intent scheduling conflict | X'02' | X'02' | 00000 010 |
Condition | ASM | COBOL | PL/I |
---|---|---|---|
Invalid argument passed to DL/I | X'00' | LOW-VALUES | 00000 000 |
PSBNF (PSB not found) | X'01' | X'01' | 00000 001 |
PSBSCH (PSB already scheduled) | X'03' | X'03' | 00000 011 |
NOTDONE (request not run) | X'04' | 12-4-9 | 00000 100 |
PSBFAIL (PSB initialization failed) | X'05' | X'05' | 00000 101 |
TERMNS (termination not successful) | X'07' | X'07' | 00000 111 |
FUNCNS (function unscheduled) | X'08' | X'08' | 00001 000 |
INVPSB (invalid PSB) | X'10' | X'10' | 00010 000 |
DLINA (DL/I not active) | X'FF' | X'FF' | 11111 111 |
If these codes do not appear to be due to programming errors, they might be caused by not-open or invalid-request conditions.