Search Results inv_unmark_serial




Overview

APPS.SERIAL_CHECK is an Oracle E-Business Suite PL/SQL package that governs the marking and unmarking of serial numbers within the Inventory module. Its central business function is to associate (mark) serial numbers with a transaction interface record, and to release (unmark) that association when a transaction is modified or abandoned. The package exists to support the serial number entry and validation flows used by Inventory transaction processing, ensuring that serialized items are correctly reserved, tracked, and reconciled against temporary transaction staging structures before a transaction is committed to the permanent inventory tables.

The package is declared with AUTHID CURRENT_USER, meaning it executes with the privileges of the invoking user rather than its owner. Its header carries the revision marker $Header: INVMKUMS.pls 120.2 2005/06/17, indicating it is a long-standing Inventory component. The metadata classifies it with an API classification of OTHER and notes that it is referenced by 12 other packages, confirming its role as a shared utility within the Inventory transaction stack.

Key Procedures and Functions

The package exposes five documented procedures, split between the base serial-marking operations and an R12-enhanced reservations variant:

  • INV_MARK_SERIAL — The core marking routine. It accepts a from/to serial number range, an item, an organization, and header/temporary identifier references, returning a success flag. It is used to mark serial numbers as consumed by a pending transaction.
  • INV_MARK_RSV_SERIAL — An overloaded procedure introduced under the "R12 Enhanced reservations code changes" annotation. It mirrors INV_MARK_SERIAL but additionally carries reservation handling parameters (a reservation identifier and an update-reservation flag defaulting to fnd_api.g_true), allowing serial marking to coordinate with reservation records.
  • INV_UNMARK_SERIAL — The inverse of marking. It releases a serial number association using a serial code and header/temporary identifiers, with an optional inventory item id, restoring the serial to an unmarked state.
  • INV_UNMARK_RSV_SERIAL — The R12 reservations overload of the unmark operation, adding an update-reservation flag to the base unmark signature.
  • INV_UPDATE_MARKED_SERIAL — Updates an existing marked serial record, accepting a from/to serial range, item, organization, and optional temporary/header/lot identifiers, returning a boolean success value.

The consistent use of from/to serial ranges and temporary identifiers reflects the package's design around staging tables populated during interactive transaction entry.

Tables Accessed

Per the documented metadata, the package references the following tables through APPS synonyms:

  • MTL_SERIAL_NUMBERS — The master serial number table; the package reads and updates serial records to mark or unmark them.
  • MTL_RESERVATIONS — Consulted and updated by the R12 reservations procedures to keep reservation quantities aligned with serial marking.
  • MTL_TRANSACTION_LOTS_TEMP — The temporary transaction staging table where marked serial/lot rows are held before commit.
  • PLITBLM — Oracle Forms' PL/SQL table block structure, used for passing serial ranges between the form and the package.

Usage Notes

SERIAL_CHECK is invoked primarily from Inventory transaction forms (such as serial number entry and material transaction windows) and from concurrent or custom code that processes serialized transactions. The presence of PLITBLM references and temporary identifier parameters indicates tight coupling with the Oracle Forms serial-entry user interface. Custom development should call these procedures only within an active transaction context, respecting the success OUT parameters and the R12 reservation overloads when reservations are in use. Because it is referenced by 12 other packages, modifications should be undertaken cautiously to avoid cascading impacts across the Inventory transaction stack.