November 10, 2021
One of the questions that often comes from our customers is how to include the assembly pricing when creating Cost Rollup for a bill of materials in OpenBOM. The most typical use case for assembly cost can include the following scenarios:
- The labor cost of assemblies (including sub-assemblies or units)
- Additional pricing added to the final assembly (eg. profit, taxes, etc.)
- Additional part manufacturing cost (eg. painting, etc.)
OpenBOM’s data model flexibility and formula calculations give you multiple options on how to organize such calculations. When you implement OpenBOM, the final decision usually can be taken during the OpenBOM Onboarding Training, which is focused on analyzing the customer data and use cases. In this article, I will give you 3 typical data modeling options and formula definitions.
OpenBOM catalog mechanism provides a flexible way to create any type of item and use it in your Bill of Materials. For this option, consider creating a separate catalog with items for each type of assembly work. It can be a simple Item for Assembly types (eg: Labor Assembly, Labor Painting, Labor CNC, Labor 3D Printing), which will have a unit cost (eg. for one hour) and when included in the Bill of Materials will be multiplied with a specific number of hours needed for this assembly.
Here is an example of such a model (which you can find in the OpenBOM demo data set).
Bill of Materials data:
As you can see above, the Labor Cost is included in the assembly as a separate item. The formula for cost calculation is the same and Labor can be included in any assembly in a seamless way.
Catalog Properties (Option 1)
This option creates a model for assembly cost included in the catalog. You define a property, which will serve as a Unit Cost for each item that can include multiple cost elements (eg. Material Cost and Labor Cost). An additional formula for Unit Cost will be defined in the catalog and later included in the formula for Assembly cost and rollup in a BOM.
Here is an example of such a model in the catalog.
And this is a formula that needs to be added in the catalog.
Once it is done, all BOM formulas and calculations will be the same. For items with no assembly cost, you can put 0 (zero) in catalogs to prevent errors in the formula during the calculations.
Catalog Properties (Option 2)
This option allows you to add cost to already calculated BOM cost and is typically useful for a situation where additional pricing must be done to a final assembly (eg. pricing of profit, taxes, transportation, etc.). In this case, we recommend having a separate catalog that will be used for all these assembly items. Technically, it is not required, but it will be much easier from the standpoint of understanding this data model. Also, the data properties for calculation results will not be added to all catalogs, so you will have fewer empty fields for all other items. This is important for simplicity and ease of data model understanding.
Here is a catalog model for such cost calculation. You can see that Assembly cost is combined from basic “Cost” with adding formulas to calculate “QC Fee” and “Ext Cost”. Each of these elements are calculated based on the “Cost” and then “Assembly Cost” is a sum of the results. In such a way you can add a sophisticated calculation to the total cost.
To ensure the “Cost” is calculated correctly you need to include an option in BOM Cost rollup. This is a formula that you need to define in the BOM (not in the catalog).
And these are formulas you define in the catalog to calculate “QC Fee” and “Ext Cost” and “Assembly Cost”:
As you can see, OpenBOM has a super flexible data model, which allows you to bring multiple scenarios in cost calculation. We recommend always starting from the “Labor Item” option as the most flexible and simple option that can be easily managed. It doesn’t require special catalog data modeling and adding properties in the catalog. Adding catalog properties is super powerful, but you need to organize a consistent Item Unit Cost calculation for all catalog items, which can take longer to implement. The last Catalog Property (option 2) is mostly needed when you need to add a cost to final top level assembly only.
Whatever option you choose, we recommend you experiment with a sample catalog and a few BOMs to ensure your model is robust and ready for all scenarios you plan to be using it on. OpenBOM Onboarding Premium Training is the best way to have our specialists help you to choose the right data modeling option for your company and the use case you might have.
REGISTER FOR FREE to check out how OpenBOM can help you.
If you have any questions, feel free to contact support @ openbom dot com.