From ef77791bd6e350d5213e0defb4cf75b47130be14 Mon Sep 17 00:00:00 2001 From: Rohit Waghchaure Date: Wed, 4 Jun 2025 13:08:45 +0530 Subject: [PATCH] fix: do not remove item which has zero qty and zero valuation (cherry picked from commit 86e4a658a5f4ecf6954d482949bec4febe77d69d) # Conflicts: # erpnext/stock/doctype/stock_reconciliation/stock_reconciliation.py --- .../stock_reconciliation/stock_reconciliation.py | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/erpnext/stock/doctype/stock_reconciliation/stock_reconciliation.py b/erpnext/stock/doctype/stock_reconciliation/stock_reconciliation.py index a2fa6f3e410..86b24dc6449 100644 --- a/erpnext/stock/doctype/stock_reconciliation/stock_reconciliation.py +++ b/erpnext/stock/doctype/stock_reconciliation/stock_reconciliation.py @@ -163,8 +163,16 @@ class StockReconciliation(StockController): def set_current_serial_and_batch_bundle(self, voucher_detail_no=None, save=False) -> None: """Set Serial and Batch Bundle for each item""" for item in self.items: +<<<<<<< HEAD if not frappe.db.exists("Item", item.item_code): frappe.throw(_("Item {0} does not exist").format(item.item_code)) +======= + if voucher_detail_no and voucher_detail_no != item.name: + continue + + if not item.item_code: + continue +>>>>>>> 86e4a658a5 (fix: do not remove item which has zero qty and zero valuation) item_details = frappe.get_cached_value( "Item", item.item_code, ["has_serial_no", "has_batch_no"], as_dict=1 @@ -232,9 +240,6 @@ class StockReconciliation(StockController): if not save and item.use_serial_batch_fields: continue - if voucher_detail_no and voucher_detail_no != item.name: - continue - if not item.current_serial_and_batch_bundle: serial_and_batch_bundle = frappe.get_doc( {