Search Results so_picking_headers




Overview

SO_PICKING_HEADERS is a public synonym and view owned by the APPS schema in Oracle E-Business Suite, classified within the Order Entry (OE) product family. Its ETRM description is deliberately terse — "10SC ONLY" — indicating that the view was created to support a specific ten-character, single-org (10SC) localization or operating model rather than the general multi-org architecture. Status is VALID in both 12.1.1 and 12.2.2. Functionally, the view presents picking header information: the picking batch that groups order lines into a pick slip for warehouse execution. Each row represents a single picking header, identified by PICKING_HEADER_ID, which links to the order, warehouse, ship-to site, and the associated pick slip number.

Because the view applies the CLIENT_INFO-based org filter in its WHERE clause, it behaves like an org-secured view (similar in intent to _ALL tables filtered by ORG_ID). Applications and reports querying SO_PICKING_HEADERS therefore return only picking headers belonging to the organization set in the session's CLIENT_INFO. This makes it suitable for reporting, custom concurrent programs, and integrations that need to retrieve pick slip and shipping attributes without manually applying multi-org predicates.

Underlying Base Objects

SO_PICKING_HEADERS is defined over a single base object: SO_PICKING_HEADERS_ALL, referenced through a synonym. The view text is a straightforward column projection — the same column list appears in both the SELECT and the base table — with the distinguishing logic residing entirely in the WHERE clause:

  • The predicate reads ORG_ID from the base table and compares it to a value derived from USERENV('CLIENT_INFO').
  • SUBSTRB(USERENV('CLIENT_INFO'),1,1) checks whether the first byte is a space; if so, NULL is returned, otherwise the first ten bytes are converted to a number.
  • Both sides of the comparison are wrapped in NVL(...,-99), so a NULL organization session value resolves to -99, matching rows whose ORG_ID is likewise NULL or unresolvable. This provides a consistent, fail-closed default for the "10SC" single-org model.

Because no joins are present, the view carries no aggregation and no denormalization; it is purely a security-filtered access path to SO_PICKING_HEADERS_ALL.

Key Columns

  • PICKING_HEADER_ID — Primary key of the picking header; the join key to picking detail lines and to delivery data.
  • PICK_SLIP_NUMBER — The user-facing pick slip identifier, the value most commonly searched by users seeking a specific picking document.
  • ORDER_HEADER_ID — Foreign key to OE_ORDER_HEADERS_ALL, tying the pick slip to its sales order.
  • WAREHOUSE_ID — Organization/inventory location from which the order is picked.
  • SHIP_TO_SITE_USE_ID — Ship-to site use reference for the destination.
  • STATUS_CODE — Current lifecycle state of the picking header (released, picked, shipped, confirmed).
  • DELIVERY_ID — Link to the delivery with which the pick slip is associated.
  • WAYBILL_NUM, SHIP_METHOD_CODE — Carrier waybill and shipping method.
  • PICKED_BY_ID, PACKED_BY_ID — Warehouse personnel responsible for picking and packing.
  • DATE_RELEASED, DATE_SHIPPED, DATE_CONFIRMED — Milestone timestamps for release, shipment, and confirmation.
  • WEIGHT, WEIGHT_UNIT_CODE, NUMBER_OF_BOXES — Physical shipping metrics.
  • ORG_ID — Organization identifier used by the view's security predicate.
  • ATTRIBUTE1–15, CONTEXT — DFF (descriptive flexfield) segments for extensibility.

Common Use Cases and Queries

The most frequent requirement is retrieving a pick slip by its number, which aligns with the user search term "pick_slip_number":

SELECT picking_header_id, pick_slip_number, order_header_id, warehouse_id, status_code, date_released, date_shipped FROM apps.so_picking_headers WHERE pick_slip_number = '&p_pick_slip';

Additional scenarios include listing all released pick slips for a warehouse, auditing shipping milestones, and joining to order headers for reporting:

  • Filter by STATUS_CODE and WAREHOUSE_ID to produce a warehouse work queue.
  • Join ORDER_HEADER_ID to OE_ORDER_HEADERS_ALL for customer and order context.
  • Aggregate NUMBER_OF_BOXES and WEIGHT by DATE_SHIPPED for logistics reporting.

Because the CLIENT_INFO predicate restricts results to the current organization, no explicit ORG_ID filter is required in these queries.