diff --git a/addons/account/account.py b/addons/account/account.py index 88a9848f3bb..8896f8a7a69 100644 --- a/addons/account/account.py +++ b/addons/account/account.py @@ -171,6 +171,19 @@ class account_account(osv.osv): _description = "Account" _parent_store = True + def _get_children_and_consol(self, cr, uid, ids, context={}): + ids2=[] + temp=[] + read_data= self.read(cr, uid, ids,['id','child_id'], context) + for data in read_data: + ids2.append(data['id']) + if data['child_id']: + temp=[] + for x in data['child_id']: + temp.append(x) + ids2 += self._get_children_and_consol(cr, uid, temp, context) + return ids2 + def search(self, cr, uid, args, offset=0, limit=None, order=None, context=None, count=False): if context is None: @@ -297,6 +310,17 @@ class account_account(osv.osv): return result + def _get_level(self, cr, uid, ids, field_name, arg, context={}): + res={} + accounts = self.browse(cr, uid, ids) + for account in accounts: + level = 0 + if account.parent_id : + obj = self.browse(cr, uid, account.parent_id.id) + level = obj.level + 1 + res[account.id] = level + return res + _columns = { 'name': fields.char('Name', size=128, required=True, select=True), 'currency_id': fields.many2one('res.currency', 'Secondary Currency', help="Forces all moves for this account to have this secondary currency."), @@ -343,6 +367,7 @@ class account_account(osv.osv): 'check_history': fields.boolean('Display History', help="Check this box if you want to print all entries when printing the General Ledger, "\ "otherwise it will only print its balance."), + 'level': fields.function(_get_level, string='Level', method=True, store=True, type='integer'), } def _default_company(self, cr, uid, context={}): diff --git a/addons/account/account_analytic_line.py b/addons/account/account_analytic_line.py index 64a22d65b21..6350f32afbc 100644 --- a/addons/account/account_analytic_line.py +++ b/addons/account/account_analytic_line.py @@ -42,8 +42,8 @@ class account_analytic_line(osv.osv): } _defaults = { 'date': lambda *a: time.strftime('%Y-%m-%d'), - 'company_id': lambda self,cr,uid,context: self.pool.get('res.company')._company_default_get(cr, uid, 'account.analytic.line', context=context), - } + 'company_id': lambda self,cr,uid,c: self.pool.get('res.company')._company_default_get(cr, uid, 'account.analytic.line', context=c), + } _order = 'date' def search(self, cr, uid, args, offset=0, limit=None, order=None, context=None, count=False): diff --git a/addons/account/account_bank_statement.py b/addons/account/account_bank_statement.py index 9b1497b563f..81b6e3157a1 100644 --- a/addons/account/account_bank_statement.py +++ b/addons/account/account_bank_statement.py @@ -630,7 +630,7 @@ class account_bank_statement_line(osv.osv): 'statement_id': fields.many2one('account.bank.statement', 'Statement', select=True, required=True, ondelete='cascade'), 'reconcile_id': fields.many2one('account.bank.statement.reconcile', - 'Reconcile', states={'confirm':[('readonly',True)]}), + 'Reconcile'), 'move_ids': fields.many2many('account.move', 'account_bank_statement_line_move_rel', 'move_id','statement_id', 'Moves'), diff --git a/addons/account/account_invoice_view.xml b/addons/account/account_invoice_view.xml index 18d817f41bd..701d3c9fcc9 100644 --- a/addons/account/account_invoice_view.xml +++ b/addons/account/account_invoice_view.xml @@ -141,23 +141,23 @@ 2
- - - - - -