From 185137af4481671db1b859f2bb64cf0a61ad0051 Mon Sep 17 00:00:00 2001 From: barredterra <14891507+barredterra@users.noreply.github.com> Date: Thu, 21 Mar 2024 11:52:10 +0100 Subject: [PATCH 1/2] feat(Item Price): validate UOM --- erpnext/stock/doctype/item_price/item_price.py | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/erpnext/stock/doctype/item_price/item_price.py b/erpnext/stock/doctype/item_price/item_price.py index e799b73338..55040e161a 100644 --- a/erpnext/stock/doctype/item_price/item_price.py +++ b/erpnext/stock/doctype/item_price/item_price.py @@ -57,6 +57,16 @@ class ItemPrice(Document): if not frappe.db.exists("Item", self.item_code): frappe.throw(_("Item {0} not found.").format(self.item_code)) + if self.uom and not frappe.db.exists( + "UOM Conversion Detail", {"parenttype": "Item", "parent": self.item_code, "uom": self.uom} + ): + frappe.throw(_("UOM {0} not found in Item {1}").format(self.uom, self.item_code)) + + def validate_dates(self): + if self.valid_from and self.valid_upto: + if getdate(self.valid_from) > getdate(self.valid_upto): + frappe.throw(_("Valid From Date must be lesser than Valid Up To Date.")) + def update_price_list_details(self): if self.price_list: price_list_details = frappe.db.get_value( -- GitLab From eb6eefd3d18a165bb25334f5a01321e37f9d0606 Mon Sep 17 00:00:00 2001 From: Raffael Meyer <14891507+barredterra@users.noreply.github.com> Date: Mon, 25 Mar 2024 23:27:18 +0100 Subject: [PATCH 2/2] Merge pull request #40586 from barredterra/validate-item-price-uom --- erpnext/stock/doctype/item_price/item_price.py | 5 ----- 1 file changed, 5 deletions(-) diff --git a/erpnext/stock/doctype/item_price/item_price.py b/erpnext/stock/doctype/item_price/item_price.py index 55040e161a..e3315e2ae6 100644 --- a/erpnext/stock/doctype/item_price/item_price.py +++ b/erpnext/stock/doctype/item_price/item_price.py @@ -62,11 +62,6 @@ class ItemPrice(Document): ): frappe.throw(_("UOM {0} not found in Item {1}").format(self.uom, self.item_code)) - def validate_dates(self): - if self.valid_from and self.valid_upto: - if getdate(self.valid_from) > getdate(self.valid_upto): - frappe.throw(_("Valid From Date must be lesser than Valid Up To Date.")) - def update_price_list_details(self): if self.price_list: price_list_details = frappe.db.get_value( -- GitLab