From 229b583715a359993b80e2703fe7023e197d0835 Mon Sep 17 00:00:00 2001 From: tunde Date: Thu, 31 Aug 2017 14:30:53 +0100 Subject: [PATCH] disable due date field if form has payment schedule data --- .../purchase_invoice/purchase_invoice.js | 19 +++++++++++++++++++ .../doctype/sales_invoice/sales_invoice.js | 19 +++++++++++++++++++ 2 files changed, 38 insertions(+) diff --git a/erpnext/accounts/doctype/purchase_invoice/purchase_invoice.js b/erpnext/accounts/doctype/purchase_invoice/purchase_invoice.js index ac5f5dd3214..8d4d2d4284a 100644 --- a/erpnext/accounts/doctype/purchase_invoice/purchase_invoice.js +++ b/erpnext/accounts/doctype/purchase_invoice/purchase_invoice.js @@ -372,3 +372,22 @@ frappe.ui.form.on("Purchase Invoice", { frm.toggle_reqd("supplier_warehouse", frm.doc.is_subcontracted==="Yes"); } }) + +frappe.ui.form.on("Purchase Invoice", { + payment_terms_template: function() { + cur_frm.trigger("disable_due_date"); + }, + + disable_due_date: function() { + const disable = !cur_frm.doc.payment_terms_template && cur_frm.doc.payment_schedule.length == 0; + cur_frm.set_df_property("due_date", "read_only", disable ? 1 : 0); + }, + +}); + +frappe.ui.form.on("Payment Schedule", { + payment_schedule_remove: function() { + cur_frm.trigger("disable_due_date"); + }, + +}); \ No newline at end of file diff --git a/erpnext/accounts/doctype/sales_invoice/sales_invoice.js b/erpnext/accounts/doctype/sales_invoice/sales_invoice.js index ef233c67995..2c11e1701ec 100644 --- a/erpnext/accounts/doctype/sales_invoice/sales_invoice.js +++ b/erpnext/accounts/doctype/sales_invoice/sales_invoice.js @@ -564,3 +564,22 @@ var calculate_total_billing_amount = function(frm) { refresh_field('total_billing_amount') } + +frappe.ui.form.on("Sales Invoice", { + payment_terms_template: function() { + cur_frm.trigger("disable_due_date"); + }, + + disable_due_date: function() { + const disable = !cur_frm.doc.payment_terms_template && cur_frm.doc.payment_schedule.length == 0; + cur_frm.set_df_property("due_date", "read_only", disable ? 1 : 0); + }, + +}); + +frappe.ui.form.on("Payment Schedule", { + payment_schedule_remove: function() { + cur_frm.trigger("disable_due_date"); + }, + +}); \ No newline at end of file