Search Results so_entities_pk




Overview

The SO_ENTITIES table is a foundational master data object within the Oracle E-Business Suite (EBS) Order Entry (OE) module, specifically in versions 12.1.1 and 12.2.2. It serves as a central repository for defining entities, which are logical groupings or classifications used to control and apply business rules. As indicated by its description, "Entities for pricing, holds, and notes," its primary role is to enable the conditional application of complex pricing adjustments, order holds, and automatic note attachments based on configurable business criteria. The table is owned by the OE schema and is integral to the flexible rule-based architecture of the Order Management system.

Key Information Stored

While the provided metadata does not list individual columns, the primary and unique key structures reveal the core data elements. Each record is uniquely identified by the ENTITY_ID (Primary Key: SO_ENTITIES_PK), a system-generated internal identifier. The ENTITY_CODE (Primary Key: SO_ENTITIES_UK1) represents the unique, user-defined code or name for the entity, such as 'CUSTOMER_TYPE', 'ORDER_SOURCE', or 'SALES_CHANNEL'. Typical columns in this table, based on standard EBS design, would include descriptive fields (e.g., NAME, DESCRIPTION), enabling and disabling flags, and creation/update audit columns (CREATED_BY, CREATION_DATE, LAST_UPDATED_BY, LAST_UPDATE_DATE). The entity definition acts as a parameter that can be referenced in various rule setups.

Common Use Cases and Queries

The primary use case is the setup and maintenance of business rules. Administrators define entities in this table, which are then selected when creating pricing formulas, discount lines, hold definitions, or note addition rules. For instance, a pricing rule may be configured to apply a 10% discount only when the ENTITY_CODE 'CUSTOMER_TYPE' equals 'GOVERNMENT'. Common reporting queries involve listing all active entities or tracing entity usage. A fundamental query to retrieve all entities is: SELECT entity_id, entity_code, name FROM oe.so_entities WHERE enabled_flag = 'Y' ORDER BY entity_code;. Another critical query joins with related rule tables to identify where a specific entity is used: SELECT e.entity_code, r.formula_name FROM oe.so_entities e, oe.so_rule_formula_components r WHERE e.entity_id = r.entity_id_1;.

Related Objects

The SO_ENTITIES table has defined foreign key relationships with several key rule-definition tables, as documented in the metadata. These relationships demonstrate its central role:

  • SO_DISCOUNT_LINES_115: Links via ENTITY_ID to apply discounts to specific entities.
  • SO_ENTITY_USES: Links via ENTITY_ID, likely to define where an entity can be applied.
  • SO_NOTE_ADDITION_RULES: Links via ENTITY_ID to conditionally attach notes to orders based on entity values.
  • SO_RULE_FORMULA_COMPONENTS: Has multiple foreign key relationships (ENTITY_ID_1 through ENTITY_ID_5). This table is core to building complex pricing formulas, and these links allow up to five different entity conditions to be evaluated within a single formula.

These relationships underscore that SO_ENTITIES is a master table referenced by child transactional and configuration tables to enforce business logic.

  • Table: SO_ENTITIES 12.1.1

    owner:OE,  object_type:TABLE,  fnd_design_data:OE.SO_ENTITIES,  object_name:SO_ENTITIES,  status:VALID,  product: OE - Order Entrydescription: Entities for pricing, holds, and notes ,  implementation_dba_data: OE.SO_ENTITIES

  • Table: SO_ENTITIES 12.2.2

    owner:OE,  object_type:TABLE,  fnd_design_data:OE.SO_ENTITIES,  object_name:SO_ENTITIES,  status:VALID,  product: OE - Order Entrydescription: Entities for pricing, holds, and notes ,  implementation_dba_data: OE.SO_ENTITIES