chemical-and-materials-engineering
Creating Detailed Bill of Materials (bom) from Nx Assemblies
Table of Contents
Introduction
A detailed Bill of Materials (BOM) is the backbone of any manufacturing operation. Derived directly from Siemens NX assembly models, it provides a complete, structured list of every part, subassembly, and raw material required to build a finished product. In today’s competitive landscape, an accurate BOM is essential for procurement, inventory control, cost estimation, and production planning. Without a precise BOM, manufacturers risk shortages, excess inventory, production delays, and costly rework.
NX (formerly Unigraphics) is a leading computer-aided design (CAD/CAM/CAE) software used in automotive, aerospace, and industrial machinery. Its native ability to generate a Bill of Materials directly from 3D assemblies eliminates manual data entry errors and ensures one source of truth for product structure. This expanded guide covers everything from basic BOM creation to advanced customization and best practices, enabling you to produce production-ready BOMs with confidence.
Understanding the BOM in NX
In NX, a BOM is more than a simple part count. It is a dynamic report that reflects the hierarchical relationships inside an assembly. Each component (whether a standard part, purchased item, or child assembly) is tracked with attributes such as part number, description, quantity, material, weight, and supplier information. Because the BOM is linked to the live assembly model, any change in the CAD structure automatically updates the BOM, ensuring consistency across engineering and manufacturing.
Types of BOMs in NX
NX supports several BOM formats to match different stages of product development:
- Top-Level BOM: Lists only the immediate children of the top assembly, useful for high-level overviews.
- Indented BOM: Shows the full assembly hierarchy, with subassemblies and sub‑components indented under their parent. This is the most common format for production.
- Exploded BOM: Flattens all levels into a single list, with quantity totaling from all occurrences—ideal for procurement planning.
- Multi-level BOM: Provides multiple columns of indentation to clearly visualize each level of the product structure.
You can also generate a quantity‑based BOM that lists each component only once with its total quantity across the entire assembly. This variant is critical when ordering hardware in bulk.
Assembly Structure & Component Attributes
The quality of any BOM depends on the data embedded in the 3D model. In NX, each component can carry user‑defined attributes (UDAs) via the Attributes menu. Common attributes include:
- DB_PART_NO (Siemens’ standard part number attribute)
- Description
- Material
- Vendor / Supplier code
- Cost
- Weight
When these attributes are properly filled out at the component level, the generated BOM automatically pulls them into the report, eliminating the need for manual data entry.
Step-by-Step Guide: Creating a Detailed BOM from NX Assemblies
Below is a comprehensive walkthrough. All steps assume you are using NX version 12 or later; menus may vary slightly in older releases.
Step 1: Open Your Assembly Model
Launch NX and load the assembly you want to document. Verify that all referenced components are resolved and that the assembly is fully loaded (no unresolved links). Use Assemblies → Assembly Load Options to ensure all parts are loaded from the correct locations. An assembly with unresolved references will produce an incomplete BOM.
Step 2: Access the Bill of Materials Tool
Navigate to the Report tab (or Tools → Report → Bill of Materials in NX 10 / 11). The BOM dialog box appears, offering multiple configuration tabs. On the Definition tab you can:
- Select the BOM type: Top‑Level, Indented, Exploded, or Multi‑Level.
- Set the Level Range: choose “All” or specify a number of sublevels to include.
- Check Include Properties to fetch attributes from the component.
Step 3: Configure BOM Settings & Filters
The real power of NX’s BOM engine lies in its filtering and sorting options.
Filtering
On the Filter tab you can exclude components based on criteria such as:
- Component name (e.g., exclude all fasteners with “SCREW” in the name)
- Attribute values (e.g., only show items where Vendor = “Approved”)
- Suppress status (exclude components that are suppressed in the assembly)
Use filters to tailor the BOM for specific audiences: engineering may want everything, while purchasing might only need non‑stock items.
Sorting
On the Sort tab, you can sort by any attribute: part number, description, quantity, or custom field. For indented BOMs, the default sort follows the assembly tree, but you can override that to group all identical parts together.
Formatting & Units
Under Options, set units (metric/imperial), decimal places, and column headers. You can also choose whether to show the total mass, type of unit, and whether to display row numbers.
Step 4: Generate the BOM Preview
Click Apply to generate a live preview. The BOM appears in the NX viewer window. Carefully review the output:
- Are all components listed? Check for missing fasteners or subassemblies.
- Are quantities correct? NX calculates quantities based on instance counts, but check for mirrored or patterned occurrences.
- Are attributes populated? If any column shows “???” or blanks, the component is missing that attribute.
If adjustments are needed, close the preview, edit the assembly (e.g., add missing attributes), and regenerate. The BOM is only as reliable as the model data.
Step 5: Export the BOM
Once satisfied, export the BOM to a format suitable for your downstream systems.
- Excel (.xlsx or .csv): Most common. Use File → Export → Excel. NX can create a fully formatted spreadsheet with merged cells and column widths.
- HTML: Useful for lightweight sharing.
- Text (tab‑delimited): For legacy systems or custom databases.
- PDF: Best for approval workflows.
Name the file following your company’s naming convention (e.g., BOM-A-1234_RevC.xlsx) and save to a version‑controlled repository.
Advanced Customization of the NX BOM
Out‑of‑the‑box BOMs often need refinement to meet specific enterprise standards. NX offers several advanced features:
Using Configuration Specifications (Config Spec)
A config spec file (`.cfg`) lets you pre‑define BOM settings (columns, filters, sorts, units). Instead of re‑configuring the BOM dialog each time, you can load a config spec with one click. Create one by exporting your current settings: Save As in the BOM dialog → choose .cfg format. Share these files across your team to standardise BOM output.
Custom Attributes Mapping
Many companies map NX attributes to their PLM or ERP system fields. For example, you may rename DB_PART_NO to Part Number in the BOM, or add a custom Material_Group attribute.
In the BOM dialog’s Column tab, you can add any attribute by typing its exact name. If the attribute name contains a space, enclose it in brackets. You can also create formulas to compute derived values, such as “Extended Weight = qty * unit weight.”
Creating a BOM Report Template
For repeatable needs, create a report template using the NX Report Generator (Tools → Report → Report Generator). This tool allows you to:
- Design the header/footer with company logo and metadata.
- Add static text annotations.
- Specify which BOM style to use.
- Include revision tables or title blocks.
Templates are saved with `.rpt` extension and can be reused across assemblies, enforcing corporate branding and required data fields.
Best Practices for a Detailed and Accurate BOM
Creating a BOM is not a one‑ time keystroke; it is a continuous discipline. Apply these best practices to maintain BOM integrity throughout the product lifecycle.
Standardize Naming Conventions
Every part number should follow a consistent scheme. For instance, use a prefix for material type (PLT‑ for plate, EXTR‑ for extrusion, HW‑ for hardware). Descriptive part names (e.g., “Bolt, Hex, M8x20, Stainless”) improve readability when attributes are incomplete. Adopt a company‑wide standard and add it to your CAD admin documentation.
Enforce Attribute Completeness at the Part Level
A BOM is only as good as the data in the model. Require that all component files have a minimum set of attributes filled before they can be used in an assembly. In NX, you can use the Check‐Mate or Validation tools to enforce attribute rules when parts are saved.
Common mandatory attributes:
- Part Number (alphanumeric, no spaces)
- Description (short text)
- Material Specification (e.g., 6061‑T6 Aluminum)
- Unit of Measure (EA, KG, M)
Use a Single Source of Truth for Reusable Components
Hardware, standard parts, and bought‑out items should come from a centralized library (e.g., Siemens Part Families or Teamcenter). Avoid copying these parts into each assembly folder—use references only. This ensures that a change to a screw’s description in the library automatically updates all BOMs that use that screw.
Verify Quantities with Physical Mockups or Digital Twins
NX auto‑calculates quantities based on instance count, but errors can occur with arrays, patterned components, or assemblies that use “by reference” constraints. Cross‑check quantities against a simple mockup or a digital twin simulation. Pay special attention to:
- Fasteners (often under‑counted if applied manually)
- Weldments (where raw material length vs cut length must be accounted)
- Subassemblies that are repeated in multiple top‑level assemblies
Implement Version Control and Revision Tracking
The BOM must always point to the correct revision of each part. In NX, you can link the BOM to the Revision attribute. On export, include a column showing the revision status. Use PLM integration (e.g., Teamcenter) to ensure that the BOM locks to a specific revision of the assembly. Without version control, a later design change may inadvertently propagate to a released BOM, causing manufacturing to build wrong parts.
Regularly Synchronize BOM with Design Changes
Do not assume that the BOM is up‑to‑date simply because the assembly is open. Always regenerate the BOM after any design change, especially:
- Adding/removing components
- Replacing components with alternative parts
- Updating part attributes (description, material, etc.)
Schedule periodic BOM audits—compare the NX‑generated BOM against a manual count of physical parts in a first‑article inspection.
Integrating the NX BOM with PLM and ERP Systems
A standalone Excel file loses its value the moment it leaves the engineering department. To truly manage the product lifecycle, the BOM must flow into PLM (Product Lifecycle Management) and ERP (Enterprise Resource Planning) systems.
Direct Export to PLM (Teamcenter)
Siemens offers deep integration between NX and Teamcenter. Instead of exporting a file, you can save the BOM as a “Structure” object inside Teamcenter. This structure becomes the official engineering BOM (EBOM). From there, it can be transformed into a manufacturing BOM (MBOM) and later into a service BOM (SBOM).
To use this feature: Assemblies → Teamcenter → Save Assembly Structure. The system reads the NX assembly tree and maps attributes to Teamcenter dataset fields. No manual export is needed.
Export Formats for ERP
If your ERP system cannot connect directly to NX, export to a structured format like:
- CSV with a fixed column order (PartNo, Qty, Description, Rev, etc.)
- XML (NX can generate XML if you create a custom style file)
- STEP AP242 (includes BOM data in the assembly structure)
Work with your IT team to define a mapping between NX attribute names and ERP field names. For example, map DB_PART_NO to ERP field ITEM_NUM and QTY to QUANTITY_PER. Create a cross‑reference document and automate the export using a macro or NX Journal (Python/SNAP).
Common Pitfalls and How to Avoid Them
Even experienced users can encounter BOM issues. Here are the most frequent problems and their solutions.
Pitfall #1: Missing Components
Symptom: The BOM does not list every part in the assembly.
Cause: Components may be set to “Reference” or “Lightweight” status, or they are not loaded at all. Suppressed components are also excluded.
Fix: In the BOM filter tab, uncheck “Exclude suppressed components.” Ensure all parts are fully loaded (use Assemblies → Load All). Check the component status: right‑click each component → Properties → Assembly → uncheck “Reference.”
Pitfall #2: Incorrect Quantities
Symptom: A bolt that appears five times in the assembly shows a quantity of 1.
Cause: The bolt may be treated as a single reference with multiple instances, or the BOM is set to “Top‑Level” and the bolt lives in a subassembly.
Fix: Switch the BOM type to “Exploded” or “Indented” with all levels. If using “Exploded,” verify that the “Sum quantities” option is enabled. Also check that the instance count is correct in the assembly navigator.
Pitfall #3: Attribute Values Not Displaying
Symptom: Columns show “???” or blanks.
Cause: The attribute does not exist on the component, or the attribute name is misspelled in the BOM column setup.
Fix: In NX, open the component part and use File → Properties → Attributes to verify the exact attribute names. Then update the BOM column definition to match exactly (case‑sensitive). For custom attributes, you may need to map them in the User Attributes tab of the BOM dialog.
Pitfall #4: Slow BOM Generation for Large Assemblies
Symptom: The BOM takes several minutes to generate for assemblies with thousands of parts.
Cause: NX is reading attributes from every component file, many of which may be stored on a network drive.
Fix: Use Load Options → Partial Loading to load only lightweight representations. Consider using the Report Generator with caching enabled. For extremely large assemblies (aircraft, ships), use the Assembly Sequencing tool to generate BOMs in batches.
Conclusion
A detailed Bill of Materials derived from NX assemblies is far more than a shopping list—it is the authoritative data source that connects engineering intent with manufacturing reality. By following a structured creation workflow, configuring advanced options, enforcing attribute discipline, and integrating with PLM/ERP, you can produce BOMs that are accurate, usable, and revisable throughout the product lifecycle.
Invest time upfront in standardizing part data and creating reusable config specs; the payoff comes in fewer purchase order errors, shorter lead times, and a smoother transition to production. As your assembly complexity grows, NX’s BOM tools will scale accordingly—provided you continue to treat the BOM as a living document that demands the same level of attention as the 3D model itself.
For further reading, explore Siemens’ official documentation on Siemens NX Bill of Materials, the Wikipedia article on Bill of Materials, and industry best practices from Engineering.com’s NX BOM guide. Implement these techniques, and your BOMs will serve as a reliable backbone for your entire manufacturing operation.