Search Results p_org




Overview

ITG_SyncFieldInbound_PVT is a private PL/SQL package body in the APPS schema that supports inbound synchronization of field-level changes on Oracle EBS purchasing documents. It is part of the ITG (Integrated Technology Group) custom extension layer that augments standard Oracle Purchasing functionality in Release 12.1.1 and 12.2.2. The package is classified as PVT, indicating that it is intended to be called only by other packages and not directly by external clients. In the documented metadata it is referenced by one other package, confirming that it functions as an internal worker routine beneath a public wrapper API.

The principal business purpose is to reconcile requisition-related data when field values are changed outside the normal sourcing flow, ensuring that synchronized attributes remain consistent with the organization context under which the transaction was created. The routine explicitly establishes both the client information organization context and the Multi-Org Access Control (MOAC) policy context, which confirms that it is designed to operate correctly in a multi-organization environment where records are secured by operating unit.

Key Procedures and Functions

The documented package exposes a single procedure:

  • PROCESS_PONUMBER — The core worker routine of the package. Its purpose is to carry out inbound field synchronization for a PO number identified by request, requisition line, PO header, and organization identifiers supplied by the calling wrapper. The source excerpt shows that it first sets the organization context using FND_CLIENT_INFO.SET_ORG_CONTEXT and MO_GLOBAL.SET_POLICY_CONTEXT, then initializes debug tracing through ITG_DEBUG, and finally performs input validation by calling ITG_BOAPI_Utils.validate against a field identifier before proceeding. Return status, message count, and message data are returned to the caller through standard FND_API OUT parameters.

No other public procedures or functions are documented for this package; the remaining logic is contained in private declarations and inline blocks within PROCESS_PONUMBER.

Tables Accessed

The package body accesses two purchasing tables through APPS synonyms:

  • PO_REQUISITION_HEADERS_ALL — the requisition header table, used to identify and validate the requisition associated with the synchronization request.
  • PO_REQUISITION_LINES_ALL — the requisition line table, used to resolve line-level details tied to the incoming request and line number parameters.

These accesses support the field-level comparison and update logic that gives the package its name. Because the package operates under a MOAC policy context, all reads and writes against these tables are filtered by the operating unit established at entry.

Usage Notes

ITG_SYNC FIELD INBOUND_PVT is not intended for direct invocation by forms or concurrent programs. It is invoked indirectly through the public wrapper package that references it, typically from custom Oracle Purchasing forms, personalizations, or integration interfaces that detect field changes on requisition documents and route them into the synchronization API. Callers must have already resolved the requisition identifier, line number, PO identifier, and organization identifier before invoking PROCESS_PONUMBER.

Because the procedure raises FND_API.G_EXC_ERROR when organization context cannot be set, calling code should follow the standard FND_API error-handling pattern of checking X_RETURN_STATUS and iterating FND_MSG_PUB for message text. Debug output is controlled by the CLN_DEBUG_LEVEL profile option, and the package sets up an internal savepoint to allow partial rollback of synchronization work. Organizations upgrading from 12.1.1 to 12.2.2 should confirm that MO_GLOBAL policy initialization is compatible with their MOAC configuration, since incorrect organization setup will cause every call to terminate in error. The p_org parameter is required for correct multi-org security and should always be supplied with the operating unit owning the requisition.