From e4393ff16b4e36492132c573314d301a39f07556 Mon Sep 17 00:00:00 2001 From: Mihir Kandoi Date: Thu, 13 Aug 2026 11:46:25 +0530 Subject: [PATCH] fix(manufacturing): keep original_item on work order material returns Return rows built from transferred materials dropped original_item, so a returned alternative was keyed under the alternative item code and never reduced the substituted required item's net coverage in material_transferred_for_manufacturing. --- erpnext/stock/doctype/stock_entry/services/manufacturing.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/erpnext/stock/doctype/stock_entry/services/manufacturing.py b/erpnext/stock/doctype/stock_entry/services/manufacturing.py index 8a5555bf391..0b5889824e1 100644 --- a/erpnext/stock/doctype/stock_entry/services/manufacturing.py +++ b/erpnext/stock/doctype/stock_entry/services/manufacturing.py @@ -669,6 +669,8 @@ class ManufactureStockEntry(BaseManufactureStockEntry): item_args["qty"] = ceil_qty_if_uom_has_whole_number(qty, row.uom) item_args["transfer_qty"] = item_args["qty"] if is_return: + if row.get("original_item"): + item_args["original_item"] = row.original_item item_args["s_warehouse"], item_args["t_warehouse"] = row.s_warehouse, row.t_warehouse else: item_args["t_warehouse"], item_args["s_warehouse"] = None, row.warehouse