diff --git a/account.py b/account.py
index 02aadfd88d..405f71a4cc 100644
--- a/account.py
+++ b/account.py
@@ -18,24 +18,35 @@ class Type(OSV):
_order = 'sequence, id'
_description = __doc__
name = fields.Char('Name', size=None, required=True, translate=True)
- code = fields.Char('Code', size=None)
+ code = fields.Selection([
+ (None, ''),
+ ('payable', 'Payable'),
+ ('revenue', 'Revenue'),
+ ('receivable', 'Receivable'),
+ ('expense', 'Expense'),
+ ('income', 'Income'),
+ ('view', 'View'),
+ ], 'Code')
parent = fields.Many2One('account.account.type', 'Parent')
childs = fields.One2Many('account.account.type', 'parent', 'Childs')
sequence = fields.Integer('Sequence', required=True,
help='Use to order the account type')
- #TODO add constraint (only for end level)
account_type = fields.Boolean('Account Type',
help='Can be use as type for account')
- partner_account = fields.Boolean('Partner account')
#TODO fix digits depend of the currency
amount = fields.Function('get_amount', digits=(16, 2), string='Amount')
-
- def default_partner_account(self, cursor, user, context=None):
- return False
+ balance_sheet = fields.Boolean('Balance Sheet')
+ income_statement = fields.Boolean('Income Statement')
def default_account_type(self, cursor, user, context=None):
return False
+ def default_balance_sheet(self, cursor, user, context=None):
+ return False
+
+ def default_income_statement(self, cursor, user, context=None):
+ return False
+
def get_amount(self, cursor, user, ids, name, arg, context=None):
company_obj = self.pool.get('company.company')
account_obj = self.pool.get('account.account')
@@ -797,9 +808,6 @@ class OpenBalanceSheet(Wizard):
},
}
- def _get_root_codes(self, cursor, user, datas, context=None):
- return ('asset', 'liability', 'equity')
-
def _action_open(self, cursor, user, datas, context=None):
if context is None:
context = {}
@@ -834,9 +842,6 @@ class OpenBalanceSheet(Wizard):
'posted': datas['form']['posted'],
'company': datas['form']['company'],
})
- res['domain'] = res['domain'][:-1] + ', ' + \
- str(('code', 'in', self._get_root_codes(cursor, user, datas,
- context=context))) + res['domain'][-1]
res['name'] = res['name'] + ' - '+ date + ' - ' + company.name
return res
@@ -909,9 +914,6 @@ class OpenIncomeStatement(Wizard):
},
}
- def _get_root_codes(self, cursor, user, datas, context=None):
- return ('income',)
-
def _action_open(self, cursor, user, datas, context=None):
if context is None:
context = {}
@@ -957,9 +959,6 @@ class OpenIncomeStatement(Wizard):
'posted': datas['form']['posted'],
'company': datas['form']['company'],
})
- res['domain'] = res['domain'][:-1] + ', ' + \
- str(('code', 'in', self._get_root_codes(cursor, user, datas,
- context=context))) + res['domain'][-1]
return res
OpenIncomeStatement()
diff --git a/account.xml b/account.xml
index a9a17fa27e..32deb78fd1 100644
--- a/account.xml
+++ b/account.xml
@@ -42,8 +42,12 @@
-
-
+
+
+
+
+
+
]]>
@@ -57,8 +61,6 @@
-
-
]]>
@@ -110,8 +112,8 @@
Asset
- asset
+
Current
@@ -120,7 +122,6 @@
Cash
- cash
@@ -129,7 +130,6 @@
Receivable
receivable
-
@@ -140,8 +140,8 @@
Liability
- liability
+
Current
@@ -152,13 +152,11 @@
Payable
payable
-
Tax
- tax
@@ -170,18 +168,18 @@
Equity
- equity
+
Income
income
+
Revenue
- revenue
@@ -511,7 +509,7 @@
Balance Sheet
account.account.type
tree
- [('parent', '=', False)]
+ [('parent', '=', False), ('balance_sheet', '=', True)]
@@ -566,7 +564,7 @@
Income Statement
account.account.type
tree
- [('parent', '=', False)]
+ [('parent', '=', False), ('income_statement', '=', True)]