Previous Topic: Responding to a Confirmation RequestNext Topic: Changing Direction: Send to Receive


Sending Error Information

SEND_ERROR TYPE (PROGRAM) (SVC)
           LOG_DATA
           RESOURCE
           RETURN_CODE

Your program can send error information to an LU by specifying OPTNS=ERROR on a WRITE or PUT request. You cannot issue a #TREQ PUTGET or WRITREAD request because the program remains in the send state after the error request is issued. Your program must specify the LTE address of the remote LU (UIOLTEA) to identify the conversation.

The error information is sent in the form of an 8 character hexadecimal SNA sense code, specified by the SENSE parameter on a write request. The default sense code is X'08890000'.

Note: For more information about sense codes, see Error Handling in this appendix.

Upon receipt of an error, CA IDMS/DC moves the sense code to the UIOCB. CA IDMS/DC indicates that an error has been received by setting an error flag (UIOERR) in the UIOWREC (what-received) field of the UIOCB and provides more specific information about the error in the secondary codes (UIOUCM2).

Note: Register 15 is not set in response to a SEND_ERROR verb. Therefore, UIOWREC should be examined if the possibility of UIOERR exist.

LU6.2 Sessions

For an LU6.2 session, if you send the error request while you are in the receive state, all input is purged until a change-direction indicator is received, and then CA IDMS/DC sends the error information.

Note: For more information about changing direction, see Changing Direction: Send to Receive in this appendix.

After sending error information, your program will be in the send state. You can then send additional data to the remote LU.

You can send log data along with the error information by using the LOGDATA parameter. If the remote system supports log data, the data will be logged onto the remote system when it receives the send-error request. LOGDATA specifies the address of the data buffer. You must also specify the OUTLEN parameter to indicate the length of the data.

Non-LU6.2 Sessions

For a non-LU6.2 session, CA IDMS/DC sends the sense code in a negative response if your task is in the receive state and in an LUSTAT command if your task is in the send state. If your program issues an error request while your task is in the receive state, all input is purged until a change-direction indicator is received. Your program must specify the LTE address of the remote LU (UIOLTEA) to identify the conversation.