From bbce7b7e5d436ea1f9cee4d17ef0272ff501f598 Mon Sep 17 00:00:00 2001 From: tunde Date: Thu, 26 Oct 2017 14:30:18 +0100 Subject: [PATCH 1/7] get attribute with get method --- erpnext/stock/doctype/item/item.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/erpnext/stock/doctype/item/item.py b/erpnext/stock/doctype/item/item.py index 4b4f15bf41..bf8eaba0a2 100644 --- a/erpnext/stock/doctype/item/item.py +++ b/erpnext/stock/doctype/item/item.py @@ -57,7 +57,7 @@ class Item(WebsiteGenerator): if not self.description: self.description = self.item_name - if self.is_sales_item and not self.is_item_from_hub: + if self.is_sales_item and not self.get('is_item_from_hub'): self.publish_in_hub = 1 def after_insert(self): From 40611e4f69ddeffcfe005ab3348fa0acb98cfeb6 Mon Sep 17 00:00:00 2001 From: Faris Ansari Date: Tue, 31 Oct 2017 13:00:09 +0530 Subject: [PATCH 2/7] [fix] hub get_item_details (#11383) --- erpnext/hub_node/__init__.py | 4 +++- erpnext/hub_node/page/hub/hub.js | 1 + 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/erpnext/hub_node/__init__.py b/erpnext/hub_node/__init__.py index 686fe8d202..8efbed8f7e 100644 --- a/erpnext/hub_node/__init__.py +++ b/erpnext/hub_node/__init__.py @@ -34,7 +34,9 @@ def get_categories(): return response @frappe.whitelist() -def get_item_details(hub_sync_id): +def get_item_details(hub_sync_id=None): + if not hub_sync_id: + return connection = get_connection() return connection.get_doc('Hub Item', hub_sync_id) diff --git a/erpnext/hub_node/page/hub/hub.js b/erpnext/hub_node/page/hub/hub.js index 143f55444f..297a4d1291 100644 --- a/erpnext/hub_node/page/hub/hub.js +++ b/erpnext/hub_node/page/hub/hub.js @@ -382,6 +382,7 @@ erpnext.hub.Hub = class Hub { }, method: "erpnext.hub_node.get_item_details", callback: (r) => { + if (!r || !r.message) return; let item = r.message; this.item_cache[item_code] = item; this.render_item_page(item); From 5ec9f6930be5bbe43509f1fcd1b1642ffa9ed379 Mon Sep 17 00:00:00 2001 From: Rohit Waghchaure Date: Tue, 31 Oct 2017 15:26:56 +0530 Subject: [PATCH 3/7] [Fix] Getting an error while making delivery note from sales order and sales order has no item code --- erpnext/selling/doctype/sales_order/sales_order.py | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/erpnext/selling/doctype/sales_order/sales_order.py b/erpnext/selling/doctype/sales_order/sales_order.py index fa21a3d7ee..747a3c062c 100644 --- a/erpnext/selling/doctype/sales_order/sales_order.py +++ b/erpnext/selling/doctype/sales_order/sales_order.py @@ -477,9 +477,11 @@ def make_delivery_note(source_name, target_doc=None): target.qty = flt(source.qty) - flt(source.delivered_qty) item = frappe.db.get_value("Item", target.item_code, ["item_group", "selling_cost_center"], as_dict=1) - target.cost_center = frappe.db.get_value("Project", source_parent.project, "cost_center") \ - or item.selling_cost_center \ - or frappe.db.get_value("Item Group", item.item_group, "default_cost_center") + + if item: + target.cost_center = frappe.db.get_value("Project", source_parent.project, "cost_center") \ + or item.selling_cost_center \ + or frappe.db.get_value("Item Group", item.item_group, "default_cost_center") target_doc = get_mapped_doc("Sales Order", source_name, { "Sales Order": { From 31287b00a6de13d56ed01475c4002cff57749d15 Mon Sep 17 00:00:00 2001 From: tunde Date: Tue, 31 Oct 2017 18:10:17 +0100 Subject: [PATCH 4/7] call get_employee_loan_application only when appropriate --- .../hr/doctype/employee_loan/employee_loan.js | 34 ++++++++++--------- 1 file changed, 18 insertions(+), 16 deletions(-) diff --git a/erpnext/hr/doctype/employee_loan/employee_loan.js b/erpnext/hr/doctype/employee_loan/employee_loan.js index 33d3a85db6..1f38105c4d 100644 --- a/erpnext/hr/doctype/employee_loan/employee_loan.js +++ b/erpnext/hr/doctype/employee_loan/employee_loan.js @@ -87,22 +87,24 @@ frappe.ui.form.on('Employee Loan', { }, employee_loan_application: function (frm) { - return frappe.call({ - method: "erpnext.hr.doctype.employee_loan.employee_loan.get_employee_loan_application", - args: { - "employee_loan_application": frm.doc.employee_loan_application - }, - callback: function (r) { - if (!r.exc && r.message) { - frm.set_value("loan_type", r.message.loan_type); - frm.set_value("loan_amount", r.message.loan_amount); - frm.set_value("repayment_method", r.message.repayment_method); - frm.set_value("monthly_repayment_amount", r.message.repayment_amount); - frm.set_value("repayment_periods", r.message.repayment_periods); - frm.set_value("rate_of_interest", r.message.rate_of_interest); - } - } - }) + if(frm.doc.employee_loan_application){ + return frappe.call({ + method: "erpnext.hr.doctype.employee_loan.employee_loan.get_employee_loan_application", + args: { + "employee_loan_application": frm.doc.employee_loan_application + }, + callback: function (r) { + if (!r.exc && r.message) { + frm.set_value("loan_type", r.message.loan_type); + frm.set_value("loan_amount", r.message.loan_amount); + frm.set_value("repayment_method", r.message.repayment_method); + frm.set_value("monthly_repayment_amount", r.message.repayment_amount); + frm.set_value("repayment_periods", r.message.repayment_periods); + frm.set_value("rate_of_interest", r.message.rate_of_interest); + } + } + }); + } }, repayment_method: function (frm) { From 99748dbacf99ba8ba03186b04caaa54ef1cfb132 Mon Sep 17 00:00:00 2001 From: Rohit Waghchaure Date: Wed, 1 Nov 2017 11:45:02 +0530 Subject: [PATCH 5/7] [Fix] Wrong difference amount in the payment entry for the internal transfer type --- erpnext/accounts/doctype/payment_entry/payment_entry.js | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/erpnext/accounts/doctype/payment_entry/payment_entry.js b/erpnext/accounts/doctype/payment_entry/payment_entry.js index 17ac1f7056..52d8a2d5ce 100644 --- a/erpnext/accounts/doctype/payment_entry/payment_entry.js +++ b/erpnext/accounts/doctype/payment_entry/payment_entry.js @@ -648,13 +648,13 @@ frappe.ui.form.on('Payment Entry', { set_difference_amount: function(frm) { var unallocated_amount = 0; + var total_deductions = frappe.utils.sum($.map(frm.doc.deductions || [], + function(d) { return flt(d.amount) })); + if(frm.doc.party) { var party_amount = frm.doc.payment_type=="Receive" ? frm.doc.paid_amount : frm.doc.received_amount; - var total_deductions = frappe.utils.sum($.map(frm.doc.deductions || [], - function(d) { return flt(d.amount) })); - if(frm.doc.total_allocated_amount < party_amount) { if(frm.doc.payment_type == "Receive") { unallocated_amount = party_amount - (frm.doc.total_allocated_amount - total_deductions); From 816ce33daf4e5a27ec548d04ee11499980062f1b Mon Sep 17 00:00:00 2001 From: Rohit Waghchaure Date: Wed, 1 Nov 2017 18:56:43 +0530 Subject: [PATCH 6/7] [Fix] Customer is manadatory even if customer has selected in the Issue --- erpnext/support/doctype/issue/issue.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/erpnext/support/doctype/issue/issue.py b/erpnext/support/doctype/issue/issue.py index ab73b3427d..6a18f1153b 100644 --- a/erpnext/support/doctype/issue/issue.py +++ b/erpnext/support/doctype/issue/issue.py @@ -32,7 +32,7 @@ class Issue(Document): if email_id: if not self.lead: self.lead = frappe.db.get_value("Lead", {"email_id": email_id}) - if not self.contact: + if not self.contact and not self.customer: self.contact = frappe.db.get_value("Contact", {"email_id": email_id}) if self.contact: From 870ce3cfea3f761ae62aac16e75611fd70bc60a1 Mon Sep 17 00:00:00 2001 From: Saurabh Date: Thu, 2 Nov 2017 12:44:40 +0600 Subject: [PATCH 7/7] bumped to version 9.2.3 --- erpnext/__init__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/erpnext/__init__.py b/erpnext/__init__.py index b245f56172..0dcb23f232 100644 --- a/erpnext/__init__.py +++ b/erpnext/__init__.py @@ -4,7 +4,7 @@ import inspect import frappe from erpnext.hooks import regional_overrides -__version__ = '9.2.2' +__version__ = '9.2.3' def get_default_company(user=None): '''Get default company for user'''