Bill of Materials

From Commander4j
Revision as of 12:10, 1 April 2026 by Dgarratt (talk | contribs) (Updated by push_wiki.py)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

The Bill of Materials (BOM) module allows you to define and manage product recipes — the ingredients or components required to manufacture a finished product. BOMs can be entered manually or imported from an external system via the XML interface.

Structure

A BOM in Commander4j is hierarchical. Each BOM has a unique BOM ID and a version number, allowing multiple versions of the same recipe to coexist. The BOM is displayed as a tree, with the finished product at the root and its components, sub-components, and associated data as branches beneath it.

Each node in the tree has the following properties:

Field Description
Data ID The identifier of this element (e.g. a material or ingredient code)
Data Type The classification of this element (e.g. ingredient, component, instruction)
Data String A text value associated with this element
Data Decimal A numeric value such as a quantity or percentage
Data Date A date value if applicable
Stage The production stage at which this element is used, allowing filtering of the BOM by stage
Sequence The order of this element within its parent level

Each node has a unique UUID that maintains its position in the tree hierarchy.

Viewing a BOM

Enter the BOM ID (and optionally a version) to load the structure into the tree view. The tree can be expanded and collapsed at any level using the toolbar buttons. Individual nodes can be selected to view their full properties. The Stage filter allows the tree to be restricted to elements relevant to a particular production stage.

Versions

Multiple versions of a BOM can exist for the same BOM ID. This allows recipe changes to be tracked over time whilst retaining historical versions for reference or reactivation.

Importing BOMs

BOMs can be imported from XML files via the XML interface. The import process validates the structure and auto-generates UUIDs for all nodes. This is the recommended method when the BOM originates in an ERP or recipe management system.

Manual entry is also supported for sites that do not have an external recipe system.

Relationship to Material Issue

The c4j_web_Issue application uses BOM data to validate that operators are issuing the correct raw materials to a production line — checking the scanned material SSCC against the BOM for the active process order.

Database Table

BOM records are stored in APP_BOM, with a composite primary key of BOM ID, version, and node UUID.

See also: Materials, Process Orders, Interface Message Formats