From 18cfca488d47646fb343dbba529e56565ce9e8e8 Mon Sep 17 00:00:00 2001 From: Devin Slauenwhite Date: Mon, 31 Jul 2023 08:47:14 -0400 Subject: [PATCH] fix: group item reorder by (warehouse, material_request_type) (#35818) * fix: group item reorder by (warehouse, material_request_type) * fix: update reorder error message * chore: linter * fix: correct error message Co-authored-by: s-aga-r * chore: linter --------- Co-authored-by: s-aga-r (cherry picked from commit e8eeeb16e26b9885f5ff88d136e8174c3fbd8203) --- erpnext/stock/doctype/item/item.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/erpnext/stock/doctype/item/item.py b/erpnext/stock/doctype/item/item.py index ba1c04fe27ed..693d33ffb713 100644 --- a/erpnext/stock/doctype/item/item.py +++ b/erpnext/stock/doctype/item/item.py @@ -395,16 +395,16 @@ def validate_barcode(self): def validate_warehouse_for_reorder(self): """Validate Reorder level table for duplicate and conditional mandatory""" - warehouse = [] + warehouse_material_request_type: list[tuple[str, str]] = [] for d in self.get("reorder_levels"): if not d.warehouse_group: d.warehouse_group = d.warehouse - if d.get("warehouse") and d.get("warehouse") not in warehouse: - warehouse += [d.get("warehouse")] + if (d.get("warehouse"), d.get("material_request_type")) not in warehouse_material_request_type: + warehouse_material_request_type += [(d.get("warehouse"), d.get("material_request_type"))] else: frappe.throw( - _("Row {0}: An Reorder entry already exists for this warehouse {1}").format( - d.idx, d.warehouse + _("Row #{0}: A reorder entry already exists for warehouse {1} with reorder type {2}.").format( + d.idx, d.warehouse, d.material_request_type ), DuplicateReorderRows, )