Search Results po_req_cancel_table




Overview

PO_RCO_VALIDATION_GRP is a public PL/SQL package in the Oracle E-Business Suite Purchasing module, owned by APPS and declared with AUTHID CURRENT_USER. It serves as the validation and submission group for requisition change, cancellation, and withdrawal processing. The package encapsulates the business rules that determine whether a requisition header or line is in a state that permits modification, cancellation, or withdrawal, and it provides the entry points used to persist and submit those changes. Its internal (non-public) validation logic centralizes the eligibility checks required by Purchasing, iLine, and sourcing flows before requisition data is altered.

Key Procedures and Functions

The package exposes 23 documented procedures and functions. The validation functions IS_REQ_CANCELLABLE and IS_REQ_CHANGEABLE evaluate a requisition header and indicate whether cancellation or modification is permissible. IS_ANY_LINE_WITHDRAWABLE and IS_REQLINE_CANCELLABLE perform the equivalent checks at the line level. IS_REQ_LINE_CHANGEABLE returns a set of flag outputs describing which specific attributes may be changed, while IS_REQ_LINE_CANCELLABLE accepts a flag parameter controlling its cancellation evaluation.

The core processing procedures are SAVE_REQCHANGE, SAVE_IREQCHANGE, and SAVE_REQCANCEL, which accept change and cancel tables and return a change request group identifier, a return message, and an error table. Corresponding submission procedures SUBMIT_REQCHANGE, SUBMIT_IREQCHANGE, SUBMIT_REQCANCEL, and SUBMIT_IREQCANCEL drive the request submission after validation. SAVE_IREQCANCEL handles the internal requisition cancellation path. CALCULATE_DISTTAX computes recoverable and non-recoverable tax for a distribution. The functions IS_ON_COMPLEX_WORK_ORDER and IS_COMPLEX_WORK_ORDER support work-order-related eligibility checks, GET_PREPARER_NAME resolves a preparer identity, and UPDATE_REQCANCEL_FROM_SO and UPDATE_REQCHANGE_FROM_SO synchronize change and cancel records originating from sales order flows.

Tables Accessed

The package references PO_REQUISITION_LINES_ALL through an APPS synonym, reading and updating requisition line data during change, cancellation, and withdrawal operations. It also references DBMS_SQL for dynamic SQL execution and PLITBLM, the standard Oracle Applications PL/SQL character table type, used for message and error handling. The change, cancel, and error data structures are passed as PL/SQL table parameters rather than direct table access.

Usage Notes

PO_RCO_VALIDATION_GRP is invoked from the Purchasing requisition forms and related iProcurement pages when a user attempts to change or cancel a requisition, and from concurrent programs that batch-process requisition changes. The SUBMIT_REQCHANGE entry point is the documented interface used to request that a requisition change be submitted after validation and save. Custom code extending requisition change or cancellation functionality should call the validation functions first and then the corresponding save and submit procedures, observing the returned status, message, and error table outputs. Because the package is declared AUTHID CURRENT_USER and owned by APPS, callers must have execute privilege on the package and appropriate access to the underlying requisition objects. One other package references this group, confirming its role as a shared validation layer rather than a standalone utility.