Nested and Optional Lines
Sets inside sets, and how optional lines are handled.
Last updated
Sets inside sets, and how optional lines are handled.
A set line can itself be a set. DATANORM expresses that through the component set number: when it is filled, the line points not at a single article but at another set.
The app resolves the reference to the item of the subordinate set and adds it as a component to the BOM. The result is a multi-level structure:
Complete shower set
├── Shower tray
├── Waste fitting
└── Mounting set (subordinate set)
├── Support frame
└── Fixing materialBusiness Central resolves multi-level assembly BOMs on its own during assembly. The supplier's structure is therefore preserved rather than flattened into a single list.
For a nested set to be resolved, the item of the subordinate set must exist. When it comes in the same delivery, synchronising article staging completely before building the part lists is enough.
If the item is missing, the line is skipped and logged. Add it and run Build Part Lists again.
If a set references itself directly or indirectly, resolving it would produce an infinitely deep BOM. The app detects this and skips the affected set with a message instead of running into an endless resolution.
The calling flag of a set line states whether it is a fixed part of the set or selected by the user.
1, 3
inserted automatically
always taken as a component
2, 4
optional line
only with Include Optional Set Lines enabled
The set should reflect the standard scope of supply.
Include Optional Set Lines off. The BOM then contains only what is always included.
You want to see every possible line and remove some on the order.
Include Optional Set Lines on, and adjust the BOM on the order.
You need real variant configuration.
Not part of the app. Model the variants as items and BOMs of your own, see Limitations.
The setting takes effect when the BOM is built, not when the file is read. If you change it, run Build Part Lists again – the file does not need to be re-imported.
Optional lines often have a quantity of 0 because the user decides the amount. A BOM line however needs a positive quantity, so the app uses 1. Adjust the quantity in the BOM or on the assembly order.
Last updated
