Need definite answers on Scrap Management

This is EXACTLY the point @JayRam !!!

The ERPNext deve team “started” to develop a manufacturing module by creating the BOM and Production Order processes. However, they never finished the job. A live production environment CANNOT operate properly without a way to handle unexpected variable output. You can’t build scrap into the BOM because you will never know how much (if any) scrap there might be.

You suggest working without a BOM as a way to manage this scrap process. If I have to work without a BOM then what good is your manufacturing module?!? It isn’t any good and that is my point!

Regardless of the reason, this thread never received an answer and it only further proved my other point about problem persisting for over 4 years now. Did that sink in? …over 4 YEARS NOW.

I no longer market ERPNext to my clients as a manufacturing management tool because it fails miserably.

In a perfect world where everything is always just right, the ERPNext manufacturing module might be passable. The reality of everyday manufacturing is a vastly different world.

  • Production orders almost never end exactly even because the raw materials going into them have their own variable quality. The more we come to depend on materials made in China, the worse this problem gets every year.

  • Humans make mistakes. Whether that be in counting incorrectly the number of washers they add to a bolt, or how much mild acid they are supposed to add to a weed killer formula, or how much of that special mild acid they spill on the manufacturing floor and loose down the drain. All of these are real everyday events that MUST be able to be resolved by the lower lever employees in the process. When you have a manufacturing floor with 50 employees making products and you are issuing 100 to 125 Production Orders per day to the workers on the line, then you had better have a fast and effecient way to handle scrap and way to return unused materials back to stock when a production order ends prematurely.

Currently this requires the intervention of someone with higher level accounting authority in the system to make MANUAL adjustments to the cost of unused materials and the movement of them back to inventory.

This is a ridiculous approach to manufacturing. Every REAL ERP system that handles Manufacturing has simple Production Order rectification pages that allow workers to successfully complete a production order without making the entire original amount and to list the items on the BOM that were either bad or otherwise unusable while allowing the rest of the materials to be moved back into inventory all with a single submit. This way the worker on the production line can continue working his shift without impacting the rest of the work he is supposed to complete for the day.

In each case the production orders that have ‘exceptions’ for the ay are reviewed by the production manager and appropriate comments are added to the closed production order to explain what went wrong.

No matter how you look at this, working outside the regular BOM and Manufacturing process is NOT going to properly allow you to get accurate reporting about how your efficient your manufacturing processes are running. THAT is the whole reason people use ERP systems in the first place.

So am I frustrated? Of course I am.

In my opinion the entire Manufacturing module should go back to being Beta and taken off the official list of working modules until the developers and the foundation decide they want to actually have a real Manufacturing module and invest in the time to finish it the way it should have been done years ago.

That pretty much says it all. If you cannot use a BOM then you really do NOT have a Manufacturing process in your ERP system.

Scrap management is NOT something you can build in at the beginning of a Production Order unless you are doing something like cutting out wodden toys from lumber. In that one case I can see your current method ‘maybe’ working. If you buy lumber by the linear meter and you only use 70cm of a linear board to make a product, then the remaining 30% is always going to be waste. However, those perfect scenarios are the exception and not the rule.

So… yeah I did give up. I do not believe anyone is paying attention to this except for the few of us that actually tried to use it in a live manufacturing environment.

The saddest part of this is I actually have one client that decided they LIKED the idea of having to scrap all the remaining raw materials left in a incomplete production order. They Liked it because they figured out they could track the real materials in a spread sheet outside the system and use it to hide money from their government.

So is that how you want ERPNext to be known, as the system that gives you a fraudulent path through manufacturing so you can hide money? You almost force them into it with the current configuration. It was the actions of this customer that caused me to stop implementing ERPNext in manufacturing locations. An ERP system should never make it easy to perpetuate fraud. They were supposed to be designed to do the opposite.

The current state of Manufacturing in ERPNext is horrible and incomplete.

I do not even want to try to engineer the fix for this myself. I have done similar things for other parts of the core system and had the PR’s rejected because someone didn’t like how something was done. So, I will not invest the many thousands of dollars it would take to finish the module for you. I have thrown away enough money in rejected PR’s already and have lost my drive for it.

So, again… yes, I give up.

BKM

Whoa buddy! That’s a shame. Please reconsider. Let’s fix it together. If the PR gets rejected, we will harass them till it gets accepted. While tweaking the code so that it passes their muster.

I don’t come here much. When I do, I find out that I spend WAYYYY more time here than I should and that’s detrimental to my business.

Reset your anger and bitterness and let’s start again.

Thanks

Jay

1 Like

You are right.

My thoughts about this module are done. I will not let it get me so upset any longer. That is why I walked away form it almost a year ago in the first place.

I am not capable of fighting for this alone and if nobody is going to be supportive of fixing the issue, then I cannot possibly waste anymore of my time on it. It is unfair to all of us that actually try to us EPRNext to enable small and medium businesses to focus on their business and less time having to try to manage the small details.

This does not change my attitude toward the module, it just means that I will not loose any more time to it or loose my voice talking about it.

Thanks for the sanity check.

Point taken. And I will not contribute to this thread any longer. Maybe you close it so it will eventually just fall out of readership. You can PM me if you think there is something more I should do or if I should do something different.

Thanks,

BKM

I just wanted to chime in here. I’m not looking for anything comprehensive, a simple Stock Entry type with a purpose of “Scrap”.

The entry would relieve inventory and charge the value to a scrap account.

Something simple like this would make my life SO much easier.

2 Likes

