Merge pull request #9699 from manassolanki/productn
frappe call only when there is item in production order
diff --git a/erpnext/accounts/doctype/sales_invoice/sales_invoice.py b/erpnext/accounts/doctype/sales_invoice/sales_invoice.py
index 282425d..2dd4e7a 100644
--- a/erpnext/accounts/doctype/sales_invoice/sales_invoice.py
+++ b/erpnext/accounts/doctype/sales_invoice/sales_invoice.py
@@ -803,9 +803,10 @@
continue
for serial_no in item.serial_no.split("\n"):
- sno = frappe.get_doc('Serial No', serial_no)
- sno.sales_invoice = invoice
- sno.db_update()
+ if serial_no and frappe.db.exists('Serial No', serial_no):
+ sno = frappe.get_doc('Serial No', serial_no)
+ sno.sales_invoice = invoice
+ sno.db_update()
def validate_serial_numbers(self):
"""
diff --git a/erpnext/selling/doctype/installation_note/installation_note.js b/erpnext/selling/doctype/installation_note/installation_note.js
index ab35574..9f0c050 100644
--- a/erpnext/selling/doctype/installation_note/installation_note.js
+++ b/erpnext/selling/doctype/installation_note/installation_note.js
@@ -30,12 +30,8 @@
setup_queries: function() {
var me = this;
- this.frm.set_query("customer_address", function() {
- return {
- filters: {'customer': me.frm.doc.customer }
- }
- });
-
+ frappe.dynamic_link = {doc: this.frm.doc, fieldname: 'customer', doctype: 'Customer'}
+ frm.set_query('customer_address', erpnext.queries.address_query);
this.frm.set_query('contact_person', erpnext.queries.contact_query);
this.frm.set_query("customer", function() {