diff --git a/erpnext/controllers/stock_controller.py b/erpnext/controllers/stock_controller.py index c8899de0411..068e8a51ee8 100644 --- a/erpnext/controllers/stock_controller.py +++ b/erpnext/controllers/stock_controller.py @@ -64,6 +64,7 @@ class StockController(AccountsController): self.validate_internal_transfer() self.validate_putaway_capacity() self.reset_conversion_factor() + self.check_zero_rate() def reset_conversion_factor(self): for row in self.get("items"): @@ -79,6 +80,18 @@ class StockController(AccountsController): alert=True, ) + def check_zero_rate(self): + for item in self.get("items"): + if (item.get("valuation_rate") == 0 or item.get("incoming_rate") == 0) and item.get( + "allow_zero_valuation_rate" + ) == 0: + frappe.toast( + _( + "Row #{0}: Item {1} has zero rate but 'Allow Zero Valuation Rate' is not enabled." + ).format(item.idx, frappe.bold(item.item_code)), + indicator="orange", + ) + def validate_items_exist(self): if not self.get("items"): return