I made some tests to make scrap management work as described in documentation article Scrap Management. Unfortunately I couldn’t make it work.
I used mtata’s method to transfer the scrap to a Scrap Warehouse. I also enabled the Work Order link from customization. This can help to track the relation between the stock transfer of scrap with the work order.

Hi. Can you share more information on the exact steps you took to allow scrap management to work with work orders? I was unable to find a way to do this myself.

Hi mtata, all I did is click Customize menu on Stock Entry and add Material Transfer to the Depends On field as below.
eval:in_list(["Material Transfer for Manufacture", "Manufacture","Material Transfer" ,"Material Consumption for Manufacture"], doc.purpose)
This way, it is possible to select the Work Order in Stock Entry when doing a Material Transfer for scrap items from workin wrh to scrap wrh.

4 Likes

That’s quite cool! Great job spotting that.

Hi Team,

Does anyone know if this feature has been added as of yet?

I have a requirement which bkm has outlined to the ‘T’.

What happens once a job card has been issued but there was wastage during the manufacturing process and the total amount of product produced is less than the original order?

This is something that happens often in this particular environment(Polymer manufacturing) due to having to purge the extruders of a different colour polymer. This can waste up to 50Kg’s of the ordered amount, depending on how stubborn the previous colour is to purge.

1 Like

For your use case, ERPNext’s built in manufacturing module is a poor fit. It is designed to follow the Discrete model of manufacturing; you want Process manufacturing. There are several posts on the forum describing an application the community has built to accommodate this method.

1 Like

That is fantastic news, thank you Tyler.

I realise you mentioned that there is a specific app built for this process. What is the Applications name?

Here’s the thread with the details.

Sadly, Ranjith, one of the original authors of the app has passed away but the Earthians team and the community and has been maintaining the app since it was published.

1 Like

The Process Manufacturing app seems to be abandonware at this point.

  • It has not been updated in several years
  • It does not work on v12 or v13 systems
  • it still has some very serious accounting problems that were reported 2 years ago and never fixed.
  • in fact not a single issue ever raised on github was ever addressed.

To get this app working again would take a great effort to dig in and figure out how it was done in the first place then try to fix the errors and then get it to work with the latest releases. However, it does not look like it will be supported for future updates.

Unfortunately, that does not appear to be the truth of the matter. Just visit the github repo to see for yourself.

Just my observation.

~BKM

@bkm I think you’re overestimating the problems; I’ll take a look and see if I can’t get it working on V12. Not making any promises about V13. I don’t see an accounting issue, which one are you referring to?

2 Likes

There is an issue with cost accounting. When a process takes in the cost of 3 raw materials to produce 2 subsequent output finished products, the app is making entries that assign the entire production cost of manufacturing to both products. This essentially doubles the accounting cost of the actual production in the ledger when actually the cost should be split across the 2 products.

There is more to it but that is the kernel of the problem.

BKM

Could you try direct Stock Transfer?
For raw materials, place the Source Warehouse, but the Target Warehouse is blank.
For the Final products, place the Source Warehouse blank , and place the Target Warehouse.
You may manually update the costing of inidividual final products - the costs of which should be equal to raw materials.

For example, I have whole chickens which are processed into legs, thighs, breasts. Whole Chicken will have the Source Warehouse but blank Target Warehouse. Legs, Thighs, Bests will have blank Source Warehouse and have Target Warehouse. The quatities reflected will be based on the final cut quantities. The costs may also be distributed to the three cuts.

From here, you may get an idea of how to develop a siimple customization. for process manufacturing.

No. I removed the Process Manufacturing application from my servers last year due to lack of support.

Even the work around you suggest requires the intervention of a higher permission accountant user in order to keep the books straight. So, the work-around is not really workable in a live production environment where there are more than a hundred transfers in a shift. Businesses cannot sequester an expensive accountant type user to fix manufacturing accounting bugs all day. That should be fixed in the manufacturing app so it happens automatically.

Anyway… I promised I would not let this thread get me upset a long time ago, so I need to go back to ignoring it until there is a REAL manufacturing function in ERPNext.

Thanks,

BKM

1 Like

We would also like to see a proper process manufacturing with variable inputs/outputs being implemented in ERPnext and I assume it will benefit many businesses (have seen this issue in many posts dating back several years). IMHO it is a fairly basic feature for a proper ERP software (remember: ERP has its historic roots in material requirements planning and manufacturing).

2 Likes

Agreed, @tmatteson if you can get this up and running again you would be helping the community allot.

Not from ERP background but trying to think logically. Lets assume two components ( item 1 - 2 nos and item 2 - 3 nos) are required to make an assembly.

First case: Scrap can be the whole assembly in the production order.

Assembly Production Order Qty = 3. After assembly, we find the 1 number is defective and this cannot be dismantled. So, we give production call as yield-2 nos and scrap - 1 nos. Create a virtual Ward (PDO), every day a background program to run and collect all the scrap qty from production order and make GR in this ward. This GR qty to inspected by concern departments like engg, qc, production, stores etc. to decide how to salvage this defective assembly. Either they can scrap it, or cut and salvage any one component or both component. If scraped, the qty to be moved to scrap ward. If to be salvaged, then a dummy production order to be released to withdraw this PDO item code, rework it and stock it in individual components material code.

Second case: Scrap can be a single component in the whole assembly in the production order.

If a component is found defective, the component has to be returned to store and GR to be reversed and new item to be withdrawn. Stores to move this defective component to PDO ward and can follow the process in first case.