Specification & BOM
Define materials and nested configurations for your bill of materials.
The specification defines what materials and sub-configurations make up your product. Each specification item can be either a material or a nested configuration.
Material Items
Material specification items reference materials from your materials catalog. You define the quantity formula, unit, and optional price formula. The quantity is computed using the same formula engine as calculations.
Aluminum Profile 40x40 Quantity: $width * 2 + $height * 2 (formula) Unit: mm Material: Aluminum Profile 40x40 (from catalog)
Configuration Items (Nested Configs)
Configuration specification items embed another configuration as a sub-component. This lets you build complex products from reusable modules — e.g., a cabinet containing shelves, doors, and drawers as separate configurations.
Parameter Mapping
When a child configuration has parameters marked as "input", you can map parent variables to them. This lets the parent control the child's dimensions, material, or other properties.
- Auto-map — click "Auto-map" to automatically match parameters by name (exact match first, then suffix match — e.g., parent $cabinetColor maps to child $color).
- Manual mapping — select a parent parameter or calculation from the dropdown for each child input parameter.
- Formula mapping — write a custom formula to compute the child parameter value.
Placement (3D Positioning)
When a nested item has quantity > 1, the placement editor lets you control where each instance appears in 3D space. Position and rotation formulas support two special variables:
- $index — the 0-based index of the current instance (0, 1, 2, ...).
- $count — the total number of instances for this item.
Example: position X = "$index * 500" spaces instances 500mm apart. You can also reference parent parameters in placement formulas.
Inclusion Condition
Each nested item can have an optional inclusion condition — a formula that determines whether the item is included. If the formula evaluates to 0 (false), the item and all its nested children are excluded from the BOM.
Cycle Detection
The system prevents circular nesting (A contains B, B contains A). If you try to add a configuration that would create a cycle, the editor shows a warning and blocks the selection.
Nested configurations support up to 10 levels of depth and 1,000 total instances. Keep hierarchies reasonable for best performance.
Quantity Formulas
Each specification item has a quantity formula that determines how many units are needed. This can be a simple number, a parameter reference, or a complex formula.
Quantity: 1 → fixed quantity Quantity: $count → parameter reference Quantity: ceil($width / 500) + 1 → computed quantity
BOM Preview
The BOM tab shows a real-time preview of the assembled bill of materials. It computes all quantities and prices using the current default parameter values, giving you immediate feedback as you build.
Use the AI assistant to generate specification items from a description of your product structure.