Oracle EXT_SYS ATP Dispatcher Log Status

The Oracle EXT_SYS ATP Dispatcher Log Status integration is called from the target integration with a status of C or E and updates the status of all the business events against that group as C (logging if flag is enabled) or E. This integration subsequently executes the exit logic to check if the flow should call the Orchestration integration or exit the integration.

Integration Flow

Figure 2-14 Oracle EXT_SYS ATP Dispatcher Log Status


This figure shows the integration flow of the Oracle EXT_SYS ATP Dispatcher Log Status.

Integration Description

Accepts the status of C or E for Group ID against an external system.

Sample Payload Received by the integration — ExpectedSamplePayload.json

Update ATP Status to Completed or Errored (C or E or RP)

Update the status to C or E in table OHIP_OIC_BUSINESS_EVENTS_Q_TAB by invoking stored procedure OHIP_OIC_UPD_BE_STATUS_SP for the Business Events in the context Insert into the log table if logging_enabled ='Y' in the configuration table for Completed Status (C).

Insert into the log table for any Business Event ID that has Errored (E) and send Group ID to the producer for reprocessing up to a total of three times (dictated by retry_count).

In case of failures while reprocessing, only the failed records will be retrieved against that group since the processed business events should not be picked again.

Recall Orchestration if Status = 'RP'

For the scenario when the business events have not been in the Q table for the parking time amount, the orchestration integration will call this integration. In this case, call the orchestration integration again and exit the flow.

Update ATP Flag To_{Y/N}_error for this External System ID in the Configuration Table

Invoke stored procedure OHIP_OIC_UPD_EXT_SYS_ERR_STATUS_SP to check the number of times this business event has been retried. Allow it to be retried three times. At the third attempt, mark the record as ‘Errored’ and update the column error status in the config table so that subsequent records for this external system cannot be processed until this issue is manually resolved.

Check Processing Status

Get Integration status as PROCESSING, ERROR, or CLOSED invoking a stored procedure OHIP_OIC_GET_INTEGRATION_STATUS_SP. This procedure returns "PROCESSING" if there are more business events to be processed against the external system. In this case, call the Orchestration integration again to group the rest of the records and process them.  

Update ATP Flag to_{Y/N}_exit for this external system id in the Configuration table. In case there are no more business events to process, then update the call parent integration flag and exit the integration.