Search Results amount_not_null




Overview

The APPS.PO_VAL_NOTIFICATION_CONTROLS package body is a validation utility within the Oracle E-Business Suite Procurement module, specifically belonging to the Purchasing (PO) validation framework. Its role is to apply a discrete set of business-rule checks against notification control data, ensuring that values passed into the notification subsystem conform to defined constraints before they are persisted or processed.

The package is part of the broader PO validation architecture, evidenced by its dependencies on PO_VALIDATIONS, PO_VALIDATION_HELPER, and the PO_VALIDATION_RESULTS_TYPE datatype. This architecture centralizes field-level and record-level validation logic so that multiple purchasing flows enforce identical rules. The package is classified under the ETRM as an "OTHER" API type and is documented as VALID in the APPS schema.

Rather than implementing a public, externally callable API, this body primarily exposes internal validation routines that are invoked by the validation framework rather than directly by end users. Its contribution is to standardize the checks applied to notification control attributes such as date ranges, percentages, and monetary amounts.

Key Procedures and Functions

The package body documents five procedures or functions, each encapsulating a single validation rule:

  • START_DATE_LE_END_DATE — Verifies that the start date associated with a notification control does not fall after its corresponding end date.
  • PERCENT_LE_ONE_HUNDRED — Confirms that any percentage value does not exceed one hundred, guarding against invalid thresholds.
  • AMOUNT_GT_ZERO — Ensures that a monetary amount is strictly greater than zero, rejecting zero or negative values.
  • AMOUNT_NOT_NULL — Verifies that a required amount value has been supplied and is not null.
  • START_DATE_ACTIVE_NOT_NULL — Ensures that the start date used to activate a notification control is populated, preventing activation without a valid effective date.

These routines return or populate validation results through the PO_VALIDATION_RESULTS_TYPE structure, enabling the calling framework to aggregate and report errors consistently.

Tables Accessed

The documented table referenced through APPS synonyms is PLITBLM, a PL/SQL table (index-by table) type used as an in-memory collection rather than a physical database table. This aligns with the package's dependency on PO_TBL_DATE, PO_TBL_NUMBER, and PO_TBL_VARCHAR30 — collection types used to pass arrays of values into the validations in bulk. Because the validations operate on scalar and collection inputs rather than performing direct DML, the package does not read or write notification control base tables directly; persistence is handled elsewhere in the purchasing validation flow.

Usage Notes

PO_VAL_NOTIFICATION_CONTROLS is an internally consumed utility. It is not referenced by any database object according to the ETRM dependency data, and it references several PO core packages, including PO_CORE_S, PO_MESSAGE_S, PO_LOG, and PO_VALIDATIONS. The presence of PO_LOG indicates that validation outcomes may be logged for diagnostic or audit purposes.

Typical invocation occurs through the purchasing validation framework or notification configuration forms, where user-entered notification control attributes are validated before commit. Customizations should not call these routines directly in place of the standard validation entry points; instead, developers extending notification controls should rely on the framework to dispatch the appropriate checks. Because the package is documented as a dependent rather than a referenced object, it is unlikely to be a supported extension point, and direct modification is discouraged.