diff --git a/erpnext/projects/doctype/time_log/time_log.json b/erpnext/projects/doctype/time_log/time_log.json index e60e75ee1c4..f55ce1b8cda 100644 --- a/erpnext/projects/doctype/time_log/time_log.json +++ b/erpnext/projects/doctype/time_log/time_log.json @@ -76,7 +76,7 @@ "options": "Activity Type", "permlevel": 0, "read_only": 0, - "reqd": 1 + "reqd": 0 }, { "depends_on": "eval:doc.time_log_for != 'Manufacturing'", @@ -116,6 +116,7 @@ "read_only": 1 }, { + "depends_on": "eval:doc.time_log_for == 'Manufacturing'", "description": "Operation completed for how many finished goods?", "fieldname": "completed_qty", "fieldtype": "Float", diff --git a/erpnext/projects/doctype/time_log/time_log.py b/erpnext/projects/doctype/time_log/time_log.py index f4cb89e74eb..7bb083501e4 100644 --- a/erpnext/projects/doctype/time_log/time_log.py +++ b/erpnext/projects/doctype/time_log/time_log.py @@ -23,6 +23,7 @@ class TimeLog(Document): self.validate_time_log_for() self.check_workstation_timings() self.validate_production_order() + self.validate_project() def on_submit(self): self.update_production_order() @@ -127,6 +128,11 @@ class TimeLog(Document): from `tabTime Log` where production_order = %s and operation = %s and docstatus=1""", (self.production_order, self.operation), as_dict=1)[0] + + def validate_project(self): + if self.time_log_for == 'Project': + if not self.project: + frappe.throw(_("Project is Mandatory.")) @frappe.whitelist() def get_workstation(production_order, operation):