Results for “po_price_differentials_pvt”
50+ results
AI-generated from documented ETRM metadata — verify critical details on the linked pages.
Overview
APPS.PO_PRICE_DIFFERENTIALS_PVT is the private implementation package for Oracle Purchasing price differentials functionality in Oracle E-Business Suite 12.1.1 and 12.2.2. Price differentials allow organizations to apply percentage-based or amount-based adjustments to purchase order line prices based on supplier, item, job, or other qualifiers. The package encapsulates the core business logic used to validate, create, copy, default, and delete price differential records, and provides the internal APIs consumed by the public PL/SQL interface and by Oracle Forms in the Purchasing application. Because it is classified as a PVT (private) package, it is intended for invocation by other Purchasing packages and forms rather than as a directly called integration API.
Key Procedures and Functions
The package body exposes sixteen documented procedures and functions covering the full price differential lifecycle:
- ALLOWS_PRICE_DIFFERENTIALS — determines whether price differentials are permitted for a given context (for example, a document type or line type).
- CHECK_UNIQUE_PRICE_DIFF_NUM — validates that a price differential number is unique before insert or update.
- CHECK_UNIQUE_PRICE_TYPE — ensures a price type is not duplicated within the applicable scope.
- COPY_PRICE_DIFFERENTIALS — duplicates existing price differential records, typically when copying from a template or reference document.
- CREATE_FROM_INTERFACE — loads price differential data from the interface tables into the base tables.
- DEFAULT_PRICE_DIFFERENTIALS — applies defaulting rules to populate price differential attributes.
- DELETE_PRICE_DIFFERENTIALS — removes price differential records subject to validation.
- GET_CONTEXT — returns the operating context (org, user, and related profile values) for processing.
- GET_MAX_PRICE_DIFF_NUM — retrieves the highest existing price differential number to support auto-numbering.
- GET_MIN_MAX_MULTIPLIER — returns the minimum and maximum multiplier bounds applicable to a price differential.
- HAS_PRICE_DIFFERENTIALS — indicates whether price differentials already exist for a given entity.
- IS_PRICE_TYPE_ENABLED — checks whether a particular price type is enabled in the current configuration.
- SETUP_INTERFACE_TABLE — prepares and stages records in the interface table prior to import.
- VALIDATE_PRICE_DIFFERENTIALS — performs comprehensive validation of price differential data before commit.
- GET_PRICE_FOR_PRICE_TYPE — derives the applicable price for a specified price type.
- GET_ENTITY_TYPE — identifies the entity type associated with the price differential context.
Tables Accessed
The package reads and writes the core Purchasing tables through APPS synonyms. PO_PRICE_DIFFERENTIALS and PO_PRICE_DIFFERENTIALS_S hold the base and translated (or setup) price differential definitions. PO_PRICE_DIFF_INTERFACE and PO_PRICE_DIFF_INTERFACE_S serve as the staging area for the CREATE_FROM_INTERFACE and SETUP_INTERFACE_TABLE operations. PO_HEADERS_ALL, PO_LINES_ALL, and PO_LINE_LOCATIONS_ALL supply document header, line, and shipment context for validation and defaulting. PO_LINE_TYPES_B and PO_REQUISITION_LINES (and PO_REQUISITION_LINES_ALL) are referenced to resolve line type and requisition-based rules. PER_JOBS_VL and PO_JOB_ASSOCIATIONS support job-related price differential qualifiers. It also depends on utility packages including PO_CORE_S, PO_CONSTANTS_SV, PO_MESSAGE_S, PO_LOG, PO_SERVICES_PVT, FND_GLOBAL, FND_MSG_PUB, FND_PROFILE, and the PO_PRICE_DIFF_LOOKUPS_V view.
Usage Notes
PO_PRICE_DIFFERENTIALS_PVT is not referenced by any database object directly; instead it is invoked internally by the corresponding public interface package and by Oracle Purchasing forms during price differential entry and maintenance. Its procedures are typically executed in the context of the Purchasing responsibility when users create or modify price differentials, when documents are copied, or when concurrent interface programs import price differential data. Developers extending Purchasing should avoid calling the private package directly and instead use the supported public APIs, which handle validation, message propagation via FND_MSG_PUB, and error logging through PO_INTERFACE_ERRORS_SV1 and PO_LOG. The dependency on FND_GLOBAL and FND_PROFILE confirms that correct operating context (user, organization, and profile options) must be initialized before invocation.