Sub-assembly Parts

A sub-assembly part is the stock that a build produces. Build a project and the matching sub-assembly part's stock goes up by the number you built. That part then behaves like any other part, which means you can use it as a component in another project. This is how PartsBox builds products that have several levels of assembly.

A sub-assembly part is always counted in whole pieces. It cannot have a unit of measure of its own, even when some of its components are measured in meters or grams.

An example

Say you make LED desk lamps, each built from three sub-assemblies:

  • a control PCB
  • an LED module PCB
  • an enclosure

Create a project for each one — "Control Module v1.1", "LED Module v1.3", "Enclosure v1" — and enable its sub-assembly part with a single click. Building each project adds stock to its sub-assembly part.

Now create a project for the finished lamp, "LAMP v1", and add the three sub-assembly parts as its components. PartsBox works out how many complete lamps you can build from the sub-assemblies in stock, and a build of the lamp draws those sub-assemblies down. Nesting has no fixed limit: a sub-assembly can itself be built from other sub-assemblies.

Tracing stock to its build

Every stock addition made by a build records which build produced it. The build's Build Results view lists the stock it added. The sub-assembly part's stock history can show a Build ID column linking to the producing build, including on plans without lot control.

With lot control, the resulting sub-assembly stock is tracked in distinct lots. From a lot you can open the producing build and see the components and lots it consumed. Splitting a lot keeps both resulting lots linked to the original build.

Without lot control, quantities from different builds can be combined in one storage location. The stock history identifies each addition. It cannot identify which build produced a particular unit remaining on the shelf.

You can also add or adjust sub-assembly stock by hand, for modules you already have on the shelf or assembled before you started recording builds.

Interchangeable versions

When two versions of a sub-assembly are interchangeable — "Control Module v1.1" and "v1.2", say — put both in a meta-part and use the meta-part in the lamp's BOM. PartsBox then treats either version as a valid substitute, so a build uses whichever you have.

Why not a hierarchical BOM

A single hierarchical BOM works for one product in isolation, but it falls apart when several products share sub-modules. Sub-assembly parts are separate, reusable parts instead: one sub-assembly can appear in many projects, several versions can coexist, and each behaves like a normal part — with its own stock, attachments, low-stock alerts, and attrition. You manage a shared module once and reuse it everywhere.

Sub-assembly parts start on the Essentials plan.

Control your inventory, ordering and production

Try the demo

Plans & pricing