Search Results gmi_validate_allocation_pvt




Overview

APPS.GMI_VALIDATE_ALLOCATION_PVT is a private PL/SQL package within the Oracle Process Manufacturing (OPM) auto allocation subsystem of Oracle E-Business Suite. Its documented purpose is to contain private procedures that validate the inputs supplied to the auto allocation engine. The auto allocation engine is responsible for the automatic assignment of on-hand inventory to demand, and the integrity of the input data passed into that engine is critical to the reliability of the resulting allocations. This package therefore serves as the validation layer that shields the allocation engine from malformed or inconsistent input parameters.

The package is classified as PVT (private), indicating that it is not intended as a public API surface. It is not designed to be called directly by external or customer-developed code; rather, it is invoked internally by the public auto allocation package GMI_AUTO_ALLOCATE_PUB. The ETRM metadata records that the package is referenced by exactly one other package, consistent with its role as a private helper component tightly coupled to the auto allocation module.

Although this object remains documented in ETRM under release 12.2.2, the package header carries a source revision of 120.0 dated 2005, reflecting an early origin in the product's lifecycle and minimal subsequent modification. The package has therefore been stable across the 12.1.1 and 12.2.2 releases.

Key Procedures and Functions

The package exposes two documented program units.

  • PROCEDURE VALIDATE_INPUT_PARMS — Validates the input parameters supplied to the auto allocation engine. It accepts an allocation record defined by the GMI_AUTO_ALLOCATE_PUB.gmi_allocation_rec type and returns the validated allocation record along with resolved item master and warehouse master records (based on IC_ITEM_MST%ROWTYPE and IC_WHSE_MST%ROWTYPE). It also returns the standard concurrent-program style status indicators: return status, message count, and message data. The procedure performs the core validation and cross-referencing logic required before allocation processing can proceed.
  • FUNCTION VALIDATE_WHO — Validates the identity of the user executing the allocation request against FND_USER, accepting a user identifier and user name and returning a Boolean result. This establishes the audit and security context for the operation.

Both units are private, and their signatures are defined by the package specification shown in the source header.

Tables Accessed

Three tables, referenced through APPS synonyms, are documented for this package:

  • IC_ITEM_MST — The OPM item master. Populated into the item master record output parameter so that validation logic and downstream allocation processing can confirm the item exists and is valid for allocation.
  • IC_WHSE_MST — The OPM warehouse master. Likewise returned as an output record, confirming that the warehouse specified in the allocation request is valid and active.
  • FND_USER — The Oracle Applications user repository, queried by VALIDATE_WHO to confirm the requesting user identity.

Usage Notes

This package is invoked indirectly through the public auto allocation API, GMI_AUTO_ALLOCATE_PUB, which is the supported entry point for triggering auto allocation from OPM forms, concurrent programs, and custom integrations. Customer and partner code should call the public interface rather than GMI_VALIDATE_ALLOCATION_PVT directly, since the private package is subject to change without notice.

Typical invocation paths include the OPM auto allocation forms and the corresponding concurrent program that batch-processes allocation requests. Because the package raises validation errors through the standard x_return_status, x_msg_count, and x_msg_data mechanism, callers of the public wrapper can inspect these values to surface validation messages to the user. The revision history indicates the package has remained stable since its initial 1.0 release, and it should be treated as an internal implementation detail of the OPM allocation engine in both 12.1.1 and 12.2.2.