From 1897360e4b16d8dbded03ffdf0d88af27fbb6397 Mon Sep 17 00:00:00 2001 From: Nabin Hait Date: Mon, 24 Nov 2014 12:17:08 +0530 Subject: [PATCH 1/4] Set default language as English in setup wizard --- erpnext/setup/page/setup_wizard/setup_wizard.js | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/erpnext/setup/page/setup_wizard/setup_wizard.js b/erpnext/setup/page/setup_wizard/setup_wizard.js index 04b917f150..939eae648e 100644 --- a/erpnext/setup/page/setup_wizard/setup_wizard.js +++ b/erpnext/setup/page/setup_wizard/setup_wizard.js @@ -59,15 +59,18 @@ frappe.pages['setup-wizard'].onload = function(wrapper) { title: __("Select Your Language"), icon: "icon-globe", fields: [ - {"fieldname": "language", "label": __("Language"), "fieldtype": "Select", + { + "fieldname": "language", "label": __("Language"), "fieldtype": "Select", options: ["english", "العربية", "deutsch", "ελληνικά", "español", "français", "हिंदी", "hrvatski", - "italiano", "nederlands", "polski", "português brasileiro", "português", "српски", "தமிழ்", - "ไทย", "中国(简体)", "中國(繁體)"], reqd:1}, + "italiano", "nederlands", "polski", "português brasileiro", "português", "српски", "தமிழ்", + "ไทย", "中国(简体)", "中國(繁體)"], + reqd:1, "default": "english" + }, ], help: __("Welcome to ERPNext. Please select your language to begin the Setup Wizard."), onload: function(slide) { slide.get_input("language").on("change", function() { - var lang = $(this).val(); + var lang = $(this).val() || "english"; frappe._messages = {}; frappe.call({ method: "erpnext.setup.page.setup_wizard.setup_wizard.load_messages", From db74e316d2f57e4e5d8eed96df0601697bf0f68b Mon Sep 17 00:00:00 2001 From: Nabin Hait Date: Mon, 24 Nov 2014 13:09:41 +0530 Subject: [PATCH 2/4] Validate serial no after auto-creation based on naming series --- erpnext/stock/doctype/serial_no/serial_no.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/erpnext/stock/doctype/serial_no/serial_no.py b/erpnext/stock/doctype/serial_no/serial_no.py index 14c409ba80..87c3cafbfc 100644 --- a/erpnext/stock/doctype/serial_no/serial_no.py +++ b/erpnext/stock/doctype/serial_no/serial_no.py @@ -253,8 +253,9 @@ def update_serial_nos(sle, item_det): from frappe.model.naming import make_autoname serial_nos = [] for i in xrange(cint(sle.actual_qty)): - serial_nos.append(make_autoname(item_det.serial_no_series)) + serial_nos.append(make_autoname(item_det.serial_no_series, "Serial No")) frappe.db.set(sle, "serial_no", "\n".join(serial_nos)) + validate_serial_no(sle, item_det) if sle.serial_no: serial_nos = get_serial_nos(sle.serial_no) From 0ad7db3bbd1b0b3d43af98c536cbf62df07a6e9a Mon Sep 17 00:00:00 2001 From: Nabin Hait Date: Mon, 24 Nov 2014 14:33:30 +0530 Subject: [PATCH 3/4] Minor fix in salary slip net total calculation --- erpnext/hr/doctype/salary_slip/salary_slip.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/erpnext/hr/doctype/salary_slip/salary_slip.py b/erpnext/hr/doctype/salary_slip/salary_slip.py index 7c905a666c..f30fe02fa9 100644 --- a/erpnext/hr/doctype/salary_slip/salary_slip.py +++ b/erpnext/hr/doctype/salary_slip/salary_slip.py @@ -156,7 +156,7 @@ class SalarySlip(TransactionBase): / cint(self.total_days_in_month), 2) elif not self.payment_days: d.e_modified_amount = 0 - else: + elif not d.e_modified_amount: d.e_modified_amount = d.e_amount self.gross_pay += flt(d.e_modified_amount) @@ -168,7 +168,7 @@ class SalarySlip(TransactionBase): / cint(self.total_days_in_month), 2) elif not self.payment_days: d.d_modified_amount = 0 - else: + elif not d.d_modified_amount: d.d_modified_amount = d.d_amount self.total_deduction += flt(d.d_modified_amount) From b74ae7aa3130d260c370b0eb8415ddb01d78116f Mon Sep 17 00:00:00 2001 From: Nabin Hait Date: Mon, 24 Nov 2014 18:17:01 +0530 Subject: [PATCH 4/4] Minor fix for order to invoice mapping --- erpnext/buying/doctype/purchase_order/purchase_order.py | 2 +- erpnext/selling/doctype/sales_order/sales_order.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/erpnext/buying/doctype/purchase_order/purchase_order.py b/erpnext/buying/doctype/purchase_order/purchase_order.py index 9b473c19bd..09f303f6aa 100644 --- a/erpnext/buying/doctype/purchase_order/purchase_order.py +++ b/erpnext/buying/doctype/purchase_order/purchase_order.py @@ -247,7 +247,7 @@ def make_purchase_invoice(source_name, target_doc=None): def update_item(obj, target, source_parent): target.amount = flt(obj.amount) - flt(obj.billed_amt) target.base_amount = target.amount * flt(source_parent.conversion_rate) - target.qty = target.amount / flt(obj.rate) if flt(obj.rate) else flt(obj.qty) + target.qty = target.amount / flt(obj.rate) if (flt(obj.rate) and flt(obj.billed_amt)) else flt(obj.qty) doc = get_mapped_doc("Purchase Order", source_name, { "Purchase Order": { diff --git a/erpnext/selling/doctype/sales_order/sales_order.py b/erpnext/selling/doctype/sales_order/sales_order.py index bffa581639..498aec12b6 100644 --- a/erpnext/selling/doctype/sales_order/sales_order.py +++ b/erpnext/selling/doctype/sales_order/sales_order.py @@ -329,7 +329,7 @@ def make_sales_invoice(source_name, target_doc=None): def update_item(source, target, source_parent): target.amount = flt(source.amount) - flt(source.billed_amt) target.base_amount = target.amount * flt(source_parent.conversion_rate) - target.qty = source.rate and target.amount / flt(source.rate) or source.qty + target.qty = target.amount / flt(source.rate) if (source.rate and source.billed_amt) else source.qty doclist = get_mapped_doc("Sales Order", source_name, { "Sales Order": {