Process Manufacturing Hack

Hey all,

Q. Can anyone think of any potential issues with sending BOM scrap items to store warehouse (rather than scrap)? I’m investigating if I can create a workaround for process manufacturing where I use the scrap-item function to create multiple items from a single BOM.

Further Context

We manufacture plywood parts which we then assemble into a finished product. In our workflow 1 x Plywood Sheet (raw material) is consumed (CNC milled) to create a mix of plywood parts (sub-assemblies), which are then assembled into plywood furniture (finished product). We have many different sheet/part configurations, but we always know the number of parts we create per configuration.

This is a type of process manufacturing – since ERPNext doesn’t allow for a more than one item to be created from a BOM we can’t just make a BOM that has the input raw material and the output parts.

I’ve investigated some work-arounds to make this work:

  1. creating multiple BOMs per plywood sheet and part, and then for each using scrap function to decrease stock for the other parts. The collection of BOMs when executed together would result in the correct stock adjustments.
  2. manually adjusting stock through stock-entries

Both aren’t great options.

Instead is there any reason why we couldn’t:

  1. Create an item which represents the plywood sheet configuration i.e. CUTSHEET-TYPEA-001
  2. Create a BOM where the finished good is the cut sheet CUTSHEET-TYPEA-001
  3. Set the raw material to the plywood item i.e. 12x1200x2400mm Pine Plywood
  4. Set the scrap items to the parts and quantities on the cut sheet
  5. When creating the work order, set the Target Warehouse to a new warehouse called Cutsheets and the scrap warehouse to Stores

Sending the cut sheet item to the new “cutsheet” warehouse (effectively a scrap or placeholder warehouse) is a workaround for ignoring its stock quantity – in reality the cut sheet item doesn’t physically exist, is just a placeholder for describing the different plywood parts we need per BOM. Sending the “scrap items” to the stores warehouse effectively sends them to the target warehouse.

I’ve tested this out and from everything I can see it works? In our design software I would setup API calls that would create the cut sheet items, BOMs and probably the Work Orders as well.

Seems like a great workaround to me but feels like I’m missing something – are scrap items somehow treated differently, somewhere?

BOM with Item as Cut Sheet, Raw Material as Plywood Sheet

BOM Scrap set as Expected Items after Fabrication

Work Order with Target Warehouse to Placeholder Warehouse, Scrap Warehouse as actual Target Warehouse (Stores)

A sense check from the community would be appreciated!

Hi,

This will work. You have to do some customization to handle the scap valuation.

By default, scrap is valued at zero rate or at valuration rate defined in the Item.

In our case we have done customization to distribute the total input cost based on scrap quanity and calculate the scrap rate dynamically at the time of entry.

Thanks,

Divyesh M.

1 Like

Thanks for the reply @mangroliya!

I did find the the valuation rates for both the finished item and the scrap parts weren’t behaving how I expected – for the finished item (the cut sheet), I tried to set this to zero, however it kept wanting to update itself (based off the stock valuation?) I would have thought it would have a zero valuation since the item valuation is zero.

For scrap items, are you able to explain what customization is need? My understanding is I would need to calculate the item valuation per BOM. Factoring process waste would give me a overall costing, but scrap is added to the total costing instead of deducting (as would happen if I wasn’t using scrap?) Is this what you are referring too?

Hi,

The system will do the following with Zero Scrap Valuation:

OUTPUT
ITEM QTY RATE AMOUNT
CUT SHEET-TYPEA-001 1 100 100
SCRAP-001 12 0 0
SCRAP-002 5 0 0
INPUT
ITEM QTY RATE AMOUNT
PINE-PLY-12-1200-2400-CD-STRU 1 100 100

If you are using valuation rate in Item Master, the system will do the calculation as follows:

We have done the Customization to Calculate Scrap Rate Dynamically as follows:

Thanks,

Divyesh Mangroliya

2 Likes

Thanks again @mangroliya, the spreadsheet example makes a lot of sense!

Do you know if its possible to do something like this, where CUT SHEET-TYPEA-001 doesn’t contribute to the valuation amount at all?

image

Ideally I would calculate the valuation of each part based off the their area, and then set process loss to the remainder – do you know if that is possible?

@mangroliya – just following up after some further experimenting.

I’m not sure how to go about adding the custom formula’s in ERPNext but it seems the valuation formula would look something like this:

image

Scrap rate would be calculated as:

Item Rate = (Item Area / Sheet Area) × (Material Rate + Operational Rate)

Which would leave process loss as:

Process Loss = (Material + Operational Cost) - Sum of All Part Rates

Which means to balance Input/Output values, the process loss has to be assigned to CUT SHEET-TYPEA-001?

This is basically the same as your dynamically calculated scrap rate, just with the addition of using areas to calculate the part rates rather than evenly allocating the scrap rate across the output items?

Thanks in advance, hopefully the above makes sense :grin:

Hi,

This can be done.

Thanks,

Divyesh M.

1 Like