Search Results copy_line_to_request




Overview

APPS.OE_ORDER_PRICE_PVT is a private PL/SQL package that encapsulates the pricing integration logic used by Oracle Order Management. Its principal role is to bridge Order Management order entities — headers and lines — with the Oracle Advanced Pricing engine by translating order data into the pricing request structures consumed by the pricing APIs. The package exposes the Price_Line procedure as its main entry point, which can price an entire order, a single order line, or multiple lines in a single invocation. Because it is classified as a PVT (private) package, it is intended for internal use by other EBS packages rather than as a directly callable public API, though it is frequently reached through OE_Order_Pub and related order-processing flows. The package header carries the seed data marker G_SEEDED_PRICE_ERROR_HOLD_ID (value 50) and the G_PKG_NAME constant, and it is documented against EBS 12.1.1 and 12.2.2. Its control record type, Control_Rec_Type, allows the caller to pass pricing-integration flags such as request type code, write-to-database indicator, honor-price flag, multiple-events flag, simulation flag, and freight flag without altering the Price_Line signature.

Key Procedures and Functions

  • PRICE_LINE — The primary pricing integration API. It prices an order, an order line, or multiple lines, accepting header and line identifiers, a line table, a control record, an action code, and pricing events, and returning a status.
  • COPY_LINE_TO_REQUEST — Copies a single order line record into the pricing request line table (QP_PREQ_GRP.LINE_TBL_TYPE), honoring the supplied pricing events, request type code, and honor-price flag.
  • COPY_HEADER_TO_REQUEST — Copies an order header record into the pricing request line table structure. This is the procedure users encounter when searching for "copy_header_to_request"; it seeds the pricing request with header-level context before line-level pricing proceeds.
  • POPULATE_TEMP_TABLE — Populates a temporary table used during pricing processing, supporting intermediate staging of pricing data.
  • APPEND_ASKED_FOR — Appends "asked for" pricing attributes or qualifiers to the request, ensuring requested price points are carried into the pricing call.
  • RESET_ALL_TBLS — Resets all internal tables used by the package, clearing state between pricing invocations.

Tables Accessed

The package reads and writes order and pricing tables through APPS synonyms. Order data is drawn from OE_ORDER_HEADERS, OE_ORDER_HEADERS_ALL, OE_ORDER_LINES, and OE_ORDER_LINES_ALL. Pricing output and adjustment data are managed in OE_PRICE_ADJUSTMENTS, OE_PRICE_ADJUSTMENTS_S, OE_PRICE_ADJ_ASSOCS, OE_PRICE_ADJ_ASSOCS_S, and OE_PRICE_ADJ_ATTRIBS. Pricing request attributes are held in OE_ORDER_PRICE_ATTRIBS. Item validation and description lookups use MTL_SYSTEM_ITEMS_KFV. Hold processing — relevant when pricing errors are seeded against hold ID 50 — touches OE_ORDER_HOLDS, OE_HOLD_RELEASES, OE_HOLD_SOURCES, and OE_MSG_REQUEST_ID_S, which provides the request identifier sequence used in messaging contexts.

Usage Notes

OE_ORDER_PRICE_PVT is typically invoked from Order Management forms and concurrent programs through higher-level APIs such as OE_Order_Pub, and it is referenced by six other packages. Custom code should generally call the public pricing API rather than this private package, because the private interface is subject to change between releases. When troubleshooting pricing behavior on a specific order or line, the COPY_HEADER_TO_REQUEST and COPY_LINE_TO_REQUEST procedures are useful reference points for understanding how header and line fields map into the pricing request structure, and PRICE_LINE's control record governs whether results are written to the database or run in simulation mode.