Fixed Countrywise Chart of Accounts patch
diff --git a/erpnext/patches.txt b/erpnext/patches.txt
index 8c20452..c109250 100644
--- a/erpnext/patches.txt
+++ b/erpnext/patches.txt
@@ -1,3 +1,5 @@
+execute:import unidecode # new requirement
+
erpnext.patches.4_0.validate_v3_patch
erpnext.patches.4_0.update_user_properties
erpnext.patches.4_0.move_warehouse_user_to_restrictions
@@ -29,6 +31,6 @@
erpnext.patches.4_0.split_email_settings
erpnext.patches.4_0.fix_employee_user_id
erpnext.patches.4_0.import_country_codes
-execute:patches.4_0.countrywise_coa
+erpnext.patches.4_0.countrywise_coa
execute:frappe.delete_doc("DocType", "MIS Control")
execute:frappe.delete_doc("Page", "Financial Statements")
diff --git a/erpnext/patches/4_0/countrywise_coa.py b/erpnext/patches/4_0/countrywise_coa.py
index 2425856..bddb279 100644
--- a/erpnext/patches/4_0/countrywise_coa.py
+++ b/erpnext/patches/4_0/countrywise_coa.py
@@ -12,12 +12,12 @@
where account_type='Bank or Cash' and account_name in ('Cash', 'Cash In Hand')""")
ac_types = {"Fixed Asset Account": "Fixed Asset", "Bank or Cash": "Bank"}
- for old, new in ac_types.items:
+ for old, new in ac_types.items():
frappe.db.sql("""update tabAccount set account_type=%s
where account_type=%s""", (new, old))
frappe.db.sql("""update `tabAccount` set report_type =
- if(is_pl_account=='Yes', 'Profit and Loss', 'Balance Sheet')""")
+ if(is_pl_account='Yes', 'Profit and Loss', 'Balance Sheet')""")
frappe.db.sql("""update `tabAccount` set balance_must_be=debit_or_credit
where ifnull(allow_negative_balance, 0) = 0""")
\ No newline at end of file
diff --git a/erpnext/patches/4_0/import_country_codes.py b/erpnext/patches/4_0/import_country_codes.py
index 9a4ddcb..4d1177e 100644
--- a/erpnext/patches/4_0/import_country_codes.py
+++ b/erpnext/patches/4_0/import_country_codes.py
@@ -3,11 +3,11 @@
from __future__ import unicode_literals
import frappe
+from frappe.country_info import get_all
+from erpnext.setup.install import import_country_and_currency
def execute():
frappe.reload_doc("setup", "doctype", "country")
-
- from frappe.country_info import get_all
-
+ import_country_and_currency()
for name, country in get_all().iteritems():
frappe.set_value("Country", name, "code", country.get("code"))
\ No newline at end of file
diff --git a/erpnext/setup/install.py b/erpnext/setup/install.py
index a7707a1..ae81fbd 100644
--- a/erpnext/setup/install.py
+++ b/erpnext/setup/install.py
@@ -23,13 +23,14 @@
for name in data:
country = frappe._dict(data[name])
- frappe.doc({
- "doctype": "Country",
- "country_name": name,
- "code": country.code,
- "date_format": country.date_format or "dd-mm-yyyy",
- "time_zones": "\n".join(country.timezones or [])
- }).insert()
+ if not frappe.db.exists("Country", name):
+ frappe.doc({
+ "doctype": "Country",
+ "country_name": name,
+ "code": country.code,
+ "date_format": country.date_format or "dd-mm-yyyy",
+ "time_zones": "\n".join(country.timezones or [])
+ }).insert()
if country.currency and not frappe.db.exists("Currency", country.currency):
frappe.doc({