Search Results conc_picking




Overview

GME_PICKING_PVT is the private PL/SQL package that governs material picking activity for Oracle Process Manufacturing (OPM) batches within Oracle E-Business Suite. It is the engine behind OPM's batch material picking and pick-slip generation functionality, translating batch requirements held in GME_MATERIAL_DETAILS into actual inventory reservations and move-order transactions. The package specification is compiled with AUTHID CURRENT_USER and carries a header string referencing GMEVPCKS.pls, confirming its heritage as an OPM supply-chain module rather than a pure discrete manufacturing component.

At a business level, the package answers a simple but operationally critical question: what quantity of each ingredient must be drawn from inventory to satisfy an open batch, a backordered requirement, or a work-in-process reservation? It then executes the physical or logical movement needed to satisfy that requirement. Two record and table types, mtl_req_rec and mtl_req_tab, are defined in the specification and act as the in-memory transport structures that carry batch material requirements between the public-facing concurrent process and the private picking logic.

Key Procedures and Functions

The package exposes four documented callable units:

  • CONC_PICKING — The principal concurrent-program entry point. It accepts batch selection and filtering criteria (organization, batch range, operation, product, ingredient, requirement date range, grouping rule) together with flags for pick-slip printing and task planning. It coordinates the overall picking run, typically invoked from a concurrent program that submits picking for a selected population of batches.
  • GET_OPEN_QTY — A function that returns the outstanding quantity for a given batch material requirement. It receives organization, batch, material detail, item, subinventory and quantity context, and returns the computed open quantity. A development comment indicates it was amended (Bug 5212556) to receive inventory_item_id, reflecting a refinement in how requirements are identified.
  • PICK_MATERIAL — Performs the picking action for a collection of material requirements passed in the mtl_req_tab structure. It returns a status and the concurrent request identifier of the job it initiates, so callers can track the resulting move-order activity.
  • PROCESS_LINE — Operates at the individual move-order line level, taking a move-order line record and grouping-rule identifier, and is the lower-level routine that applies grouping and task-planning logic to a single requirement.

Tables Accessed

The package reads and writes through APPS synonyms. GME_MATERIAL_DETAILS is the primary source of batch material requirements and is central to open-quantity and picking calculations. MTL_RESERVATIONS supports the reservation of on-hand stock against batch demand. MTL_MATERIAL_TRANSACTIONS_TEMP is used in the transaction-interface flow that ultimately moves inventory. MTL_SYSTEM_ITEMS supplies item attribute validation. MTL_TXN_REQUEST_HEADERS and MTL_TXN_REQUEST_LINES hold the move-order documents created or updated by picking. PLITBLM is the OPM PL/SQL table used to marshal batch data between the concurrent and private layers.

Usage Notes

GME_PICKING_PVT is private API (classification PVT) and is not intended as a public integration surface; Oracle supports it only via the OPM application flows. In practice it is invoked from the OPM batch picking concurrent program, from OPM forms that trigger picking or pick-slip printing, and from other OPM supply-chain packages that require programmatic picking. The ETRM metadata records that it is referenced by one other package. Custom code should call the documented entry points rather than internal routines, and should expect the AUTHID CURRENT_USER behavior so that privilege resolution follows the calling schema.