Results for “return_reqs_to_pool”
4 results
AI-generated from documented ETRM metadata — verify critical details on the linked pages.
Overview
APPS.PO_NEGOTIATIONS_SV1 is the core server-side PL/SQL package body that implements the negotiation APIs for Oracle Purchasing in Oracle E-Business Suite 12.1.1 and 12.2.2. It is the programmatic entry point for creating, updating, and deleting sourcing negotiations — RFQs, quotations, auctions, and blanket purchase agreements — and for managing the requisition pool from which negotiation lines are sourced. The package is classified under ETRM as OTHER rather than a formal public API, but its procedures are invoked both by Oracle's own applications and by external Java clients.
The header comment ($Header: POXNEG1B.pls 120.47.12020000.2) identifies the file as POXNEG1B.pls, part of the Purchasing negotiation module. The embedded comment for create_negotiation_bulk explains its raison d'être: it exists as a wrapper around create_negotiation because the req_lines_table_type used by the internal API is declared inside the package and is therefore not visible to Java callers. This design pattern — a bulk wrapper exposing PL/SQL collections as PO_TBL_NUMBER and PO_TBL_VARCHAR tables — is characteristic of the R12 negotiation APIs.
Key Procedures and Functions
The documented 17 subprograms fall into three functional groups.
- CREATE_NEGOTIATION and CREATE_NEGOTIATION_BULK — the principal creation entry points. Both accept a negotiation type, a grouping method, requisition line identifiers, line types, items, revisions, categories, quantities, units of measure, job identifiers, the negotiation outcome, and a document organization. The bulk variant accepts array-based (
_TBL) parameters so that Java and other external callers can pass collections without referencing package-private types. - DELETE_NEGOTIATION_REF, UPDATE_NEGOTIATION_REF, UPDATE_NEGOTIATION_LINE_REF, CHECK_NEGOTIATION_REF — reference-maintenance routines that validate, modify, or remove the linkage between a negotiation document and its source references.
- UPDATE_REQ_POOL, REMOVE_FROM_REQ_POOL, RETURN_REQS_TO_POOL — manage the pool of requisition lines available for inclusion in a negotiation, moving lines into and out of the pool as documents are created or cancelled.
- RENEGOTIATE_BLANKET — supports the blanked FPI renegotiation flow, allowing an existing blanket agreement to be renegotiated.
- GET_AUCTION_DISPLAY_LINE_NUM — returns a display line number for auction lines, used when rendering auction documents.
- COPY_REQ_UDA_TO_SOL — copies requisition descriptive flexfield (UDA) values onto the sourcing line.
- UPDATE_SOL_REF_DELETE_ALL, UPDATE_SOL_REF_DELETE_LINE, UPDATE_SOL_REF_AMEND — maintain sourcing-line references when lines are deleted in bulk, deleted individually, or amended.
Tables Accessed
The package touches the following documented tables through APPS synonyms:
- PO_REQUISITION_LINES_ALL — the source of requisition lines that become negotiation lines; read to populate line details and updated when lines are assigned to or returned from the pool.
- PON_AUCTION_HEADERS_ALL, PON_AUCTION_HEADERS_EXT_B, PON_AUCTION_HEADERS_EXT_TL — the base, extension, and translation tables for auction headers, written when a negotiation is created or amended.
- PON_AUCTION_ITEM_PRICES_ALL — stores item pricing for auction lines.
- PON_AUC_HEADERS_INTERFACE, PON_AUC_HEADERS_INTERFACE_S, PON_AUC_ITEMS_INTERFACE — interface tables used to stage header and item data for concurrent import processing.
- PON_ATTACHMENTS_INTERFACE along with FND_ATTACHED_DOCUMENTS, FND_DOCUMENTS, FND_DOCUMENTS_TL — used to attach and retrieve documents associated with negotiations.
- MTL_SYSTEM_ITEMS_KFV, MTL_UNITS_OF_MEASURE — reference lookups for item and unit-of-measure validation.
- FINANCIALS_SYSTEM_PARAMETERS — provides operating unit defaults during document creation.
Usage Notes
PO_NEGOTIATIONS_SV1 is normally invoked indirectly. The Oracle Purchasing negotiation and auction forms call create_negotiation_bulk for programmatic creation, while the Autocreate and sourcing flows use update_req_pool, remove_from_req_pool, and return_reqs_to_pool to maintain requisition availability. External Java clients call create_negotiation_bulk directly, which is precisely why that wrapper was introduced.
The package is referenced by seven other packages, confirming its role as a shared service layer rather than a standalone module. Because it is classified as OTHER rather than a formal public API, Oracle does not guarantee interface stability; customizations should call the documented public entry points (create_negotiation_bulk in particular) and avoid relying on internal helpers. All array parameters must be populated as PO_TBL_NUMBER and PO_TBL_VARCHAR collections, and callers must supply a valid API version. Standard EBS error-handling conventions apply: exceptions are raised with FND_MSG_PUB messages and callers should check the returned message stack.