Search Results oe_price_break_util




Overview

The APPS.OE_PRICE_BREAK_UTIL package body is a utility (UTIL-classified) PL/SQL module within the Oracle Order Management (OM) schema. It supports the maintenance of price break records — the volume- or amount-based quantity tiers that drive graduated pricing and discount schedules in Oracle Advanced Pricing and Order Management. Price breaks define the quantity thresholds at which a customer receives an adjusted unit price, and they are stored in the OE_PRICE_BREAK_LINES table. The package exists to provide the low-level create, read, update, delete, and locking services required by the higher-level pricing APIs (notably OE_PRICING_CONT_PUB) whenever a price break line must be persisted, validated, or retrieved.

The package is classified as an API with the role of a utility library. It is not an end-user-facing business object; rather, it supplies the CRUD and data-conversion primitives that other Order Management components call. Twelve documented procedures/functions comprise the public surface. The package is not referenced by any database object outside the APPS schema, but it is itself referenced by three other packages, confirming its role as a shared internal service module.

Key Procedures and Functions

The package exposes the following documented procedures and functions. The DML-oriented routines (INSERT_ROW, UPDATE_ROW, DELETE_ROW) provide the standard row-maintenance operations for price break lines. The query routines (QUERY_ROW and QUERY_ROWS) retrieve one or many price break records into the package's PL/SQL table structures. LOCK_ROW acquires the row-level lock needed before an update, preventing concurrent modification of a price break line by competing sessions.

  • CLEAR_DEPENDENT_ATTR — Clears dependent attributes associated with a price break record when a driving attribute changes.
  • APPLY_ATTRIBUTE_CHANGES — Propagates attribute-level changes through the affected price break data.
  • COMPLETE_RECORD — Finalizes or populates a record so that all required columns are set prior to persistence.
  • CONVERT_MISS_TO_NULL — Normalizes the Oracle Forms sentinel value for a missing field (MISS) into a SQL NULL.
  • UPDATE_ROW / INSERT_ROW / DELETE_ROW — Persist, add, and remove price break line records respectively.
  • QUERY_ROW / QUERY_ROWS — Fetch a single price break line or a set of lines.
  • LOCK_ROW — Place a lock on a price break row to serialize updates.
  • GET_VALUES / GET_IDS — Convert between surrogate IDs and descriptive display values for price break entities.

Tables Accessed

The package operates primarily against OE_PRICE_BREAK_LINES, the table that stores the individual price break quantity and price-point lines belonging to a pricing qualifier or list. All DML and query operations target this table. PLITBLM, a standard Oracle Forms PL/SQL table manipulation package, is referenced for in-memory array handling of the fetched rows. Additional dependencies such as OE_GLOBALS, OE_ID_TO_VALUE, OE_VALUE_TO_ID, OE_MSG_PUB, FND_API, FND_MESSAGE, and APP_EXCEPTIONS supply conversion, messaging, and error-stack services but are not the primary data store.

Usage Notes

Because this is an internal utility package, it is typically invoked indirectly. The principal callers are Order Management and Advanced Pricing packages — notably OE_PRICING_CONT_PUB, which uses these primitives when an order's pricing context changes and price break lines must be re-validated or rebuilt. It may also be called from the Price Break maintenance forms (Order Management pricing-related Form functions) during insert, update, and delete operations, where CONVERT_MISS_TO_NULL and COMPLETE_RECORD are used to normalize form field values before DML. Concurrent programs and custom extensions that manipulate price break data should generally use the supported public pricing APIs rather than calling this package directly, since its procedures assume the calling context has already performed validation and applied the required concurrency locking through LOCK_ROW. The package is VALID in both Oracle EBS 12.1.1 and 12.2.2 and carries no external schema references, making it a candidate for standard APPS-schema dependency tracking.