From cefef3b62deffbce8a35bd631cd7695a4fc66794 Mon Sep 17 00:00:00 2001 From: Rohit Waghchaure Date: Mon, 29 Apr 2019 20:34:46 +0530 Subject: [PATCH] fix: while making project from sales order, getting duplicate project error --- erpnext/projects/doctype/project/project.py | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/erpnext/projects/doctype/project/project.py b/erpnext/projects/doctype/project/project.py index ebb15997962..fc58df0ffc5 100644 --- a/erpnext/projects/doctype/project/project.py +++ b/erpnext/projects/doctype/project/project.py @@ -74,7 +74,7 @@ class Project(Document): self.load_tasks() self.validate_dates() self.send_welcome_email() - self.update_percent_complete() + self.update_percent_complete(from_validate=True) def validate_project_name(self): if self.get("__islocal") and frappe.db.exists("Project", self.project_name): @@ -198,7 +198,7 @@ class Project(Document): if self.sales_order: frappe.db.set_value("Sales Order", self.sales_order, "project", self.name) - def update_percent_complete(self): + def update_percent_complete(self, from_validate=False): if not self.tasks: return total = frappe.db.sql("""select count(name) from tabTask where project=%s""", self.name)[0][0] if not total and self.percent_complete: @@ -227,7 +227,9 @@ class Project(Document): self.status = "Completed" elif not self.status == "Cancelled": self.status = "Open" - self.db_update() + + if not from_validate: + self.db_update() def update_costing(self): from_time_sheet = frappe.db.sql("""select