[IMP] account template loading speedup 1min on runbot
check parent_id type constraint before create/write remove parent_id eval 0 bzr revid: al@openerp.com-20120912005721-ofpgkaorlm4zrwgy
This commit is contained in:
parent
eff0bbad02
commit
b4441a1ca4
|
@ -2516,22 +2516,25 @@ class account_account_template(osv.osv):
|
|||
'nocreate': False,
|
||||
}
|
||||
|
||||
def _check_type(self, cr, uid, ids, context=None):
|
||||
if context is None:
|
||||
context = {}
|
||||
accounts = self.browse(cr, uid, ids, context=context)
|
||||
for account in accounts:
|
||||
if account.parent_id and account.parent_id.type != 'view':
|
||||
return False
|
||||
return True
|
||||
|
||||
_check_recursion = check_cycle
|
||||
_constraints = [
|
||||
(_check_recursion, 'Error!\nYou cannot create recursive account templates.', ['parent_id']),
|
||||
(_check_type, 'Configuration Error!\nYou cannot define children to an account that has internal type other than "View".', ['type']),
|
||||
|
||||
]
|
||||
|
||||
def create(self, cr, uid, vals, context=None):
|
||||
if 'parent_id' in vals:
|
||||
parent = self.read(cr, uid, [vals['parent_id']], ['type'])
|
||||
if parent and parent[0]['type'] != 'view':
|
||||
raise osv.except_osv(_('Warning!'), _("You may only select a parent account of type 'View'."))
|
||||
return super(account_account_template, self).create(cr, uid, vals, context=context)
|
||||
|
||||
def write(self, cr, uid, ids, vals, context=None):
|
||||
if 'parent_id' in vals:
|
||||
parent = self.read(cr, uid, [vals['parent_id']], ['type'])
|
||||
if parent and parent[0]['type'] != 'view':
|
||||
raise osv.except_osv(_('Warning!'), _("You may only select a parent account of type 'View'."))
|
||||
return super(account_account_template, self).write(cr, uid, ids, vals, context=context)
|
||||
|
||||
def name_get(self, cr, uid, ids, context=None):
|
||||
if not ids:
|
||||
return []
|
||||
|
|
|
@ -45,7 +45,6 @@
|
|||
<record id="conf_chart0" model="account.account.template">
|
||||
<field name="code">0</field>
|
||||
<field name="name">Configurable Account Chart</field>
|
||||
<field eval="0" name="parent_id"/>
|
||||
<field name="type">view</field>
|
||||
<field name="user_type" ref="data_account_type_view"/>
|
||||
</record>
|
||||
|
|
|
@ -19,7 +19,6 @@
|
|||
<record id="chart0" model="account.account">
|
||||
<field name="code">X0</field>
|
||||
<field name="name">Chart For Automated Tests</field>
|
||||
<field eval="0" name="parent_id"/>
|
||||
<field name="type">view</field>
|
||||
<field name="user_type" ref="data_account_type_view"/>
|
||||
</record>
|
||||
|
|
|
@ -6,7 +6,6 @@
|
|||
<record id="chart0_en" model="account.account.template">
|
||||
<field name="code">0</field>
|
||||
<field name="name">Account Chart CA EN</field>
|
||||
<field eval="0" name="parent_id"/>
|
||||
<field name="type">view</field>
|
||||
<field name="user_type" ref="account.data_account_type_view"/>
|
||||
</record>
|
||||
|
|
|
@ -7,7 +7,6 @@
|
|||
<record id="chartgr_0" model="account.account.template">
|
||||
<field name="code">0</field>
|
||||
<field name="name">Γενικό Λογιστικό Σχέδιο</field>
|
||||
<!--<field eval="0" name="parent_id"/> -->
|
||||
<field name="type">view</field>
|
||||
<field name="user_type" ref="account_type_view"/>
|
||||
</record>
|
||||
|
|
|
@ -7,7 +7,6 @@
|
|||
<record id="plan_raiz" model="account.account.template">
|
||||
<field name="code">-</field>
|
||||
<field name="name">Plan contable de Guatemala (sencillo)</field>
|
||||
<field eval="0" name="parent_id"/>
|
||||
<field name="type">view</field>
|
||||
<field name="user_type" ref="cuenta_vista"/>
|
||||
</record>
|
||||
|
|
|
@ -7,7 +7,6 @@
|
|||
<record id="plan_raiz" model="account.account.template">
|
||||
<field name="code">-</field>
|
||||
<field name="name">Plan contable de Honduras (sencillo)</field>
|
||||
<field eval="0" name="parent_id"/>
|
||||
<field name="type">view</field>
|
||||
<field name="user_type" ref="cuenta_vista"/>
|
||||
</record>
|
||||
|
|
|
@ -8,7 +8,6 @@
|
|||
<field name="name">Partnership/Private Firm Chart of Account</field>
|
||||
<field name="code">0</field>
|
||||
<field name="type">view</field>
|
||||
<field eval="0" name="parent_id"/>
|
||||
<field name="user_type" ref="account.data_account_type_view"/>
|
||||
<field name="reconcile" eval="False"/>
|
||||
</record>
|
||||
|
@ -520,4 +519,4 @@
|
|||
|
||||
|
||||
</data>
|
||||
</openerp>
|
||||
</openerp>
|
||||
|
|
|
@ -9,7 +9,6 @@
|
|||
<field name="name">Public Firm Chart of Account</field>
|
||||
<field name="code">0</field>
|
||||
<field name="type">view</field>
|
||||
<field eval="0" name="parent_id"/>
|
||||
<field name="user_type" ref="account.data_account_type_view"/>
|
||||
<field name="reconcile" eval="False"/>
|
||||
</record>
|
||||
|
@ -673,4 +672,4 @@
|
|||
</record>
|
||||
|
||||
</data>
|
||||
</openerp>
|
||||
</openerp>
|
||||
|
|
|
@ -26,7 +26,6 @@
|
|||
<record id="a_root" model="account.account.template">
|
||||
<field name="code">0</field>
|
||||
<field name="name">Simple chart of accounts</field>
|
||||
<field name="parent_id" eval="False"/>
|
||||
<field name="type">view</field>
|
||||
<field name="user_type" ref="acc_type_view"/>
|
||||
</record>
|
||||
|
|
|
@ -4,7 +4,6 @@
|
|||
<record id="uy_code_0" model="account.account.template">
|
||||
<field name="code">0</field>
|
||||
<field name="type">view</field>
|
||||
<field name="parent_id" eval="False"/>
|
||||
<field name="name">Uruguay - Plan de Cuentas</field>
|
||||
<field name="user_type" ref="type_view"/>
|
||||
</record>
|
||||
|
|
Loading…
Reference in New Issue