2.2 BOM Versions, Activation, Approvals, and Circularity Checks
Key Takeaways
- D365 SCM decouples BOM headers from released products using a 1:N relationship mediated by BOM versions, enabling BOM reuse across multiple products and facilities.
- Multiple active BOM versions can coexist concurrently for the same product, provided their validity criteria (Site, Date ranges, and Quantity breaks) do not conflict.
- The BOM approval workflow enforces a mandatory two-stage hierarchy: the BOM header must be approved before its associated BOM version can be approved.
- Master Planning and production order generation will only select a BOM version if it is simultaneously marked as both Approved and Active.
- The Circularity check utility detects recursive cyclic dependencies across multi-level structures, preventing infinite loops during MRP explosion and cost calculations.
2.2 BOM Versions, Activation, Approvals, and Circularity Checks
In enterprise discrete manufacturing, engineering specifications change continuously, facilities utilize different machinery, and production methods evolve as batch quantities scale. Dynamics 365 Supply Chain Management (D365 SCM) manages this complexity by decoupling the component definition (the BOM Header) from its application to an item (the BOM Version).
Governing this relationship requires strict adherence to approval workflows, activation controls, and circularity validations.
1. Header vs. Version Relationship (1:N Architecture)
D365 SCM architecturally separates the component structure from the finished good:
- BOM Header (
BOMTable): A standalone master record containing component lines (BOM). It defines the BOM ID, description, site (optional), and unit of measure. A BOM header exists independently and can be linked to multiple released products. - BOM Version (
BOMVersion): The associative entity that connects a released product (InventTable) to a BOM header under specific operational rules.
Operational Advantages of 1:N Decoupling
- Reusability: A single standard packaging BOM header (e.g., standard shipping carton, protective foam, and manual) can be linked to dozens of finished goods via individual BOM versions.
- Facility Differentiation: A product can use BOM Header A at Site 1 (using local components) and BOM Header B at Site 2 (using alternate components).
- Batch Sizing: A product can use BOM Header 100 for small manual runs and BOM Header 200 for automated high-volume runs.
Core Attributes of a BOM Version
- Item number: The parent finished product.
- BOM number: The associated BOM header ID.
- Site: Target production facility (blank indicates all sites).
- From date / To date: Temporal effectivity window.
- From quantity: Minimum order quantity threshold (quantity break).
- Approved: Engineering sign-off status (
Yes/No). - Approved by: Worker ID of the authorized employee.
- Active: Operational status enabling selection by Master Planning and production orders.
2. Coexistence of Multiple Active BOM Versions
A released product can have multiple active BOM versions concurrently. To prevent ambiguity during order creation, active versions must be distinguished by clear validity boundaries:
| Version ID | Site | From Date | To Date | From Quantity | Operational Context |
|---|---|---|---|---|---|
| BM-VER-001 | Site 1 | 2026-01-01 | 2026-06-30 | 1.00 | H1 Site 1 Standard Assembly |
| BM-VER-002 | Site 1 | 2026-07-01 | Open-ended | 1.00 | H2 Site 1 Engineering Revision |
| BM-VER-003 | Site 1 | 2026-01-01 | Open-ended | 500.00 | High-Volume Automated Cell |
| BM-VER-004 | Site 2 | 2026-01-01 | Open-ended | 1.00 | Site 2 Regional Sourcing |
Active Version Selection Sequence During Order Entry
When a sales order, production order, or planned order is created, D365 SCM evaluates active versions in the following deterministic order:
- Item Match: Must match the ordered product.
- Site Match: Must match the order site (site-specific version takes priority over blank-site global version).
- Date Match: The order requirement date must fall between
From dateandTo date. - Quantity Threshold: The order quantity must be greater than or equal to
From quantity. If multiple versions qualify, the system selects the version with the highest matching From quantity. - Status Validation: Both Approved = Yes and Active = Yes are strictly required.
3. BOM Approval Workflow and Employee Credentials
Engineering governance enforces a mandatory two-stage approval hierarchy:
Stage 1: Approving the BOM Header
- Navigation:
Product information management > Bills of materials and formulas > Bills of materials > Action Pane > BOM > Approve - Validates line completeness and locks the structure. Once approved, the BOM header and lines become read-only. Users cannot add, delete, or modify component lines.
Stage 2: Approving the BOM Version
- Navigation:
Released products > Engineer tab > BOM > BOM versions > Approve - Mandatory Precedence: A BOM version cannot be approved if the underlying BOM header is unapproved. The system halts the action with a validation error.
Employee Authorization Setup
To execute approvals, the user must be an authorized employee:
- Navigation:
Human resources > Workers > Employees - The user login must link to a valid Worker record authorized for BOM approvals under
Production control parametersorInventory and warehouse management parameters. Unauthorized users cannot approve headers or versions.
4. Activating BOM Versions for Master Planning
Understanding the functional boundary between Approved and Active is critical:
- Approved = Yes, Active = No: Signed off by engineering, but withheld from operations. Master Planning (Planning Optimization) ignores the version, and production orders cannot automatically select it.
- Approved = Yes, Active = Yes: Fully released. Master Planning explodes this version to generate planned supply, and production order creation defaults to it.
[!WARNING] Unapproving an active BOM version automatically clears its Active flag. Re-approving the version does not automatically reactivate it; planners must explicitly activate it again.
If a user activates a version that duplicates the Site, Date range, and Quantity break of an already active version, D365 SCM alerts the user and prompts to deactivate the conflicting version.
5. Circularity Check Diagnostics
A circular reference occurs when a parent item is included as a component of itself in a multi-level BOM (e.g., Item A requires Subassembly B, which requires Item A).
Operational Risks of Circularity
- Master Planning (Planning Optimization) enters infinite recursion loops during net requirements calculation, causing batch jobs to fail.
- BOM Cost Calculations fail with stack overflow exceptions.
- Production Estimation hangs indefinitely.
Running Circularity Checks
- Navigation:
Product information management > Bills of materials and formulas > Circularity check(or BOM Header Action Pane >Check > Circularity). - Circularity Level: Defines the maximum recursion depth (default is
50levels). - If circularity is detected, the Infolog identifies the exact item, BOM ID, and recursive node level, allowing engineers to sever the loop before activation.
6. Version Copying and Manual Overrides
- Copying Versions: Via
Released products > Engineer tab > BOM > BOM versions > Copy, users can duplicate BOM lines, apply scaling factors, and copy routing operations. - Manual Overrides: While D365 SCM defaults to the best-matching active version, authorized planners can manually select an alternate approved BOM version on the production order header prior to estimation.
Exam Tips and Common Traps
- Approval Hierarchy Trap: You cannot approve a BOM version without first approving the BOM header.
- Active Requires Approved: A version can be approved without being active, but it cannot be active without being approved. Master Planning requires both flags to be
Yes. - Quantity Break Hierarchy: When multiple active versions share the same site and date, D365 SCM selects the version with the highest From quantity that is less than or equal to the order quantity.
A quality engineer attempts to approve a new BOM version for an industrial motor. When clicking the Approve button on the BOM version record, the system displays an error message preventing approval. What is the most likely cause of this error?
A functional consultant executes a Circularity check on a newly imported multi-level BOM hierarchy, and the infolog reports a cyclic reference. What does this diagnostic indicate, and what operational risk does it pose if left uncorrected?
A manufacturer of commercial power generators maintains two active BOM versions for the same generator at Site 1. Version 1 has a From quantity of 1.00, and Version 2 has a From quantity of 50.00. Both versions have open-ended validity dates and are both marked as Approved and Active. A planner creates a manual production order at Site 1 for a quantity of 75 units. Which BOM version will Dynamics 365 Supply Chain Management select by default?