Merge pull request #2022 from nabinhait/hotfix
Fixes for customer / supplier renaming
diff --git a/erpnext/accounts/utils.py b/erpnext/accounts/utils.py
index 5f364e3..0144108 100644
--- a/erpnext/accounts/utils.py
+++ b/erpnext/accounts/utils.py
@@ -322,32 +322,38 @@
and fiscal_year='%(fiscal_year)s' and company='%(company)s' %(condition)s
""" % (args))[0][0]
-def rename_account_for(dt, olddn, newdn, merge, company):
- old_account = get_account_for(dt, olddn)
- if old_account:
- new_account = None
- if not merge:
- if old_account == add_abbr_if_missing(olddn, company):
- new_account = frappe.rename_doc("Account", old_account, newdn)
- else:
- existing_new_account = get_account_for(dt, newdn)
- new_account = frappe.rename_doc("Account", old_account,
- existing_new_account or newdn, merge=True if existing_new_account else False)
+def rename_account_for(dt, olddn, newdn, merge, company=None):
+ if not company:
+ companies = [d[0] for d in frappe.db.sql("select name from tabCompany")]
+ else:
+ companies = [company]
- frappe.db.set_value("Account", new_account or old_account, "master_name", newdn)
+ for company in companies:
+ old_account = get_account_for(dt, olddn, company)
+ if old_account:
+ new_account = None
+ if not merge:
+ if old_account == add_abbr_if_missing(olddn, company):
+ new_account = frappe.rename_doc("Account", old_account, newdn)
+ else:
+ existing_new_account = get_account_for(dt, newdn, company)
+ new_account = frappe.rename_doc("Account", old_account,
+ existing_new_account or newdn, merge=True if existing_new_account else False)
+
+ frappe.db.set_value("Account", new_account or old_account, "master_name", newdn)
def add_abbr_if_missing(dn, company):
from erpnext.setup.doctype.company.company import get_name_with_abbr
return get_name_with_abbr(dn, company)
-def get_account_for(account_for_doctype, account_for):
+def get_account_for(account_for_doctype, account_for, company):
if account_for_doctype in ["Customer", "Supplier"]:
account_for_field = "master_type"
elif account_for_doctype == "Warehouse":
account_for_field = "account_type"
return frappe.db.get_value("Account", {account_for_field: account_for_doctype,
- "master_name": account_for})
+ "master_name": account_for, "company": company})
def get_currency_precision(currency=None):
if not currency:
diff --git a/erpnext/buying/doctype/supplier/supplier.py b/erpnext/buying/doctype/supplier/supplier.py
index 6828845..240762e 100644
--- a/erpnext/buying/doctype/supplier/supplier.py
+++ b/erpnext/buying/doctype/supplier/supplier.py
@@ -88,7 +88,7 @@
def before_rename(self, olddn, newdn, merge=False):
from erpnext.accounts.utils import rename_account_for
- rename_account_for("Supplier", olddn, newdn, merge, self.company)
+ rename_account_for("Supplier", olddn, newdn, merge)
def after_rename(self, olddn, newdn, merge=False):
set_field = ''
diff --git a/erpnext/selling/doctype/customer/customer.py b/erpnext/selling/doctype/customer/customer.py
index c065b54..362542e 100644
--- a/erpnext/selling/doctype/customer/customer.py
+++ b/erpnext/selling/doctype/customer/customer.py
@@ -121,7 +121,7 @@
def before_rename(self, olddn, newdn, merge=False):
from erpnext.accounts.utils import rename_account_for
- rename_account_for("Customer", olddn, newdn, merge, self.company)
+ rename_account_for("Customer", olddn, newdn, merge)
def after_rename(self, olddn, newdn, merge=False):
set_field = ''
diff --git a/erpnext/support/doctype/customer_issue/customer_issue.py b/erpnext/support/doctype/customer_issue/customer_issue.py
index 6f368a8..45adb0b 100644
--- a/erpnext/support/doctype/customer_issue/customer_issue.py
+++ b/erpnext/support/doctype/customer_issue/customer_issue.py
@@ -52,11 +52,7 @@
target_doc = get_mapped_doc("Customer Issue", source_name, {
"Customer Issue": {
"doctype": "Maintenance Visit",
- "field_map": {
- "complaint": "description",
- "doctype": "prevdoc_doctype",
- "name": "prevdoc_docname"
- }
+ "field_map": {}
}
}, target_doc)
diff --git a/erpnext/templates/print_formats/includes/item_grid.html b/erpnext/templates/print_formats/includes/item_grid.html
index 3cc3034..d6ab347 100644
--- a/erpnext/templates/print_formats/includes/item_grid.html
+++ b/erpnext/templates/print_formats/includes/item_grid.html
@@ -22,12 +22,12 @@
{%- endif %}
{% if (not row.meta.is_print_hide("item_name") and
(row.meta.is_print_hide("item_code") or row.item_code != row.item_name)) -%}
- <div class="primary">{{ row.item_name }}</div>
+ <div class="primary">{{ row.get_formatted("item_name",as_html=True) }}</div>
{%- endif %}
{% if (not row.meta.is_print_hide("description") and row.description and
((row.meta.is_print_hide("item_code") and row.meta.is_print_hide("item_name"))
or not (row.item_code == row.item_name == row.description))) -%}
- <p>{{ row.description }}</p>
+ <p>{{ row.get_formatted("description", as_html=True) }}</p>
{%- endif %}
{%- for field in visible_columns -%}
{%- if (field.fieldname not in std_fields) and
diff --git a/erpnext/templates/print_formats/includes/taxes.html b/erpnext/templates/print_formats/includes/taxes.html
index 5d9aaac..50f9d86 100644
--- a/erpnext/templates/print_formats/includes/taxes.html
+++ b/erpnext/templates/print_formats/includes/taxes.html
@@ -5,10 +5,10 @@
{%- if not charge.included_in_print_rate -%}
<div class="row">
<div class="col-xs-5 text-right">
- <label>{{ charge.description }}</label></div>
+ <label>{{ charge.get_formatted("description", as_html=True) }}</label></div>
<div class="col-xs-7 text-right">
{{ frappe.format_value(charge.tax_amount / doc.conversion_rate,
- table_meta.get_field("tax_amount"), doc) }}
+ table_meta.get_field("tax_amount"), doc, currency=doc.currency) }}
</div>
</div>
{%- endif -%}