Search Results duplicate_sequence_number




Overview

APPS.PO_REQ_TEMPLATE_SV2 is a server-side PL/SQL package body in the Oracle E-Business Suite Purchasing module. It supplies the core validation and data-retrieval logic used by the Requisition Templates (ReqExpress) feature, which allows buyers and requesters to build reusable requisition templates that pre-populate line, item, sourcing, and pricing information on new requisitions. The package operates as an "OTHER"-classified API, meaning it is not a formal public interface but an internal service layer invoked by the Requisition Templates forms and supporting logic.

The body carries header revision information dating to 2003, indicating it is a long-standing component that has been carried forward unchanged into the 12.1.1 and 12.2.2 releases. Its procedures combine two responsibilities: populating descriptive and sourcing attributes for a template line, and enforcing uniqueness constraints on template-defining name and sequence attributes. The user search term "duplicate_sequence_number" corresponds directly to one of the package's documented procedures, which is used to detect conflicting line sequence numbering within a template.

Key Procedures and Functions

  • GET_REQ_LINE_INFO — The principal data-retrieval routine. It returns item, revision, description, category, unit of measure, unit price, vendor, vendor site and contact, suggested buyer, source type and source organization, line type, RFQ flag, and amount information for a requisition template line, based on a row identifier and inventory organization. It also derives display values such as vendor name, vendor site, source organization name, and suggested buyer name.
  • DUPLICATE_SEQUENCE_NUMBER — Validates whether a proposed line sequence number already exists within a Requisition Template (ReqExpress) header, preventing duplicate line ordering from being saved.
  • DUPLICATE_EXPRESS_NAME — Checks whether a Requisition Template name already exists, enforcing unique template names.
  • INVENTORY_ITEM_COST — Retrieves the cost associated with an inventory item, used to default or validate pricing on template lines.
  • PRIMARY_UNIT_OF_MEASURE — Returns the primary unit of measure for an item, supporting defaulting of the UOM attribute.
  • GET_ORDER_TYPE — Returns the applicable order type lookup value, used to determine the purchasing document type associated with a template line.

Tables Accessed

  • PO_REQEXPRESS_HEADERS and PO_REQEXPRESS_LINES — The core Requisition Template (ReqExpress) header and line tables. These support duplicate name and sequence validation and provide the line rows read by GET_REQ_LINE_INFO.
  • PO_REQUISITION_LINES — The requisition line table, supplying line-level descriptive and sourcing attributes.
  • MTL_SYSTEM_ITEMS — Item master information, used to resolve item attributes and primary unit of measure.
  • PO_LINE_TYPES — Line type definitions, used to validate or retrieve the line type associated with template lines.
  • DUAL — Used for single-row computations and defaulting logic.

Usage Notes

PO_REQ_TEMPLATE_SV2 is typically invoked from the Requisition Templates (ReqExpress) forms while a user creates or edits a template. When a line is entered or queried, the form calls GET_REQ_LINE_INFO to populate dependent fields, and calls DUPLICATE_SEQUENCE_NUMBER and DUPLICATE_EXPRESS_NAME during validation to enforce uniqueness before saving. INVENTORY_ITEM_COST, PRIMARY_UNIT_OF_MEASURE, and GET_ORDER_TYPE support item defaulting and pricing behavior.

Because the package is classified as OTHER and is referenced by no other packages, it is not intended as a public integration API. Customizations should avoid calling it directly and should instead rely on supported requisition or template APIs, since internal signatures may change across patches. In 12.1.1 and 12.2.2 deployments the package remains form-driven, with no concurrent program interface documented.