[Feature Request] Allow different Levels in BOM Explosion

Possibility to use different, defined levels in BOM explosion.

Simplified example BOM:

In this example the BOM of the product contains the sub-assemblies Item 1 and Item 2.
To manufacture the product Item 1 (1st level) shall be consumed. Item 2 shall be transparent so that Item 2.1, Item 2.2 and Item 2.3 (2nd level) are consumed directly.

Currently the system only allows to use the first level or the last level (called multi-level). But the last level is not always what you need e.g. if you have multiple stages of subcontracting. The production planning should allow a higher granuality in defining the level resolution of boms.

Right now the production planning only offers two ways of resolution:

  1. Use 1st level: Item 1 and Item 2
  2. Use multi-level: Item 1.1.1, Item 1.1.2, Item 1.2, Item 1.3, Item 2.1, Item 2.2, Item 2.3

Possible Solution:
Define a check-box in the BOM that indicates whether the BOM can be exploded or not. If the BOM does not allow further explosion the item should be treated as a leaf. The resolution should stop in that case.

In the scenario mentioned above, Item 1 would not allow further explosion.
The explosion stops at Item 1 while Item 2 is still transparent.

Post this Feature request in Github

Thanks for your reply. It is my first feature request so I’m not absolutely sure how to proceed.
Do you think I should directly request it on github or should it be discussed here by the community at first?

Do you have a similar requirement?

The feature request is now on github:

1 Like

If someone is in the same situation, there is no need for a new feature in ERPNext v12.6.0 (version-12)

In your example, you need to “stop” the cascading on Item1
So you go the the Item1 master and on the category “Inventory” you change “Default Material Request Type” to “Manufacture”


My test was made in a particular way. I created first the Parent BOM and then the ChildBOM

If you create the parent Parent Item BOM , before creating the Item Childs BOMs , then if you add Child BOMs, the Parent doesn’t get updated, so will keep thinking his child doesn’t have BOMs. That is what I suppose happened in my “successful” first case.

So it has nothing to do with the “Default Material Request type”. I think we can go with the workaround proposed by djpalshikar in the github request

1 Like

SAP approach is the Phantom Item check box in BOM item table as below

I found another important use case that requires more control over the cascading of the BOM explosion.

If you are planning manufacturing or purchase you want to know which quantity of a certain BOM you are able to build and how high is your demand for certain sub-assemblies or items.

ERPNext offers some reports to support this kind of decisions e.g. the “BOM Stock” report.

Unfortunately you can use only the highest level of cascading or the lowest level. I believe that this is not sufficient for manufacturing companies.

The more I work with the system the clearer it gets that more control over the BOM explosion is urgently required.

@szufisher Do you know if there are any activities to enable that feature?

Hey guys.

Please check my proposal for a solution. Here you can find a detailed description:

1 Like

thank you it works for me

1 Like