From 5a803d76ada91514b39980ac58f8aa10e71071be Mon Sep 17 00:00:00 2001 From: Nabin Hait Date: Thu, 10 Sep 2015 13:20:35 +0530 Subject: [PATCH] [fix] Bypass Root Not Editable validation from Setup Wizard --- erpnext/accounts/doctype/account/account.py | 4 +++- erpnext/setup/page/setup_wizard/setup_wizard.py | 5 +++++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/erpnext/accounts/doctype/account/account.py b/erpnext/accounts/doctype/account/account.py index 46f75208fc..16d25010e3 100644 --- a/erpnext/accounts/doctype/account/account.py +++ b/erpnext/accounts/doctype/account/account.py @@ -7,6 +7,8 @@ from frappe.utils import cstr, cint from frappe import throw, _ from frappe.model.document import Document +class RootNotEditable(frappe.ValidationError): pass + class Account(Document): nsm_parent_field = 'parent_account' @@ -67,7 +69,7 @@ class Account(Document): # does not exists parent if frappe.db.exists("Account", self.name): if not frappe.db.get_value("Account", self.name, "parent_account"): - throw(_("Root cannot be edited.")) + throw(_("Root cannot be edited."), RootNotEditable) def validate_frozen_accounts_modifier(self): old_value = frappe.db.get_value("Account", self.name, "freeze_account") diff --git a/erpnext/setup/page/setup_wizard/setup_wizard.py b/erpnext/setup/page/setup_wizard/setup_wizard.py index e578f87766..77ad90a0b7 100644 --- a/erpnext/setup/page/setup_wizard/setup_wizard.py +++ b/erpnext/setup/page/setup_wizard/setup_wizard.py @@ -15,6 +15,7 @@ from .default_website import website_maker import install_fixtures from .sample_data import make_sample_data from erpnext.accounts.utils import FiscalYearError +from erpnext.accounts.doctype.account.account import RootNotEditable @frappe.whitelist() def setup_account(args=None): @@ -303,6 +304,7 @@ def get_fy_details(fy_start_date, fy_end_date): return fy def create_taxes(args): + for i in xrange(1,6): if args.get("tax_" + str(i)): # replace % in case someone also enters the % symbol @@ -320,6 +322,9 @@ def create_taxes(args): pass else: raise + except RootNotEditable, e: + pass + def make_tax_head(args, i, tax_group, tax_rate): return frappe.get_doc({ "doctype":"Account",