Search Results get_wave_exceptions_cust




Overview

APPS.WMS_WP_CUSTOM_APIS_PUB is a public PL/SQL customization package body shipped with Oracle Warehouse Management (WMS) in Oracle E-Business Suite 12.1.1 and 12.2.2. It provides the supported extension points through which customers and integrators inject site-specific logic into the standard Wave Planning and task release processing performed by the WMS Wave Planning module. The package is classified as a Public (PUB) API, meaning its signature is treated as a stable interface: Oracle does not change the procedure names or parameter signatures, but the bodies contain only placeholder logic that returns control to the standard framework unless the customer implements its own code.

The package is deliberately structured as a template. Each procedure initializes the FND message stack, sets the API return status to success, and declares whether custom logic has been implemented through a Boolean output flag, conventionally named x_api_is_implemented. This design allows the calling wave planning engine to detect, at runtime, whether a customer has extended the process, and to fall back to standard behavior when the flag is returned as FALSE.

Key Procedures and Functions

  • CREATE_WAVE_LINES_CUST — Invoked during wave line creation. It offers customers the opportunity to generate or supplement the set of wave lines associated with a wave header. The procedure exposes PL/SQL table outputs through which custom rows can be returned, together with a parallel action table that qualifies each row (for example, 'ADD') so the calling engine knows how to process it. The excerpt demonstrates that a custom implementation populates the line table with a wave header identifier, a new wave line identifier drawn from the wave line sequence, and associated attributes, and signals implementation by returning TRUE.
  • GET_WAVE_EXCEPTIONS_CUST — The entry point associated with the user's search term. This procedure allows customers to define or retrieve custom wave planning exception conditions, enabling site-specific validation rules or business exceptions to be surfaced during wave processing. As with the other hooks, it returns a status flag indicating whether custom logic is active, allowing the framework to merge custom exceptions with its own.
  • TASK_RELEASE_CUST — Invoked during the task release phase of wave execution. It provides an extension point for customer-specific logic that must execute before, during, or after tasks are released to the warehouse floor, such as special labeling, allocation, or integration with external systems.

All three procedures follow the standard Oracle API conventions: a return status constant, a message count and message data output, and a savepoint pattern for partial rollback. The private helper print_debug routes trace messages to the INV mobile logging facility.

Tables Accessed

The package body does not directly reference base tables. Instead, it operates through PL/SQL record types defined in WMS_WAVE_PLANNING_PVT and populates rows destined for the wave lines table using its sequence, WMS_WP_WAVE_LINES_S. The metadata lists no APPS-synonym table references because all data access is performed by the standard wave planning engine after it consumes the custom tables returned by these procedures. Customer implementations may extend the placeholders to read or write site-specific tables of their own.

Usage Notes

The package is not intended to be called directly from a concurrent program or form. It is invoked internally by the WMS Wave Planning framework at well-defined points in the wave lifecycle: line creation, exception evaluation, and task release. Customization is performed by editing the package body in a customer-owned layer, implementing the desired logic in each placeholder, and returning TRUE from x_api_is_implemented. The package is referenced by one other package within the WMS schema, confirming its role as a subordinate hook rather than an orchestrator. Because the package is public, customizations survive patching of the standard wave planning engine, provided the documented signatures are preserved. Debug output is controlled by the INV_DEBUG_TRACE profile option, which, when enabled, writes trace information at level 4 through INV_MOBILE_HELPER_FUNCTIONS.TRACELOG.