Understanding Service Error Recovery

You use service error recovery functionality to store the errors that occur after a business function calls a business service. Service error recovery occurs after you call a business service and is used to handle the errors that the calling business function receives from this call. The errors can be from either the jdeCallBusinessService API error codes or from errors in the response (payload) XML.

When one of these types of errors occurs, the system saves data that was generated by the business service in the Services Error Recovery table (F0045). You can then use the Service Error Recovery program (P0045) to review the errors and reprocess the transactions that ended in error. Or you can use the Services Error Recovery batch program (R0045) to reprocess the transactions.

Note: Service error recovery works only for business functions that use the jdeCallBusinessService API. Additionally, service error recovery can be used only if the returning payload contains a tag called <sz-errors>.

When the jdeCallBusinessService API call is successful, but an error occurs during the execution, the data that is saved in the F0045 is the content of the tag <sz-errors>, which is returned in the payload. This string is saved in the BSSVERR field in the F0045. The rest of the data associated with the transactions that end in error are known by the calling business function, which enables the user to reprocess the transaction using the P0045 or R0045 program.

These fields in the F0045 table are used to reprocess the transaction:

  • BSSVPCK - BSSV Package

  • SBFMDNM - BSSV Method Name

  • BSSVXML - Input XML for BSSV

  • BSSVTRTY - BSSV Transaction Type

Note: The value object contains a field called szErrors that translates to the <sz-errors> XML tag when returned to the business function in the response XML. This is parsed out of the response XML to show the user the errors that are returned from the business service.

Before you can review service errors, or resend the data that was not successfully delivered by the business service, your business services must be coded to format the error strings that are returned to the business functions. The business function then processes and stores the service errors.

This diagram illustrates the process flow for service error recovery:

Process flow for service error recovery

The following sections provide an overview of the two parts of the service error recovery flow:

  • Recognizing and storing service errors.

  • Reviewing errors and resending data.