Results for “get_string”

50+ results




AI-generated from documented ETRM metadata — verify critical details on the linked pages.

Overview

The APPS.WSH_OPSM_ASN_ITEM_GENEALOGY package is a server-side PL/SQL component within Oracle E-Business Suite that supports item genealogy and serial number tracking across shipping and inventory operations. In the context of shop floor and outbound logistics, genealogy refers to the parent-child relationship between items, lots, and serial numbers as they move through manufacturing and shipping. This package enables Oracle's Operational Support and Management (OPSM) functionality related to Advance Shipment Notices (ASN), providing the ability to trace the lineage of a shipped item back through its component hierarchy, including which lots, serial numbers, and delivery details are associated with it.

The package declares AUTHID CURRENT_USER, meaning it executes with the privileges of the invoking user rather than the owner, which is relevant for security and schema access in the APPS environment. Two composite record types, rec_genealogy and rec_sgenealogy, are defined to carry genealogy data. Notably, the rec_genealogy record was extended (per bug 10357152, an OPSM performance fix) to include DELIVERY_DETAIL_ID, DELIVERY_ID, and GENEALOGY_OBJECT_ID, reflecting the package's role in linking genealogy records to outbound delivery structures.

Key Procedures and Functions

  • GET_GENEALOGY — The primary function returning genealogy data, populating the structured record types with item, lot, serial, date (origination, best-by, retest, expiration), and parent-child relationship fields.
  • CHECK_FOR_ITEMGENEALOGY — Determines whether item genealogy data exists for a given item or context, allowing callers to conditionally branch before invoking heavier retrieval logic.
  • GET_NEXT_SERIAL — Generates or retrieves the next applicable serial number, supporting serial number assignment during shipping or transaction processing.
  • GET_DIGITS — A utility that extracts numeric digits, typically used for serial number parsing or formatting logic.
  • GET_STRING — A helper that extracts or manipulates string content, likely used for serial number and lot parsing.
  • GET_STRING / GET_DIGITS — Both serve as low-level parsing utilities supporting the serial and lot handling logic used throughout the package.

Tables Accessed

The package reads from a broad set of inventory, manufacturing, and shipping tables accessed primarily via APPS synonyms. Core genealogy data is sourced from MTL_OBJECT_GENEALOGY, which stores the parent-child object relationships central to genealogy. Serial and lot attributes come from MTL_SERIAL_NUMBERS, MTL_SERIAL_NUMBERS_TEMP, MTL_LOT_NUMBERS, and MTL_TRANSACTION_LOT_NUMBERS. Transaction history is obtained from MTL_MATERIAL_TRANSACTIONS and MTL_UNIT_TRANSACTIONS. Delivery context is drawn from WSH_DELIVERY_DETAILS, WSH_NEW_DELIVERIES, and WSH_SERIAL_NUMBERS. Manufacturing job identification uses WIP_ENTITIES, while organization defaults and cross-references come from MTL_PARAMETERS and MTL_CROSS_REFERENCES. The PLITBLM table supports PL/SQL table (array) operations within the package.

Usage Notes

This package is typically invoked during ASN generation and shipping confirmation workflows, where the system must assemble and validate the genealogy of serialized or lot-controlled items being shipped. It is referenced by two other packages within the shipping suite, indicating an internal role rather than direct end-user invocation. It is not a public concurrent program; rather, it is called programmatically by forms, other PL/SQL packages, or custom extensions that require item genealogy retrieval. Because it executes AUTHID CURRENT_USER and relies on APPS synonyms, callers must ensure appropriate privileges are granted. Custom developers integrating genealogy traceability should invoke GET_GENEALOGY after confirming applicability with CHECK_FOR_ITEMGENEALOGY. The serial parsing utilities (GET_DIGITS, GET_STRING, GET_NEXT_SERIAL) should be treated as internal helpers, not as general-purpose APIs.