Search Results pricing_attr_value




Overview

OE_PRICE_ORDER_PVT is a private (PVT) PL/SQL package in the Oracle Order Management module of Oracle E-Business Suite. Its principal business function is to simulate an Order Management pricing call to obtain pricing information for an order without committing that information to the database. The package is designed to allow a caller to pass the complete set of order information—header, line, and line adjustment records—into the pricing engine and receive back priced results in memory. As noted in the header comments, the routine behaves as though the order contains only the lines supplied in the call; if an order has two lines and the caller submits only one, the pricing is performed as if only that single line existed. The package internally fixes several operational settings: Request_Type_Code is set to 'ONT', Write_To_DB is FALSE, Honor_Price_Flag is 'Y', Calculate_flag is 'Y', Simulation_Flag is 'Y', and Get_Freight_Flag is 'N'. These defaults make the package behave strictly as a simulation or preview facility rather than a committed pricing transaction.

Key Procedures and Functions

The package exposes a single documented procedure, PRICE_ORDER. It accepts a header record, a line record, a line adjustment table, a price attribute table, an action code, pricing events, a simulation flag, and a get freight flag, returning a status indicator to the caller. Its purpose is to invoke the pricing engine for the supplied order structures and populate the inbound-outbound records with calculated pricing information.

  • PRICE_ORDER — Performs the in-memory pricing simulation for the passed header, line, and adjustment data. Two important behaviors are documented: a line can be included in the call without being repriced by setting its operation code to the constant G_OPR_NONE, and a line's price can be frozen by setting the calculate price flag to 'N'. These controls give the caller fine-grained authority over which lines are recalculated during the simulation.

The package also declares a record type, Price_Att_Rec_Type, and a corresponding associative array type, Price_Att_Tbl_Type, used to carry pricing attribute context such as flex title, pricing context, pricing attribute name and value, and an override flag. These types are consumed by PRICE_ORDER through its price attribute table parameter.

Tables Accessed

According to the documented metadata, the package references several tables through APPS synonyms:

  • OE_ORDER_LINES — the core order line source used for line-level pricing input.
  • OE_PRICE_ADJUSTMENTS_S — stores price adjustment information applied to order lines.
  • QP_LIST_HEADERS_B — Oracle Advanced Pricing price list headers that qualify the applicable pricing.
  • QP_LIST_LINES — the price list line detail that supplies list prices.
  • QP_PRICING_PHASES — defines the pricing phases executed during the pricing call.
  • PLITBLM — an Advanced Pricing internal table used in price list line processing.

Because Write_To_DB is internally fixed to FALSE, these tables are read to drive the pricing simulation rather than being updated by the package's primary flow.

Usage Notes

OE_PRICE_ORDER_PVT is a private package, so it is not intended as a public integration interface. It is referenced by three other packages within the application, indicating that its callers are internal Order Management components rather than external customizations. Typical invocation occurs when Order Management needs to preview or simulate pricing for an order before committing it—for example, during order entry validation or pricing preview logic—where the caller supplies the full order context, requests a simulation, and inspects the returned header, line, and adjustment records. The G_OPR_NONE constant is the designated operation code for lines that should be passed through the pricing call but not repriced, which is useful when a caller needs pricing context for a mixed set of lines. Because the package assumes simulation semantics, developers should not rely on it to persist pricing changes; any durable pricing must be written through the standard Order Management public APIs.