Search Results qp_update_upgrade




Overview

QP_UPGRADE_UTIL is a utility package in the Oracle E-Business Suite APPS schema that supports upgrade and migration processing for Oracle Advanced Pricing. Its principal purpose is to re-point descriptive flexfield (DFF) definitions and associated application context from a legacy product and flexfield name to a new product and flexfield name. This functionality is used primarily during upgrades from earlier releases (such as 11i) into Release 12.1.1 and 12.2.2, and during migrations that consolidate or rename Oracle Pricing application contexts. The package also provides a centralized error logging routine so that upgrade attempts that fail validation can be captured in a persistent error table for review, remediation, and re-run. Because the package is a homogeneous utility rather than a business API, it does not enforce pricing business rules; instead, it operates on the metadata layer that pricing uses to store flexfield definitions and their column usages.

Key Procedures and Functions

  • QP_UPDATE_UPGRADE — The package's primary upgrade routine. It accepts a source product, a target product, a source flexfield name, and a target flexfield name, and uses these values to locate and update the corresponding flexfield definition records. The procedure is designed to be re-runnable: when matching records cannot be resolved or an update fails, the condition is recorded through the logging routine so that the operator can correct the data and re-execute the step. This is the entry point that a user searching for "qp_update_upgrade" is typically looking for.
  • LOG_ERROR — A generic error-capture utility that writes diagnostic information to the upgrade error table. It accepts a series of optional identifier attributes, an error type, an error description, and an error module, allowing callers to record which upgrade step failed and under what context. Because most parameters are optional, the procedure can be called from a wide variety of upgrade scripts without forcing callers to supply a full data set.

Tables Accessed

  • FND_APPLICATION — Read to resolve application identifiers for the source and target products involved in the upgrade, ensuring flexfield records are updated against the correct application context.
  • FND_DESCR_FLEX_COLUMN_USAGES — Updated to move descriptive flexfield column usage definitions from the legacy flexfield name to the new flexfield name.
  • FND_DESCR_FLEX_CONTEXTS — Updated to re-point flexfield context definitions, preserving context-sensitive segments while changing the owning flexfield.
  • QP_UPGRADE_ERRORS / QP_UPGRADE_ERRORS_S — The error repository written by LOG_ERROR, with a sequence supplying identifiers for each logged row. These tables form the audit trail of failed or skipped upgrade operations and are the first place to inspect when an upgrade completes with warnings.

Usage Notes

QP_UPGRADE_UTIL is not an end-user-facing API and is not referenced by other PL/SQL packages in the documented dependency set, which indicates it is invoked directly by upgrade driver scripts and concurrent programs rather than through a layered call stack. Typical invocation occurs during the Oracle Advanced Pricing upgrade or during a controlled migration project, where the database administrator or upgrade engineer executes the packaged procedure with the appropriate product and flexfield name pairs and then queries QP_UPGRADE_ERRORS to confirm a clean run. Because the package writes to shared FND flexfield metadata, it should be executed only within a scheduled maintenance window and after a validated backup of the affected schemas. In Release 12.1.1 and 12.2.2, the object is created as part of the APPS schema installation, so its grants and synonyms are managed by the standard AD utilities; custom code should not modify the package body. Any custom migration logic that needs identical behavior should call QP_UPDATE_UPGRADE rather than reimplementing the DFF updates, so that subsequent patching preserves compatibility.