openBoM fundamentals (1) Part Numbers and Properties

The Bill-of-Materials (or BOM) is the lifeblood of every engineering and manufacturing process. Regardless of how simple or complex the product is, a BOM is required to define what parts go to manufacturing, what parts are bought or assembled, etc. Because of the high diversity of engineering and manufacturing projects, a BOM can and will vary, and be different from other BOMs. As a result, we designed OpenBOM to be very flexible. Moreover, you can define many things as you would using a familiar spreadsheet paradigm.

In this article, I want to review a few fundamental elements of OpenBOM which will help you plan and maximize the efficacy of your BOM practices with OpenBOM.

At the moment of this writing, a Part Number is the most fundamental “unit” in openBoM. Everything in OpenBOM is identified by Part Numbers. You can assign a Part Number to a BOM itself, to every part in a Part Catalog as well as to an item in a BOM.

Part Number assigned to a BOM and to Items in the BOM:

BOMs come in various flavors: Single level, Part List, and Multi-level. From the standpoint of a model, a BOM is always single level in OpenBOM and identified by a Part Number. However, if you reference the BOM’s Part Number in a BOM item, the BOM automatically turns multi-level. You can navigate a multi-level BOM using the “Composed of” command and a Multi-level BOM view.

A Parts List with Part Numbers imported from a CAD system:

Part Numbers assigned to parts in an inventory (part catalog):

Part Numbers making up a multi-level BOM:

BOM properties are additional attributes that can be added to a BOM. Use the property icon command to add a property to the BOM.  But please note, all BOM attributes are defined for a specific BOM (i.e., its scope) and from a model’s standpoint, establish a relationship between an item, a Part Number, and a BOM itself. To define item properties you should use an Inventory (or part catalog). You don’t need strictly use it if you are working with a simple Part lists or more complex multilevel structures; OpenBOM is flexible enough to handle these situations. For really complex use cases, you may prefer to define items in an inventory (part catalog). 

A part catalog allows you to define a list of all Parts that can be used in BOMs. Each Part is defined by a Part Number and attributes which can be added to each item. Inventories allow you to define Parts (standard or engineered) to be used in BOMs. Item properties can be displayed in BOMs.