DSNRLI Error Reporting

DSNRLI errors are reported back to the calling program, the dsnrli.cpy copybook contains a list of error and reason codes that are returned.

Tip: To become familiar with the contents of the dsnrli.cpy copybook, you can view it in any text editor. Its default location is the $COBDIR/cpylib directory.

If a DSNRLI function is called that requires the association of an XA switch module with the current unit of work, and that association fails, DSNRLI will issue the following messages and shows the return code from the TX Associate call:

Reason Error
For a failure in associating the switch module: MVSXM0037S [Switch Module] XA resource is not enabled. ASSOCIATE call returned [Return Code].
For a switch module that does not exist MVSXM0038S [Switch Module] XA resource has not been found. ASSOCIATE call returned [Return Code].

In both cases, DSNRLI will return a return-code of 8, and the reason code will be ERR-XA-RESOURCE-NOT-ENABLED (0x00F30002) or ERR-NOT-IDENTIFIED (0x00C12204), as appropriate.

If DSNRLI makes a TX call that does not return the expect value, the return code will be reported in a message to the job log and the return code from DSNRLI will be 8. The reason code reflects where the error occurred.

Error
MVSXM0050S [Switch Module] XA resource OPEN call returned [Return Code].
MVSXM0051S [Switch Module] XA resource BEGIN call returned [Return Code] where [Switch Module] is the XA resource name and [Return Code] is the return code from the TX call.
MVSXM0052S [Switch Module] XA resource CLOSE call returned [Return Code].
MVSXM0053S [Switch Module] XA resource END call returned [Return Code].

Where [Switch Module] is the XA resource name and [Return Code] is the return code from the TX call.

If a TX call returns TX_FAIL (-7) that return code will be passed back to the calling program. The normal DSNRLI call ordering will be suspended for that switch module so that the calling program may call IDENTIFY to reassociate the switch module with the unit of work.