Search Results po_val_lines2




Overview

PO_VAL_LINES2 is a validation package within the Oracle Purchasing module of Oracle E-Business Suite, residing in the APPS schema. Its role is to perform field-level and record-level validation on purchase order and blanket agreement line attributes before those records are committed to the database. The package functions alongside PO_VAL_LINES and the broader PO_VALIDATIONS framework, and it is invoked through the purchasing validation layer that governs document entry in Oracle Purchasing and iProcurement. The "2" suffix indicates that this package addresses a distinct subset of line validation logic—typically the second grouping of validation routines—allowing the validation framework to partition rules across multiple packages for maintainability and performance.

The package exposes 44 documented procedures and functions and is classified as an "OTHER" API, meaning it is not a public, supported extension API but rather an internal validation component consumed by the Purchasing application. It carries a VALID status in the ETRM repository, confirming the package compiles and is active in release 12.2.2 and the 12.1.1 code line.

Key Procedures and Functions

The documented procedures cover a broad set of line-level attributes, each encapsulating the validation rule for one column or related column group. They include:

Each routine writes results into PO_VALIDATION_RESULTS_TYPE, the shared structure the validation framework uses to accumulate errors and warnings.

Tables Accessed

The package reads and, where appropriate, references the following via APPS synonyms: PO_LINES and PO_LINES_ALL for the line records under validation; PO_DOC_STYLE_HEADERS and PO_DOC_STYLE_VALUES to resolve document style defaults and governing rules; MTL_SYSTEM_ITEMS, MTL_SYSTEM_ITEMS_TL, MTL_ITEM_REVISIONS, MTL_CATEGORIES, MTL_CATEGORIES_KFV, MTL_ITEM_CATEGORIES, MTL_CATEGORY_SET_VALID_CATS, and MTL_DEFAULT_CATEGORY_SETS for item, revision, and category validation; FND_ID_FLEX_STRUCTURES for key flexfield context; FINANCIALS_SYSTEM_PARAMETERS for operating unit and system options; and PO_JOB_ASSOCIATIONS_B for project job relationships. Collectively these reads ensure that line data conforms to item master, category set, and system-level configuration before the line is saved.

Usage Notes

PO_VAL_LINES2 is not intended for direct invocation by custom code. It is called by PO_VALIDATIONS, which orchestrates the validation sequence for a purchasing document, and it is referenced by one other package in the dependency graph. In practice, the routines fire automatically when a user enters or modifies a line in the Purchasing forms, when iProcurement requisition lines are converted to purchase orders, and when concurrent programs such as PO processes perform batch document creation or import. Because the package returns results through PO_VALIDATION_RESULTS_TYPE rather than raising exceptions directly, callers are responsible for interpreting and presenting the accumulated errors. Customizations should extend validation through the supported validation hooks rather than modifying PO_VAL_LINES2, since the package is internal and subject to change across patch levels.