Search Results so_holds




Overview

The SO_HOLDS table is a core master data table within the Oracle E-Business Suite (EBS) Order Entry (OE) module. It serves as the central repository for defining hold types, which are business rules used to prevent the progression of an order line through its workflow. Holds are a critical control mechanism, allowing organizations to enforce policies related to credit, shipping, pricing, or custom business logic. The table stores the definition of each hold, while its application to specific order lines is managed in related transactional tables. Its role is to provide a standardized, reusable library of hold conditions that can be applied automatically by the system or manually by users to manage order fulfillment.

Key Information Stored

The table's structure is designed to define the characteristics of a hold. The primary columns, as indicated by the provided metadata, include the unique identifier HOLD_ID and the NAME of the hold, which together form the table's primary and unique keys. A critical foreign key column is ACTION_ID, which links the hold definition to a corresponding record in the SO_ACTIONS table. This relationship dictates what system action (e.g., "Reserve," "Pick Release," "Ship Confirm") the hold will block when applied to an order line. Other typical columns not explicitly listed in the brief metadata but commonly present include descriptions, release reason codes, severity indicators, and flags controlling whether a hold is user-releasable.

Common Use Cases and Queries

This table is primarily referenced for setup, reporting, and troubleshooting. Administrators query it to audit configured holds, while support personnel use it to understand hold definitions during order processing issues. A common reporting need is to list all holds that block a specific order action. A sample query pattern is:

  • SELECT h.name AS hold_name, h.description, a.name AS blocked_action FROM oe.so_holds h, oe.so_actions a WHERE h.action_id = a.action_id ORDER BY a.name;

Another frequent use case involves identifying the source of automatically applied holds by joining to SO_HOLD_SOURCES_ALL. Developers and analysts also query this table to understand the relationships between holds and their authorization rules or sources when building custom order management reports or interfaces.

Related Objects

As per the provided foreign key metadata, SO_HOLDS has integral relationships with several key OE tables. It is the parent table for SO_HOLD_AUTHORIZATIONS, which defines who can release a specific hold, and SO_HOLD_SOURCES_ALL, which defines the automatic application rules for a hold. The foreign key to SO_ACTIONS is fundamental, defining which workflow step the hold blocks. The primary transactional link is through the SO_HOLD_RELEASES table (not listed in the brief metadata but a core object), which records the application and release of holds against specific order lines. The table is also central to the Order Management APIs used for applying and releasing holds programmatically.