Search Results bom_explosions_all




Overview

BOM_EXPLOSIONS_ALL is a transient working table in the Oracle Bills of Material (BOM) module, owned by the BOM schema. It stores the flattened, multi-level result of a bill of material explosion — that is, the complete indented component structure of one or more assemblies expanded across all levels of the product structure. Unlike the permanent BOM_BILL_OF_MATERIALS and BOM_COMPONENTS_B tables that hold a single-level definition, this table materializes the full hierarchical result so that downstream processes (cost rollup, ATP, order promising, configuration validation, and pick/ship instructions) can query components without repeatedly traversing the structure.

The table is populated by concurrent programs and by the Bill of Materials explosion APIs during a request, and rows are keyed to a runtime session (via REQUEST_ID, GROUP_ID, and SESSION_ID). Because content is regenerated per explosion, the table behaves as a staging/snapshot structure rather than a master entity. In Data Vault terms, the mined FK profile classifies this object as standalone; a modeling heuristic would suggest treating it as a satellite-style snapshot keyed to a business process (the explosion request), rather than as a hub or link, since the only documented foreign key is a reference to BOM_STRUCTURE_TYPES_B via STRUCTURE_TYPE_ID.

Key Information Stored

The physical schema documented for 12.2.2 contains 220 columns. The most significant are those that identify the request context, the parent/child relationship, and the quantities and dates governing each exploded line:

No unique index is documented; the row's logical identity is the combination of session/group identifiers with BILL_SEQUENCE_ID and COMPONENT_SEQUENCE_ID, making these the candidate business keys rather than a single surrogate column. Audit and descriptive columns (CREATION_DATE, LAST_UPDATE_DATE, CONTEXT, and the ATTRIBUTE1–ATTRIBUTE15 set) follow standard EBS conventions.

Common Use Cases and Queries

Typical usage includes retrieving the full indented structure for a configured item, verifying where-used paths, or feeding cost rollup and ATP logic. A representative query selects the current session's explosion for a given organization and top assembly:

  • SELECT component_item_id, plan_level, extended_quantity, component_quantity, effectivity_date FROM bom_explosions_all WHERE organization_id = :org AND top_item_id = :item AND request_id = :req ORDER BY bill_sequence_id, plan_level;
  • Join to BOM_STRUCTURE_TYPES_B on structure_type_id to filter by structure type.
  • Aggregate extended_quantity by component_item_id for a single-level or total-requirement report, paying attention to include_in_rollup_flag and include_in_cost_rollup.
  • Filter on optional, mutually_exclusive_options, and loop_flag when analyzing configurable or cyclic structures.

Reports commonly restrict results by request_id or group_id to isolate one explosion run, and by effectivity_date/disable_date to obtain the structure as of a chosen date. Because rows are transient, queries against stale session identifiers may return no data, so the identifying columns must be captured immediately after the initiating program completes.

Related Objects

The table participates in the BOM structure ecosystem. The most significant related objects are: