Search Results qp_upgrade_errors_s




Overview

QP_UPGRADE_UTIL is a utility PL/SQL package body owned by the APPS schema in Oracle E-Business Suite. It exists to support the data upgrade path associated with the Oracle Advanced Pricing (QP) module and its interaction with Oracle Flexfields. The package header comment identifies its core responsibility: the procedure qp_update_upgrade updates the default type, default value, required flag, sequence number, enabled flag, and displayed flag columns in the flexfield tables. These columns were not migrated by the earlier Express upgrade, leaving descriptive flexfield metadata in an inconsistent state after a release transition.

The package therefore functions as a post-upgrade reconciliation utility, realigning descriptive flexfield attribute definitions for pricing-related flexfields with the values expected by the current EBS release. It is a technical upgrade tool rather than a transactional business API, and it is not part of the runtime pricing calculation path. The ETRM classification of UTIL reflects its position as internal upgrade infrastructure.

Key Procedures and Functions

  • QP_UPDATE_UPGRADE — The principal documented procedure. It performs the corrective update of descriptive flexfield column attributes that were omitted by the legacy Express upgrade. Its scope covers the default type, default value, required flag, sequence number, enabled flag, and displayed flag columns. It relies on the package's private helper functions to validate the existence of the flexfield context and segment definitions before applying changes.
  • LOG_ERROR — The error-handling procedure used to record failures encountered during the upgrade run. It writes diagnostic information so that the upgrade can be audited and any rejected records investigated.

Two private helper functions are declared in the package body and are not exposed in the documented procedure list: check_context_existance, which validates that a given application, descriptive flexfield name, and context code combination exists in FND_DESCR_FLEX_CONTEXTS, and check_segment_existance, which validates segment-level definitions in FND_DESCR_FLEX_COLUMN_USAGES. The naming parameter p_segment_name relates to this segment-level verification logic, confirming that segment identity is checked before any upgrade action is taken.

Tables Accessed

  • FND_APPLICATION — Read to resolve and confirm the owning application of the flexfield being upgraded.
  • FND_DESCR_FLEX_CONTEXTS — Read by check_context_existance to verify that the descriptive flexfield context definition is present before processing.
  • FND_DESCR_FLEX_COLUMN_USAGES — Read by check_segment_existance to confirm the segment usage row exists for the identified context.
  • QP_UPGRADE_ERRORS and QP_UPGRADE_ERRORS_S — The error log table and its sequence, written by LOG_ERROR to capture failures arising during the upgrade.

Usage Notes

QP_UPGRADE_UTIL is invoked in the context of an EBS upgrade or patch cycle, typically as a one-time corrective step after the Express-to-current-release migration has completed. It is not designed to be run from standard application forms during normal business operation, and it exposes no user-facing concurrent program in the documented metadata. Custom code should call it only during controlled upgrade execution windows, since it modifies flexfield definition metadata directly. Because it is referenced by zero other packages, it sits at the leaf of the dependency graph and carries no downstream runtime impact once the upgrade window closes. In Oracle EBS 12.1.1 and 12.2.2 the ADOP and patch driver framework normally invokes such utilities automatically; manual execution is reserved for remediation when the automated step reports errors in QP_UPGRADE_ERRORS.