diff --git a/accounts/doctype/account/account.js b/accounts/doctype/account/account.js index d34601b0ec..2d35bd136f 100644 --- a/accounts/doctype/account/account.js +++ b/accounts/doctype/account/account.js @@ -35,6 +35,10 @@ cur_frm.cscript.refresh = function(doc, cdt, cdn) { // hide fields if group cur_frm.toggle_display(['account_type', 'master_type', 'master_name', 'freeze_account', 'credit_days', 'credit_limit', 'tax_rate'], doc.group_or_ledger=='Ledger') + + // disable fields + cur_frm.toggle_enable(['account_name', 'debit_or_credit', 'group_or_ledger', + 'is_pl_account', 'company'], false); // read-only for root accounts root_acc = ['Application of Funds (Assets)','Expenses','Income','Source of Funds (Liabilities)']; @@ -44,8 +48,8 @@ cur_frm.cscript.refresh = function(doc, cdt, cdn) { } else { // credit days and type if customer or supplier cur_frm.set_intro(null); - cur_frm.toggle_display(['credit_days', 'credit_limit'], - in_list(['Customer', 'Supplier'], doc.master_type)) + cur_frm.toggle_display(['credit_days', 'credit_limit', 'master_name'], + in_list(['Customer', 'Supplier'], doc.master_type)); // hide tax_rate cur_frm.cscript.account_type(doc, cdt, cdn); @@ -55,6 +59,12 @@ cur_frm.cscript.refresh = function(doc, cdt, cdn) { } } +cur_frm.cscript.master_type = function(doc, cdt, cdn) { + cur_frm.toggle_display(['credit_days', 'credit_limit', 'master_name'], + in_list(['Customer', 'Supplier'], doc.master_type)); +} + + // Fetch parent details // ----------------------------------------- cur_frm.add_fetch('parent_account', 'debit_or_credit', 'debit_or_credit'); diff --git a/patches/october_2012/company_fiscal_year_docstatus_patch.py b/patches/october_2012/company_fiscal_year_docstatus_patch.py new file mode 100644 index 0000000000..34ec2745fe --- /dev/null +++ b/patches/october_2012/company_fiscal_year_docstatus_patch.py @@ -0,0 +1,7 @@ +import webnotes +def execute(): + webnotes.conn.sql("""update `tabCompany` set docstatus = 0 + where docstatus is null""") + + webnotes.conn.sql("""update `tabFiscal Year` set docstatus = 0 + where docstatus is null""") \ No newline at end of file diff --git a/patches/october_2012/remove_old_trial_bal.py b/patches/october_2012/remove_old_trial_bal.py new file mode 100644 index 0000000000..f3015252b9 --- /dev/null +++ b/patches/october_2012/remove_old_trial_bal.py @@ -0,0 +1,6 @@ +from __future__ import unicode_literals +from webnotes.model import delete_doc + +def execute(): + # remove search criteria + delete_doc("Search Criteria", "trial_balance") diff --git a/patches/october_2012/update_account_property.py b/patches/october_2012/update_account_property.py new file mode 100644 index 0000000000..d30f0ccafe --- /dev/null +++ b/patches/october_2012/update_account_property.py @@ -0,0 +1,14 @@ +def execute(): + import webnotes + from webnotes.utils.nestedset import rebuild_tree + rebuild_tree('Account', 'parent_account') + + roots = webnotes.conn.sql(""" + select lft, rgt, debit_or_credit, is_pl_account, company from `tabAccount` + where ifnull(parent_account, '') = '' + """, as_dict=1) + + for acc in roots: + webnotes.conn.sql("""update tabAccount set debit_or_credit = %(debit_or_credit)s, + is_pl_account = %(is_pl_account)s, company = %(company)s + where lft > %(lft)s and rgt < %(rgt)s""", acc, debug=1) \ No newline at end of file diff --git a/patches/patch_list.py b/patches/patch_list.py index c8f814a34a..15dc8a570d 100644 --- a/patches/patch_list.py +++ b/patches/patch_list.py @@ -627,4 +627,12 @@ patch_list = [ 'patch_module': 'patches.october_2012', 'patch_file': 'company_fiscal_year_docstatus_patch', }, + { + 'patch_module': 'patches.october_2012', + 'patch_file': 'update_account_property', + }, + { + 'patch_module': 'patches.october_2012', + 'patch_file': 'remove_old_trial_bal', + }, ]