@lalena ERPNext already provide the functional structure you need to manage that, just to present myself
https://frappe.io/blog/erpnext-customer-story/erpnext-customer-story-grupo-realize-de-móveis
When I started with ERPNext, in 2011 more or less, I was working for an woodworking company, we faced 2 big problems there
- 1 Cutting Stock Optmization
- 2 Each Sale depends on AutoCad, what imply you need an BIM (Building Information Modeling), to compute the costs of each sale, because, you can compute, from slices of wood, to metal componets, screws, glue etc, etc, etc.
At that time, the I had the idea, to buid one BOM per sales, what become an nightmare, 3 months after I started it on production, we just was adding around 30K BOM’s every month
Later I discovered that I can generalize that using other parts of ERPNext
The first trial to reduce the amount of BOM’s generated was
1 - Create an item for each product we assembly (2K BOM’s, also called base components), without worry about variations (colors, size, material, etc)
2 - Add one table of configuration with one Unique configuration ID, and an Key, value table, for each configuration
3 - Generate the Quotes/Sales Orders, using the BOM’s from the assembly list, and let the user associate the configuration him whats (in that time, that configuration come from AutoCad)
It was working, but still having an big problem, when the users wanted to seek one specifically item, it was impossible, but the key for achive that was already in the system, I just didn’t have figurated yet!
Also I didn’t was able to finish that project, due the bank ruptancy of company in 2014
From 2015-2019 Me and @adityaduggal had various discussions about the same subject, and finally on the past year, I figurated what was the missing link to solve the problem of the configuration searching for one specifically item.
The configuration need to be an Serial No, and this SN, need to be created before the item become available in Stock, for we be able to use that information as tracking and build reports to query the items, basedly on his configuration.
So, if we have one Serial No like
- 2020-01-9928832842828238382328
- Key: Color, Value: Blue
- Key: Measurment Unit, Value: MM
- Key: Width, Value: 1200
- Key: Depth, Value: 700
- Key: Height, Value: 800
- Key: Door Type, Value: Simple
- Key: Door Opening Type, Value: Avenzos System
We can associate this Serial No with the Item, but the Key Point here is:
If an production order, is started from that Sales Order, ERPNext need to ensure that Serial No with be the same on the final manufactured item, and here is the unique, point where ERPNext is failing right now.
Of course there’s various other ways to achieve the same result, but only that will allow you to use ERPNext at his own maximun capacity, with the minimal changes, and going to the streight point when you want seek an configuration.
Also, one exercise that helped me to solve that problem was:
- I purchase one laptop from Dell Inc. and they SO say
- Laptop Model XXX
- Internal Configuration No: XXX00912129121,
-…
So, if dell was using ERPNext, how they do, to identify that the item, they have in production is my item? Not someone else item? The answer is, what Dell call Internal Configuration, is just the laptop Serial No, and this Serial No, si direcly associate with my configuration options.
Also, ERPNext can allow this table of configuration, into Serial Numbers, with an minimal change on the Variant System, just setting if the item variant, should be managed as “Configuration”
And you can use, the Variant Generation system, to populate these serial numbers, instead of generate new SKU’s in ERPNext.