Search Results sync_draft_from_txn
Overview
PO_PRICE_ADJ_DRAFT_PKG is a PL/SQL package in the Oracle E-Business Suite Purchasing (PO) module, owned by the APPS schema and declared with AUTHID CURRENT_USER. It manages the draft staging area for price adjustment definitions, sitting between the base transaction tables (PO_PRICE_ADJUSTMENTS and PO_PRICE_ADJ_ATTRIBS) and their draft counterparts (PO_PRICE_ADJUSTMENTS_DRAFT and PO_PRICE_ADJ_ATTRIBS_DRAFT). Its central purpose is to synchronise draft price adjustment rows from the underlying transaction rows, so that changes entered in the Purchasing user interface are held as drafts before being committed to the live transaction records. The package supports bulk operations through a NUMBER_TYPE collection and the PO_TBL_NUMBER / PO_TBL_VARCHAR1 table types, allowing callers to process sets of price adjustments in a single invocation rather than row by row.
Key Procedures and Functions
- DELETE_ROWS — Removes draft price adjustment rows identified by a draft identifier and price adjustment identifier.
- SYNC_DRAFT_FROM_TXN (overloaded, three signatures) — The principal procedure the user searched for. It copies or refreshes draft price adjustment data from the transaction table. The bulk form accepts a price adjustment ID table, a draft ID table, and a delete flag table, returning a table of flags indicating whether the record already existed. A second signature operates on a single price adjustment, draft, and delete flag, returning a single already-exists indicator. A third signature keys off the draft, order header, and order line identifiers with a delete flag, and does not return an existence indicator. All three overloads share the same synchronisation semantics: create or update the draft from the transaction, optionally deleting rows according to the delete flag.
- MERGE_CHANGES — Applies the accumulated draft changes for a given draft identifier back into the transaction records.
- LOCK_DRAFT_RECORD — Obtains a lock on a specific draft price adjustment record to prevent concurrent modification.
- LOCK_TRANSACTION_RECORD — Obtains a lock on the underlying transaction price adjustment record.
Tables Accessed
The package operates against the base price adjustment tables PO_PRICE_ADJUSTMENTS and PO_PRICE_ADJ_ATTRIBS, together with their draft mirrors PO_PRICE_ADJUSTMENTS_DRAFT and PO_PRICE_ADJ_ATTRIBS_DRAFT. The synchronisation and merge procedures read the transaction tables and write the draft tables, while the delete and lock procedures target the draft tables directly. DBMS_SQL and PLITBLM are referenced for dynamic SQL and index-by table handling respectively; these are supplied packages rather than application data tables.
Usage Notes
The package is typically invoked from the Purchasing forms layer when a user edits price adjustments on a document, and from concurrent or internal processing that must stage adjustments before committing them. Because the draft versions of price adjustments are part of the standard Purchasing change-management flow, callers generally use SYNC_DRAFT_FROM_TXN to populate or refresh drafts, MERGE_CHANGES to promote approved drafts, and the lock procedures to enforce concurrency control. The package is referenced by four other packages within the APPS schema, indicating it forms part of an internal dependency chain rather than a standalone public API. Custom code should follow the same pattern: lock, synchronise, modify, then merge, and should handle the already-exists out parameter in the bulk and single-record overloads.
-
PACKAGE: APPS.PO_PRICE_ADJ_DRAFT_PKG
12.2.2
-
PACKAGE: APPS.PO_ATTR_VALUES_DRAFT_PKG
12.1.1
-
PACKAGE: APPS.PO_HEADERS_DRAFT_PKG
12.1.1
-
PACKAGE: APPS.PO_NOTIFICATION_CTRL_DRAFT_PKG
12.2.2
-
PACKAGE: APPS.PO_GA_ORG_ASSIGN_DRAFT_PKG
12.2.2
-
PACKAGE: APPS.PO_DISTRIBUTIONS_DRAFT_PKG
12.1.1
-
PACKAGE: APPS.PO_LINES_DRAFT_PKG
12.1.1
-
PACKAGE: APPS.PO_ATTR_VALUES_TLP_DRAFT_PKG
12.1.1
-
PACKAGE: APPS.PO_PRICE_DIFF_DRAFT_PKG
12.1.1
-
PACKAGE: APPS.PO_ATTR_VALUES_TLP_DRAFT_PKG
12.2.2
-
PACKAGE: APPS.PO_LINE_LOCATIONS_DRAFT_PKG
12.1.1
-
PACKAGE: APPS.PO_PRICE_DIFF_DRAFT_PKG
12.2.2
-
PACKAGE: APPS.PO_NOTIFICATION_CTRL_DRAFT_PKG
12.1.1
-
PACKAGE: APPS.PO_GA_ORG_ASSIGN_DRAFT_PKG
12.1.1
-
PACKAGE: APPS.PO_LINE_LOCATIONS_DRAFT_PKG
12.2.2
-
PACKAGE: APPS.PO_ATTR_VALUES_DRAFT_PKG
12.2.2
-
PACKAGE: APPS.PO_DISTRIBUTIONS_DRAFT_PKG
12.2.2
-
PACKAGE: APPS.PO_LINES_DRAFT_PKG
12.2.2
-
PACKAGE: APPS.PO_HEADERS_DRAFT_PKG
12.2.2
-
PACKAGE BODY: APPS.PO_PRICE_DIFF_DRAFT_PKG
12.2.2
-
PACKAGE BODY: APPS.PO_PRICE_DIFF_DRAFT_PKG
12.1.1
-
PACKAGE BODY: APPS.PO_GA_ORG_ASSIGN_DRAFT_PKG
12.2.2
-
PACKAGE BODY: APPS.PO_GA_ORG_ASSIGN_DRAFT_PKG
12.1.1
-
APPS.PO_PRICE_DIFF_DRAFT_PKG SQL Statements
12.2.2
-
APPS.PO_GA_ORG_ASSIGN_DRAFT_PKG SQL Statements
12.2.2
-
APPS.PO_PRICE_DIFF_DRAFT_PKG SQL Statements
12.1.1
-
APPS.PO_GA_ORG_ASSIGN_DRAFT_PKG SQL Statements
12.1.1
-
PACKAGE BODY: APPS.PO_NOTIFICATION_CTRL_DRAFT_PKG
12.1.1
-
PACKAGE BODY: APPS.PO_NOTIFICATION_CTRL_DRAFT_PKG
12.2.2
-
PACKAGE BODY: APPS.PO_PRICE_ADJ_DRAFT_PKG
12.2.2
-
APPS.PO_NOTIFICATION_CTRL_DRAFT_PKG SQL Statements
12.2.2
-
APPS.PO_NOTIFICATION_CTRL_DRAFT_PKG SQL Statements
12.1.1
-
PACKAGE BODY: APPS.PO_DISTRIBUTIONS_DRAFT_PKG
12.1.1
-
PACKAGE BODY: APPS.PO_HEADERS_DRAFT_PKG
12.1.1
-
PACKAGE BODY: APPS.PO_DISTRIBUTIONS_DRAFT_PKG
12.2.2
-
PACKAGE: APPS.PO_EXHIBITS_PVT
12.2.2
-
PACKAGE BODY: APPS.PO_LINES_DRAFT_PKG
12.1.1
-
PACKAGE BODY: APPS.PO_ATTR_VALUES_TLP_DRAFT_PKG
12.2.2
-
PACKAGE BODY: APPS.PO_LINE_LOCATIONS_DRAFT_PKG
12.1.1
-
PACKAGE BODY: APPS.PO_ATTR_VALUES_TLP_DRAFT_PKG
12.1.1
-
APPS.PO_PRICE_ADJ_DRAFT_PKG SQL Statements
12.2.2
-
PACKAGE BODY: APPS.PO_LINE_LOCATIONS_DRAFT_PKG
12.2.2
-
PACKAGE BODY: APPS.PO_HEADERS_DRAFT_PKG
12.2.2
-
APPS.PO_EXHIBITS_PVT SQL Statements
12.2.2
-
PACKAGE BODY: APPS.PO_LINES_DRAFT_PKG
12.2.2
-
APPS.PO_DISTRIBUTIONS_DRAFT_PKG SQL Statements
12.1.1
-
PACKAGE BODY: APPS.PO_EXHIBITS_PVT
12.2.2
-
APPS.PO_DISTRIBUTIONS_DRAFT_PKG SQL Statements
12.2.2
-
PACKAGE BODY: APPS.PO_ATTR_VALUES_DRAFT_PKG
12.2.2
-
APPS.PO_LINES_DRAFT_PKG SQL Statements
12.1.1