Search Results g_miss_modifier_list_rec




Overview

QP_MODIFIERS_PUB is the public PL/SQL API in Oracle E-Business Suite that provides programmatic setup and maintenance of modifiers within the Advanced Pricing (QP) module. Modifiers represent price adjustments such as discounts, surcharges, freight charges, coupons, and promotional offers that are applied to list prices during pricing engine evaluation. This package belongs to the QP product and is classified as a PUBLIC API, meaning it is intended for external invocation by forms, concurrent programs, and custom integrations rather than being restricted to internal pricing engine use. The package exposes entities for creating modifier list headers and associated modifier lines, handling the complex relationship between list headers, list lines, and pricing attributes. It is referenced by more than thirty other packages in the EBS codebase, reflecting its central role in modifier lifecycle management across quotation, order management, and pricing processes.

Key Procedures and Functions

Three procedures are documented for this package:

  • PROCESS_MODIFIERS — The primary transactional procedure used to create, update, or delete modifier list headers and their associated modifier lines. It accepts a modifier list record and processes the complete modifier definition through the pricing tables, applying insert, update, or delete logic based on the supplied record state and mode of operation.
  • LOCK_MODIFIERS — Acquires a lock on a modifier list record to prevent concurrent modification. This is typically invoked before update operations to enforce serialized access to modifier definitions and avoid lost-update conflicts during multi-user setup sessions.
  • GET_MODIFIERS — Retrieves modifier list and modifier line data from the pricing tables into the published record structures. It is used to query existing modifier definitions for display, validation, or downstream processing.

The package also defines the Modifier_List_Rec_Type record structure, which mirrors the QP_LIST_HEADERS_B columns. Every attribute is initialized to the FND_API G_MISS_* sentinel values (G_MISS_CHAR, G_MISS_NUM, G_MISS_DATE), consistent with the standard EBS API convention for distinguishing "not supplied" from "explicitly null". Notable fields include list_header_id, list_type_code, currency_code, automatic_flag, discount_lines_flag, start and end active dates, and fifteen descriptive flexfield attributes. The user search term g_miss_modifier_list_rec refers to a global variable conventionally declared in client code as an instance of this record type pre-populated with G_MISS sentinels, used as a template to reset or initialize a modifier list record before populating only the relevant fields.

Tables Accessed

The package operates against the following tables through APPS synonyms:

  • QP_LIST_HEADERS_B — Stores modifier list header definitions, including list header identifier, list type, currency, active dates, and control flags. Processed by PROCESS_MODIFIERS and read by GET_MODIFIERS.
  • QP_LIST_LINES — Stores individual modifier lines belonging to a list header, capturing the adjustment rules and pricing attributes. Managed together with the header during modifier processing.
  • PLITBLM — The pricing list table materialization structure used for modifier and price list line storage and retrieval in the pricing engine.

Usage Notes

QP_MODIFIERS_PUB is typically invoked from the Oracle Pricing setup forms (such as the Modifiers and Qualifiers setup window) and from concurrent programs that mass-maintain modifier definitions. Custom code integrating with Advanced Pricing should call this API rather than performing direct DML against QP_LIST_HEADERS_B and QP_LIST_LINES, because the API enforces validation, concurrency control through LOCK_MODIFIERS, and consistency with the pricing engine's expectations. When building records in custom PL/SQL, developers commonly initialize a local record from a global template such as g_miss_modifier_list_rec and override only the attributes being set, relying on the G_MISS sentinels to signal untouched fields to PROCESS_MODIFIERS.