*moved sign of account_account on account_account_type
*splitted type of accounts into 2 fields: a fiels.selection for internal purpose (static) and a many2one to account_account_type for user categorization. *changed demo data accordingly *modified wizard of closing fiscalyear and views accordingly bzr revid: qdp@tinyerp.com-20080904120144-t0izbg80ot7tpth6
This commit is contained in:
parent
47fb47e040
commit
1daa6977d0
|
@ -104,10 +104,12 @@ class account_account_type(osv.osv):
|
|||
'sequence': fields.integer('Sequence', help="Gives the sequence order when displaying a list of account types."),
|
||||
'partner_account': fields.boolean('Partner account'),
|
||||
'close_method': fields.selection([('none','None'), ('balance','Balance'), ('detail','Detail'),('unreconciled','Unreconciled')], 'Deferral Method', required=True),
|
||||
'sign': fields.selection([(-1, 'Negative'), (1, 'Positive')], 'Sign on Reports', required=True, help='Allows to change the displayed amount of the balance in the reports, in order to see positive results instead of negative ones in expenses accounts.'),
|
||||
}
|
||||
_defaults = {
|
||||
'close_method': lambda *a: 'none',
|
||||
'sequence': lambda *a: 5,
|
||||
'sign': lambda *a: 1,
|
||||
}
|
||||
_order = "sequence"
|
||||
account_account_type()
|
||||
|
@ -224,10 +226,23 @@ class account_account(osv.osv):
|
|||
|
||||
_columns = {
|
||||
'name': fields.char('Name', size=128, required=True, select=True),
|
||||
'sign': fields.selection([(-1, 'Negative'), (1, 'Positive')], 'Sign', required=True, help='Allows to change the displayed amount of the balance to see positive results instead of negative ones in expenses accounts'),
|
||||
'currency_id': fields.many2one('res.currency', 'Secondary Currency', help="Force all moves for this account to have this secondary currency."),
|
||||
'code': fields.char('Code', size=64),
|
||||
'type': fields.selection(_code_get, 'Account Type', required=True),
|
||||
'type': fields.selection([
|
||||
('receivable','Receivable'),
|
||||
('payable','Payable'),
|
||||
('view','View'),
|
||||
('consolidation','Consolidation'),
|
||||
('income','Income'),
|
||||
('expense','Expense'),
|
||||
('tax','Tax'),
|
||||
('cash','Cash'),
|
||||
#('asset','Asset'),
|
||||
#('equity','Equity'),
|
||||
('closed','Closed'),
|
||||
], 'Internal Type', required=True,),
|
||||
|
||||
'user_type': fields.many2one('account.account.type', 'Account Type'),
|
||||
# 'parent_id': fields.many2many('account.account', 'account_account_rel', 'child_id', 'parent_id', 'Parents'),
|
||||
'parent_id': fields.many2one('account.account','Parent', ondelete='cascade'),
|
||||
'child_parent_ids':fields.one2many('account.account','parent_id','Children'),
|
||||
|
@ -258,7 +273,6 @@ class account_account(osv.osv):
|
|||
return self.pool.get('res.company').search(cr, uid, [('parent_id', '=', False)])[0]
|
||||
|
||||
_defaults = {
|
||||
'sign': lambda *a: 1,
|
||||
'type' : lambda *a :'view',
|
||||
'reconcile': lambda *a: False,
|
||||
'company_id': _default_company,
|
||||
|
@ -1656,10 +1670,23 @@ class account_account_template(osv.osv):
|
|||
|
||||
_columns = {
|
||||
'name': fields.char('Name', size=128, required=True, select=True),
|
||||
'sign': fields.selection([(-1, 'Negative'), (1, 'Positive')], 'Sign', required=True, help='Allows to change the displayed amount of the balance to see positive results instead of negative ones in expenses accounts.'),
|
||||
#'sign': fields.selection([(-1, 'Negative'), (1, 'Positive')], 'Sign', required=True, help='Allows to change the displayed amount of the balance to see positive results instead of negative ones in expenses accounts.'),
|
||||
'currency_id': fields.many2one('res.currency', 'Secondary Currency', help="Force all moves for this account to have this secondary currency."),
|
||||
'code': fields.char('Code', size=64),
|
||||
'type': fields.selection(_code_get, 'Account Type', required=True),
|
||||
'type': fields.selection([
|
||||
('receivable','Receivable'),
|
||||
('payable','Payable'),
|
||||
('view','View'),
|
||||
('consolidation','Consolidation'),
|
||||
('income','Income'),
|
||||
('expense','Expense'),
|
||||
('tax','Tax'),
|
||||
('cash','Cash'),
|
||||
#('asset','Asset'),
|
||||
#('equity','Equity'),
|
||||
('closed','Closed'),
|
||||
], 'Internal Type', required=True,),
|
||||
'user_type': fields.many2one('account.account.type', 'Account Type'),
|
||||
'reconcile': fields.boolean('Allow Reconciliation', help="Check this option if the user can make a reconciliation of the entries in this account."),
|
||||
'shortcut': fields.char('Shortcut', size=12),
|
||||
'note': fields.text('Note'),
|
||||
|
@ -1669,7 +1696,7 @@ class account_account_template(osv.osv):
|
|||
}
|
||||
|
||||
_defaults = {
|
||||
'sign': lambda *a: 1,
|
||||
#'sign': lambda *a: 1,
|
||||
'reconcile': lambda *a: False,
|
||||
'type' : lambda *a :'view',
|
||||
}
|
||||
|
@ -1948,10 +1975,11 @@ class wizard_multi_charts_accounts(osv.osv_memory):
|
|||
#create the account_account
|
||||
vals={
|
||||
'name': (obj_acc_root.id == account_template.id) and obj_multi.company_id.name or account_template.name,
|
||||
'sign': account_template.sign,
|
||||
#'sign': account_template.sign,
|
||||
'currency_id': account_template.currency_id and account_template.currency_id.id or False,
|
||||
'code': account_template.code,
|
||||
'type': account_template.type,
|
||||
'user_type': account_template.user_type or False,
|
||||
'reconcile': account_template.reconcile,
|
||||
'shortcut': account_template.shortcut,
|
||||
'note': account_template.note,
|
||||
|
@ -2015,10 +2043,11 @@ class wizard_multi_charts_accounts(osv.osv_memory):
|
|||
tmp = self.pool.get('res.partner.bank').name_get(cr, uid, [line.acc_no.id])[0][1]
|
||||
vals={
|
||||
'name': line.acc_no.bank and line.acc_no.bank.name+' '+tmp or tmp,
|
||||
'sign': ref_acc_bank.sign,
|
||||
#'sign': ref_acc_bank.sign,
|
||||
'currency_id': line.currency_id and line.currency_id.id or False,
|
||||
'code': ref_acc_bank.code+str(current_num),
|
||||
'type': 'cash',
|
||||
'user_type': account_template.user_type or False,
|
||||
'reconcile': True,
|
||||
'parent_id': acc_template_ref[ref_acc_bank.id] or False,
|
||||
'company_id': company_id,
|
||||
|
|
|
@ -120,8 +120,8 @@
|
|||
<notebook colspan="4">
|
||||
<page string="General Information">
|
||||
<newline/>
|
||||
<field name="sign"/>
|
||||
|
||||
<!--<field name="sign"/>-->
|
||||
<field name="user_type" select="1"/>
|
||||
<field name="currency_id" select="2"/>
|
||||
<field name="reconcile"/>
|
||||
<newline/>
|
||||
|
@ -418,8 +418,8 @@
|
|||
<field name="type">tree</field>
|
||||
<field name="arch" type="xml">
|
||||
<tree string="Account Type">
|
||||
<field name="code"/>
|
||||
<field name="name"/>
|
||||
<field name="code"/>
|
||||
</tree>
|
||||
</field>
|
||||
</record>
|
||||
|
@ -432,6 +432,7 @@
|
|||
<field name="name" select="1"/>
|
||||
<field name="code" select="1"/>
|
||||
<field name="sequence"/>
|
||||
<field name="sign"/>
|
||||
<field name="close_method"/>
|
||||
<field name="partner_account"/>
|
||||
</form>
|
||||
|
@ -1482,9 +1483,10 @@
|
|||
<field name="code" select="1"/>
|
||||
<newline/>
|
||||
<field name="parent_id" select="1"/>
|
||||
<field name="type" select="1"/>
|
||||
<field name="shortcut"/>
|
||||
<field name="sign"/>
|
||||
<field name="type" select="1"/>
|
||||
<field name="user_type" select="1"/>
|
||||
|
||||
<field name="currency_id" select="2"/>
|
||||
<field name="reconcile"/>
|
||||
<field name="tax_ids" colspan="4"/>
|
||||
|
|
|
@ -5,68 +5,30 @@
|
|||
Account Type
|
||||
-->
|
||||
|
||||
<record id="account_type_receivable" model="account.account.type">
|
||||
<field name="name">Receivable</field>
|
||||
<field name="code">receivable</field>
|
||||
<field name="partner_account">True</field>
|
||||
<field name="close_method">balance</field>
|
||||
</record>
|
||||
<record id="account_type_payable" model="account.account.type">
|
||||
<field name="name">Payable</field>
|
||||
<field name="code">payable</field>
|
||||
<field name="partner_account">True</field>
|
||||
<field name="close_method">balance</field>
|
||||
</record>
|
||||
<record id="account_type_view" model="account.account.type">
|
||||
<field name="name">Total Account</field>
|
||||
<field name="code">view</field>
|
||||
<field name="close_method">none</field>
|
||||
</record>
|
||||
<!--<record id="account_type_root" model="account.account.type">
|
||||
<field name="name">Root</field>
|
||||
<field name="code">root</field>
|
||||
<field name="close_method">none</field>
|
||||
</record>-->
|
||||
<record id="account_type_consolidation" model="account.account.type">
|
||||
<field name="name">Consolidation</field>
|
||||
<field name="code">consolidation</field>
|
||||
<field name="close_method">none</field>
|
||||
</record>
|
||||
<record id="account_type_income" model="account.account.type">
|
||||
<field name="name">Income</field>
|
||||
<field name="code">income</field>
|
||||
<field name="close_method">unreconciled</field>
|
||||
</record>
|
||||
<record id="account_type_expense" model="account.account.type">
|
||||
<field name="name">Expense</field>
|
||||
<field name="code">expense</field>
|
||||
<field name="close_method">unreconciled</field>
|
||||
</record>
|
||||
|
||||
<record id="account_type_tax" model="account.account.type">
|
||||
<field name="name">Tax</field>
|
||||
<field name="code">tax</field>
|
||||
<field name="close_method">balance</field>
|
||||
</record>
|
||||
<record id="account_type_cash" model="account.account.type">
|
||||
<field name="name">Cash</field>
|
||||
<field name="code">cash</field>
|
||||
<field name="close_method">balance</field>
|
||||
</record>
|
||||
<record id="account_type_asset" model="account.account.type">
|
||||
<field name="name">Asset</field>
|
||||
<field name="code">asset</field>
|
||||
<field name="close_method">none</field>
|
||||
</record>
|
||||
<record id="account_type_liability" model="account.account.type">
|
||||
<field name="name">Liability</field> <!-- Equity? -->
|
||||
<field name="code">liability</field>
|
||||
<field name="close_method">unreconciled</field>
|
||||
</record>
|
||||
<record id="account_type_income" model="account.account.type">
|
||||
<field name="name">Income</field> <!-- Profit? -->
|
||||
<field name="code">income</field>
|
||||
<field name="close_method">balance</field>
|
||||
</record>
|
||||
<record id="account_type_equity" model="account.account.type">
|
||||
<field name="name">Equity</field>
|
||||
<field name="code">equity</field>
|
||||
<field name="close_method">none</field>
|
||||
<record id="account_type_expense" model="account.account.type">
|
||||
<field name="name">Expense</field> <!-- Loss? -->
|
||||
<field name="code">expense</field>
|
||||
<field name="close_method">unreconciled</field>
|
||||
</record>
|
||||
<record id="account_type_closed" model="account.account.type">
|
||||
<field name="name">Closed</field>
|
||||
<field name="code">closed</field>
|
||||
<field name="close_method">none</field>
|
||||
<record id="account_type_cash_moves" model="account.account.type">
|
||||
<field name="name">Cash Moves</field> <!-- usefull? -->
|
||||
<field name="code">cash</field>
|
||||
<field name="close_method">unreconciled</field>
|
||||
</record>
|
||||
</data>
|
||||
</terp>
|
||||
|
|
|
@ -19,6 +19,7 @@ your own accounts.
|
|||
<field name="name">Main Receivable</field>
|
||||
<field name="code">x 40000</field>
|
||||
<field name="type">receivable</field>
|
||||
<field name="user_type" ref="account.account_type_asset"/>
|
||||
<field eval="ref('minimal_0')" name="parent_id"/>
|
||||
<field name="company_id" ref="base.main_company"/>
|
||||
<field eval="True" name="reconcile"/>
|
||||
|
@ -33,6 +34,7 @@ your own chart of account.
|
|||
<field name="name">Main Payable</field>
|
||||
<field name="code">x 440000</field>
|
||||
<field name="type">payable</field>
|
||||
<field name="user_type" ref="account.account_type_liability"/>
|
||||
<field eval="ref('minimal_0')" name="parent_id"/>
|
||||
<field name="company_id" ref="base.main_company"/>
|
||||
<field eval="True" name="reconcile"/>
|
||||
|
@ -48,6 +50,7 @@ your own chart of account.
|
|||
<field name="name">Petty Cash</field>
|
||||
<field name="code">x 570000</field>
|
||||
<field name="type">cash</field>
|
||||
<field name="user_type" ref="account.account_type_cash_moves"/>
|
||||
<field eval="ref('minimal_0')" name="parent_id"/>
|
||||
<field name="company_id" ref="base.main_company"/>
|
||||
<field name="note">
|
||||
|
@ -62,6 +65,7 @@ your own chart of account.
|
|||
<field name="name">Products Purchase</field>
|
||||
<field name="code">x 600000</field>
|
||||
<field name="type">expense</field>
|
||||
<field name="user_type" ref="account.account_type_expense"/>
|
||||
<field eval="ref('minimal_0')" name="parent_id"/>
|
||||
<field name="company_id" ref="base.main_company"/>
|
||||
<field name="note">
|
||||
|
@ -75,6 +79,7 @@ your own chart of account.
|
|||
<field name="name">Products Sales</field>
|
||||
<field name="code">x 701000</field>
|
||||
<field name="type">income</field>
|
||||
<field name="user_type" ref="account.account_type_income"/>
|
||||
<field eval="ref('minimal_0')" name="parent_id"/>
|
||||
<field name="company_id" ref="base.main_company"/>
|
||||
<field name="note">
|
||||
|
|
|
@ -88,11 +88,11 @@ def _data_save(self, cr, uid, data, context):
|
|||
obj='account_move_line', context={'fiscalyear': fy_id})
|
||||
cr.execute('select id from account_account WHERE active')
|
||||
ids = map(lambda x: x[0], cr.fetchall())
|
||||
accnt_type_obj = pool.get('account.account.type')
|
||||
for account in pool.get('account.account').browse(cr, uid, ids,
|
||||
context={'fiscalyear': fy_id}):
|
||||
accnt_type_ids = accnt_type_obj.search(cr, uid, [('code','=',account.type)])
|
||||
accnt_type_data = accnt_type_obj.browse(cr, uid, accnt_type_ids[0])
|
||||
accnt_type_data = account.user_type
|
||||
if not accnt_type_data:
|
||||
continue
|
||||
if accnt_type_data.close_method=='none' or account.type == 'view':
|
||||
continue
|
||||
if accnt_type_data.close_method=='balance':
|
||||
|
|
Loading…
Reference in New Issue