Search Results resubmit_error_txns
Overview
CSI_RESUBMIT_PUB is a public PL/SQL package in the APPS schema that provides the recovery mechanism for failed Oracle E-Business Suite transactions processed by the Converged Supply Chain/Inventory (CSI) transaction manager. It exists to handle exception paths in which material transactions submitted to the transaction processing engine do not complete successfully. The package inspects the transaction error repository and the messaging queue used by the transaction manager, then re-drives the affected records so they can be processed again after the underlying cause has been corrected.
The package body carries a header dated January 2006, consistent with the CSI transaction framework shipped across the 12.1.1 and 12.2.2 releases. In the ETRM the package is classified as PUB and is referenced by one other package, which indicates that it is intended to be called from outside its own unit rather than serving as a purely internal helper.
Key Procedures and Functions
The documented interface exposes three procedures, all oriented toward recovering transactions that did not complete.
- RESUBMIT_ERROR_TXNS — The entry point users reach through the search term "resubmit_error_txns". It targets rows recorded as errors, that is, transactions whose failure has been logged in the CSI error table, and submits them for reprocessing.
- RESUBMIT_WAITING_TXNS — Handles transactions that are in a waiting state rather than an error state, resubmitting them to the transaction manager so they can proceed once preconditions are satisfied.
- RESUBMIT_INTERFACE — Resubmits transactions originating from the interface path, driving records that were staged through the CSI interface back into the transaction engine.
The package body also contains an internal DEBUG helper and a private PROCESS_FAILED_IN_Q routine. PROCESS_FAILED_IN_Q is not exposed in the public interface but illustrates the design approach: it opens a cursor over XNP_MSGS selecting rows whose message code begins with "CSI" and whose status is FAILED or REJECTED, reads the message body as a LOB, decodes the ORDER_LINE_ID or MTL_TRANSACTION_ID depending on the message code, and invokes the message fix API to release the stuck record. Failures in decoding or in the fix call are captured into a failure message rather than propagated.
Tables Accessed
The package operates against five documented data sources, reached through APPS synonyms.
- CSI_TXN_ERRORS — the repository of failed CSI transactions; the primary input for RESUBMIT_ERROR_TXNS.
- CSI_TXN_TYPES — defines the transaction types recognized by the CSI framework and is used to classify records being resubmitted.
- MTL_MATERIAL_TRANSACTIONS — the base inventory transaction table whose rows are the ultimate objects of the reprocessing.
- XNP_MSGS — the transaction manager message queue, queried for messages in FAILED or REJECTED status, as shown in the cursor definition of PROCESS_FAILED_IN_Q.
- DBMS_LOB — used to read the message body of queued records; the body_text column is a LOB, and DBMS_LOB.GETLENGTH and DBMS_LOB.READ are used to extract it for XML decoding.
Usage Notes
The procedures are typically invoked from a system administrator or super user menu, from the transaction manager error-correction user interface, or from a concurrent program that periodically scans for failed transactions. Custom code may call the public procedures directly when an application needs to force reprocessing after correcting the data that caused the original failure.
Because the public procedures act on shared inventory and queue data, they should be called by a user with appropriate privileges and only when the cause of the failure has been addressed. The private PROCESS_FAILED_IN_Q logic indicates that resubmission proceeds by locating the identifying XML element in the queued message, marking the message fixed, and allowing the transaction manager to reprocess it. Error handling is deliberately defensive: exceptions during decode or message fix are trapped and reported through the debug log so that one malformed record does not abort the entire resubmission run.
-
PACKAGE BODY: APPS.CSI_RESUBMIT_PUB
12.2.2
-
PACKAGE BODY: APPS.CSI_RESUBMIT_PUB
12.1.1
-
PACKAGE: APPS.CSI_RESUBMIT_PUB
12.2.2
-
PACKAGE: APPS.CSI_RESUBMIT_PUB
12.1.1
-
APPS.CSI_RESUBMIT_PUB SQL Statements
12.2.2
-
APPS.CSI_RESUBMIT_PUB SQL Statements
12.1.1
-
APPS.CSI_RESUBMIT_PUB dependencies on CSI_TXN_ERRORS
12.2.2
-
APPS.CSI_RESUBMIT_PUB dependencies on CSI_TXN_ERRORS
12.1.1
-
APPS.CSI_RESUBMIT_PUB dependencies on CSI_RESUBMIT_PUB
12.1.1
-
APPS.CSI_RESUBMIT_PUB dependencies on CSI_RESUBMIT_PUB
12.2.2