Search Results rcv_fail_all_rows
Overview
APPS.RCV_NORMALIZE_DATA_PKG is a PL/SQL package within Oracle E-Business Suite Receiving (RCV) that supports the normalization and staging of inbound receiving transactions prior to validation and processing. In Oracle EBS 12.1.1 and 12.2.2, receiving data frequently arrives from heterogeneous sources such as Advanced Shipment Notices (ASN), XML/EDI gateways, spreadsheets, and external warehouse systems. These inbound records are loaded into interface tables in a raw form and then must be normalized — that is, aligned into a consistent structure, grouped, and made ready for the Receiving Transaction Processor or related validation logic. RCV_NORMALIZE_DATA_PKG provides that normalization capability, most notably through its single documented public procedure, PROCESS_PENDING_ROWS.
The package defines several global constructs referenced by its processing logic, including g_fail_all (defaulted from the profile option RCV_FAIL_ALL_ROWS), g_multiple_groups, g_group_id, g_request_id, and g_processing_mode. These globals indicate that the package is designed to operate in both single-group and multi-group mode and to be driven from a concurrent program context where a request ID is supplied.
Key Procedures and Functions
The ETRM metadata documents exactly one public program unit in this package:
- PROCESS_PENDING_ROWS — The primary entry point of the package. It processes rows that are in a pending state within the receiving interface tables, normalizing them so that downstream validation and transaction processing can proceed. Based on the package header, the procedure accepts a processing mode, a group identifier, a request identifier, and an optional organization identifier. The
p_processing_modeparameter controls which operational mode governs the run, whilep_group_idallows normalization to be scoped to a specific interface group. Thep_request_idparameter ties execution to a concurrent request, and the optionalp_org_idpermits restriction to a single operating unit or inventory organization. No additional parameter details beyond those shown in the package specification are asserted here.
Tables Accessed
The package reads and writes the following documented tables through APPS synonyms:
- RCV_HEADERS_INTERFACE and RCV_TRANSACTIONS_INTERFACE — The core receiving interface tables. Pending rows awaiting normalization reside here, and the package processes and updates them.
- RCV_INTERFACE_GROUPS_S — Stores interface group definitions, supporting the group-scoped behavior implied by
p_group_idandg_group_id. - RCV_TRANSACTIONS — The base transaction table, consulted or updated as normalized rows move toward final processing.
- PO_LINE_LOCATIONS_ALL — Purchase order shipment/line location data, used to reconcile inbound interface rows against valid PO schedules.
- WMS_LPN_CONTENTS_INTERFACE — Warehouse Management LPN (license plate number) contents interface, relevant where LPN-based receiving is normalized.
- DUAL — Used for single-row selection and expression evaluation.
Usage Notes
RCV_NORMALIZE_DATA_PKG is typically invoked from the Receiving transaction processing flow, either through a concurrent program (evidenced by the p_request_id parameter and the RCV_FAIL_ALL_ROWS profile option) or directly from forms and custom code that stage receiving interface data. In Oracle EBS 12.1.1 and 12.2.2, it is commonly scheduled or called after an inbound data load to prepare pending interface rows before the Receiving Transaction Processor validates and posts them.
Because the package is classified as an OTHER API with a limited documented surface, customizations should primarily call PROCESS_PENDING_ROWS rather than the package internals. The presence of the RCV_FAIL_ALL_ROWS profile option allows administrators to control failure handling — when set to 'Y', all rows in a batch fail together rather than partially succeeding. The ETRM metadata records no other packages referencing this one, indicating it functions as an entry-point rather than as a shared utility. Developers integrating external receiving data should invoke this package within the standard group/request context to preserve its normalization and error-handling behavior.