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 differ from other BOMs. As a result, we designed OpenBOM to be very flexible. Moreover, you can define many things as if you were using a familiar spreadsheet paradigm.
In this article, I want to describe some basics of OpenBOM — Part Numbers.
OpenBOM is using Part Number — a unique identifier of BOM and Parts. It means every Part you add to BOM or Part Catalog is identified with Part Number (note: for BOMs created from CAD tools, we use File Name as an alias of Part Number).
However, the way OpenBOM is using Part Number in catalogs and BOMs is slightly different.
Part Number in Catalog
A Catalog is a place in OpenBOM where you define Part Number and it represents an abstract part (part reference). For example, if you set a screw with Part Number in Catalog, it can be used everywhere.
A Catalog is also the place where you can define a pattern for Part Number. Check more on the picture below.
Part Number (Part) from Catalog can be used in BOMs. In such case, you will create instances of Part. For example, you can have 20 screws in your product and all of them will have the same Part Number.
Part Number in BOM
Part Number can be referenced in BOM. In such case, you will assign Catalog to BOM and insert Part with a specific Part Number.
However, OpenBOM is flexible enough and allows you to use Part Numbers in BOM even if you haven’t defined them in Catalogs before. In such case, Part Number will be automatically instantiated in BOM (note: in this case, reference will be equal to the instance and all Part Data will have to be manually duplicated between all BOMs you put this number in). OpenBOM won’t do the same reference-instance data sharing as it is done for Catalog BOMs.
OpenBOM has a flexible Reference-Instance Model (I will talk about it later) allowing you to set Part Numbers in Catalogs and use them in BOMs. At the same time, OpenBOM allows you to define Part in BOM without earlier defining it in a Catalog.
I will continue discussing this topic in my future blogs.