Search Results derive_vendor_id
Overview
PO_VENDORS_SV1 is a supplier validation server-side PL/SQL package body owned by the APPS schema in Oracle E-Business Suite. Its role is to centralize validation logic for supplier (vendor) records used throughout the Oracle Purchasing and Payables modules. The package exposes an API classified as OTHER within the ETRM repository, and its primary documented entry point is the function val_vendor_info, which validates a vendor identifier, vendor site, vendor site type, and vendor contact against the supplier validation views maintained by Purchasing. When validation fails, the function populates an OUT error code and returns FALSE, allowing the caller to reject the offending row or record. The package is referenced by one additional package in the ETRM inventory, confirming that it functions as a shared validation utility rather than a standalone program. In practice, it sits beneath higher-level supplier entry and supplier import flows, enforcing referential integrity against the current state of the supplier master before downstream processing proceeds.
Key Procedures and Functions
- val_vendor_info — The documented function that performs the core supplier validation. It accepts a vendor identifier, a vendor site type, a vendor site identifier, and a vendor contact identifier, together with an IN OUT error code parameter, and returns a BOOLEAN result of TRUE (valid) or FALSE (invalid). Its logic proceeds through distinct checkpoints tracked by an internal
x_progressvariable: it first confirms the vendor exists inpo_suppliers_val_v, returning error code PO_PDOI_INVALID_VENDOR when no row is found. It then validates the vendor site. When the vendor site type is anything other than 'RFQ SITE', the site is checked againstpo_supplier_po_sites_val_v; when the type equals 'RFQ SITE', validation againstpo_supplier_sites_val_vis used instead. A failure in either branch raises PO_PDOI_INVALID_VENDOR_SITE. Finally, when a vendor contact identifier is also supplied, the contact is validated againstpo_vendor_c. Both the vendor and the vendor site must be non-null before the site-level checks execute, and all three identifiers must be non-null before contact validation occurs. - Second documented unit — The ETRM metadata records two documented procedures/functions total; only
val_vendor_infois expanded in the available excerpt. The companion unit is internal to the same package body and supports the same supplier validation domain.
Tables Accessed
The package reads the following objects through APPS synonyms and validation views. No DML is performed; all access is read-only counting logic.
- PO_SUPPLIERS_VAL_V — Used to confirm that the supplied vendor identifier corresponds to a valid, currently selectable supplier.
- PO_SUPPLIER_PO_SITES_VAL_V — Used to confirm that a vendor site is valid for purchasing purposes when the site type is not 'RFQ SITE'.
- PO_SUPPLIER_SITES_VAL_V — Used to confirm that a vendor site is valid for RFQ purposes when the site type equals 'RFQ SITE'.
- PO_VENDOR_C — The supplier contact interface/validation table consulted when a vendor contact identifier must be verified.
Usage Notes
The ETRM metadata does not identify a concrete invoker, but the design of the API reveals its intended call paths. Because the function returns a BOOLEAN and an application-specific error code, it is suited to being called directly from PL/SQL in supplier entry forms, the supplier sites and contacts regions of the Vendor form, and from batch supplier import or conversion routines that need to validate vendor, site, and contact combinations before inserting or updating downstream records. Callers should treat the OUT error code as the contract for user-facing messages, expecting PO_PDOI_INVALID_VENDOR or PO_PDOI_INVALID_VENDOR_SITE as the failure indicators, and should be aware of the null-propagation rules: a null vendor ID short-circuits all further validation, and contact validation is skipped unless vendor, site, and contact are all present. The x_progress range codes (010 through 040) provide diagnostic breadcrumbs for debugging which checkpoint raised an error. Date-sensitive implementations should note the package header stamp (115.2, 2002), indicating this logic dates from an older Purchasing code line that remains in service across 12.1.1 and 12.2.2.
-
PACKAGE BODY: APPS.PO_VENDORS_SV1
12.1.1
-
PACKAGE BODY: APPS.PO_VENDORS_SV1
12.2.2
-
PACKAGE: APPS.PO_VENDORS_SV1
12.1.1
-
PACKAGE: APPS.PO_VENDORS_SV1
12.2.2
-
PACKAGE: APPS.AP_XML_INVOICE_INBOUND_PKG
12.2.2
-
PACKAGE: APPS.AP_XML_INVOICE_INBOUND_PKG
12.1.1
-
PACKAGE: APPS.PO_PDOI_HEADER_PROCESS_PVT
12.1.1
-
PACKAGE: APPS.PO_PDOI_HEADER_PROCESS_PVT
12.2.2
-
PACKAGE: APPS.POS_ASN_XML
12.1.1
-
PACKAGE: APPS.POS_ASN_XML
12.2.2
-
PACKAGE BODY: APPS.PO_PDOI_PREPROC_PVT
12.1.1
-
PACKAGE BODY: APPS.POS_ASN_XML
12.1.1
-
PACKAGE BODY: APPS.POS_ASN_XML
12.2.2
-
PACKAGE BODY: APPS.PO_PDOI_PREPROC_PVT
12.2.2
-
PACKAGE BODY: APPS.AP_XML_INVOICE_INBOUND_PKG
12.2.2
-
PACKAGE BODY: APPS.AP_XML_INVOICE_INBOUND_PKG
12.1.1
-
APPS.PO_VENDORS_SV1 dependencies on PO_MESSAGE_S
12.2.2
-
PACKAGE BODY: APPS.PO_PDOI_HEADER_PROCESS_PVT
12.1.1
-
APPS.PO_VENDORS_SV1 dependencies on PO_MESSAGE_S
12.1.1
-
PACKAGE BODY: APPS.PO_PDOI_HEADER_PROCESS_PVT
12.2.2
-
APPS.PO_PDOI_HEADER_PROCESS_PVT dependencies on PO_TBL_VARCHAR2000
12.2.2
-
APPS.PO_PDOI_HEADER_PROCESS_PVT dependencies on PO_TBL_VARCHAR2000
12.1.1
-
APPS.PO_VENDORS_SV1 dependencies on PO_VENDORS_SV1
12.1.1
-
APPS.PO_VENDORS_SV1 dependencies on PO_VENDORS_SV1
12.2.2
-
APPS.PO_PDOI_HEADER_PROCESS_PVT dependencies on DBMS_SQL
12.1.1
-
APPS.PO_PDOI_HEADER_PROCESS_PVT dependencies on PO_TBL_NUMBER
12.1.1
-
APPS.PO_PDOI_HEADER_PROCESS_PVT dependencies on PO_SESSION_GT
12.1.1
-
APPS.PO_PDOI_HEADER_PROCESS_PVT dependencies on PO_SESSION_GT
12.2.2
-
APPS.PO_PDOI_HEADER_PROCESS_PVT dependencies on DBMS_SQL
12.2.2
-
APPS.PO_PDOI_HEADER_PROCESS_PVT dependencies on PO_TBL_NUMBER
12.2.2
-
APPS.PO_PDOI_HEADER_PROCESS_PVT dependencies on PO_TBL_VARCHAR2000
12.1.1
-
APPS.PO_PDOI_HEADER_PROCESS_PVT dependencies on PO_TBL_VARCHAR2000
12.2.2
-
APPS.AP_XML_INVOICE_INBOUND_PKG dependencies on AP_XML_INVOICE_INBOUND_PKG
12.2.2
-
APPS.PO_PDOI_HEADER_PROCESS_PVT dependencies on DBMS_SQL
12.1.1
-
APPS.AP_XML_INVOICE_INBOUND_PKG dependencies on AP_XML_INVOICE_INBOUND_PKG
12.1.1
-
APPS.PO_PDOI_HEADER_PROCESS_PVT dependencies on DBMS_SQL
12.2.2
-
APPS.PO_PDOI_HEADER_PROCESS_PVT dependencies on PO_SESSION_GT
12.1.1
-
APPS.PO_PDOI_HEADER_PROCESS_PVT dependencies on PO_TBL_VARCHAR30
12.1.1
-
APPS.PO_PDOI_HEADER_PROCESS_PVT dependencies on PO_TBL_VARCHAR30
12.2.2
-
APPS.PO_PDOI_HEADER_PROCESS_PVT dependencies on PO_SESSION_GT
12.2.2
-
APPS.PO_PDOI_HEADER_PROCESS_PVT dependencies on PO_TBL_NUMBER
12.1.1
-
APPS.AP_XML_INVOICE_INBOUND_PKG dependencies on AP_DEBUG_PKG
12.1.1
-
APPS.AP_XML_INVOICE_INBOUND_PKG dependencies on AP_DEBUG_PKG
12.2.2
-
APPS.PO_PDOI_HEADER_PROCESS_PVT dependencies on PO_TBL_NUMBER
12.2.2