Search Results infinite_number




Overview

MRP_ATP_PVT is a private PL/SQL package in the Oracle EBS Applications schema (APPS) that supports the Available-to-Promise (ATP) processing infrastructure within the Oracle Advanced Supply Chain Planning and Order Management integration. The package is compiled with AUTHID CURRENT_USER, meaning that it executes with the privileges of the invoking user rather than the package owner, and it is classified as a PVT (private) API in the ETRM registry. As a private package, it is not intended as a public integration point; it is invoked internally by Oracle-developed code and by other packages within the planning and scheduling stack.

The package header exposes a central constant, INFINITE_NUMBER, defined as NUMBER := 1.0e+10. This value functions as a sentinel representing an effectively unbounded ATP quantity or lead-time horizon within the calculation logic. Because the Oracle ATP engine compares requested demand against supply and lead-time boundaries, a very large numeric ceiling is required to signal "no practical limit" without relying on NULL semantics. The constant is the most frequently referenced symbol when developers search for this object, since callers and extension code may need to replicate or interpret the same threshold value. The package further declares two composite record types, Atp_Source_Typ and AtpRec, which model ATP sourcing candidates (organization, supplier, supplier site, rank, source type, lead time, ship method, preferred flag, and capacity type) and individual ATP demand/response rows (item, customer, supplier, quantities, request and arrival dates, lead times, availability, and action or error codes), respectively. These structures are populated by the internal routines that drive the ATP engine.

Key Procedures and Functions

The documented API surface consists of three routines:

  • EXTEND_ATP — extends or expands ATP availability calculations, typically by projecting supply or capacity forward across the planning horizon. It is invoked during ATP scheduling to determine whether demand can be met against extended sourcing options.
  • ASSIGN_ATP_INPUT_REC — populates an ATP input record (an AtpRec or related structure) from caller-supplied or upstream-derived values, preparing the demand row for scheduling. It handles the assignment of record fields prior to ATP evaluation.
  • ASSIGN_ATP_OUTPUT_REC — transfers the results of ATP evaluation (available quantity, requested-date quantity, action, ship and arrival dates, error code, and refresh number) back into the output record returned to the calling program.

Parameter lists are not documented in the ETRM metadata and are deliberately not reproduced here.

Tables Accessed

The ETRM metadata does not enumerate base tables directly referenced by this package; any such access occurs through APPS synonyms, consistent with standard EBS coding practice. Functionally, the AtpRec record structure indicates that the package interacts with ATP demand and supply result sets keyed by inventory item, organization, customer, supplier, and demand source identifiers, while Atp_Source_Typ indicates access to sourcing rules, supplier site, and lead-time data. Actual table consumption is therefore indirect and mediated by companion packages such as MRP_ATP_PUB.

Usage Notes

MRP_ATP_PVT is referenced by seventeen other packages in the ETRM registry, confirming that it is a shared internal utility rather than a standalone entry point. It is not exposed as a form-level or concurrent-program API and should not be called directly from custom code; instead, customers extending ATP behavior should use the public counterpart, MRP_ATP_PUB. The INFINITE_NUMBER constant remains relevant to developers who must interpret ATP results or replicate the engine's "unlimited" threshold in custom logic. Because the package is AUTHID CURRENT_USER and PVT-classified, Oracle may change its signature between releases without public notice; any custom dependency on it carries upgrade risk across 12.1.1 and 12.2.2.