Search Results po_price




Overview

APPS.CSTPLPOP is a small, purpose-built PL/SQL package in the Oracle E-Business Suite Cost Management module. Its name follows the EBS naming convention for costing/lot-related utilities, with the trailing "POP" suffix indicating a lightweight supporting routine rather than a full business API. The package exists to answer a single question for the costing engine: what is the purchase order price for a given inventory item within a specific inventory organization. This value is required whenever Cost Management must determine the acquisition cost basis of material received or transacted against a purchase order. The package is declared with AUTHID CURRENT_USER, meaning its SQL executes under the privileges of the calling schema rather than as APPS, and the PRAGMA restrict_references(po_price, wnds) directive guarantees the function performs no database writes — it is a pure read-only lookup. The header comments date the source to release 11.5-era code (version 115.3, 2002), and the object has remained unchanged into the 12.1.1 and 12.2.2 releases, reflecting its narrow, stable contract. It is not classified as a public API and is referenced by no other documented packages.

Key Procedures and Functions

  • PO_PRICE — The package's sole documented function. It returns a NUMBER representing the purchase order price for the item identified by the organization and item arguments supplied by the caller. Because the metadata records only the function signature and not a published parameter contract, integrators should treat it as an internal helper: it accepts an organization identifier and an inventory item identifier, resolves the applicable PO price, and returns that price to the calling costing logic. The restrict_references pragma confirms the function reads but never writes data, making it safe to invoke from queries, views, and other read-only contexts.

Tables Accessed

The single documented table referenced through APPS synonyms is MTL_MATERIAL_TRANSACTIONS. This is the core inventory transaction fact table, holding every material movement in the system, including purchase order receipts. The package queries this table to derive the PO price associated with an item and organization, most plausibly by inspecting receipt transactions and their associated costs or referenced PO price attributes. The reliance on MTL_MATERIAL_TRANSACTIONS — rather than on PO_HEADERS or PO_LINES directly — indicates the routine derives price from what was actually received and recorded in inventory, which keeps the returned value consistent with the costing data already staged in the transactions table. No other tables are documented, and the function performs no inserts, updates, or deletes.

Usage Notes

Because CSTPLPOP is classified as OTHER rather than as a published API, it is intended for internal consumption by Oracle's Cost Management programs and by custom extensions that specifically require PO price retrieval during costing routines. Typical invocation contexts include cost processor logic, cost adjustment or cost update flows, and custom SQL that needs to reconcile receipt cost against purchase order price. The function can be called directly from SQL, PL/SQL, forms, or concurrent-program logic, subject to the executing user holding appropriate read privileges on the underlying objects. Given the absence of documented parameter metadata and the fact that no other packages reference it, organizations should avoid building critical interfaces against this package without validating behavior in their specific environment and release level. Where a supported public API exists for procurement price retrieval, that alternative should be preferred.