Odoo is the world's easiest all-in-one management software. It includes hundreds of business apps:
CRM | e-Commerce | Accounting | Inventory | PoS | Project management | MRP | etc.
I want to override a Security Record Rule (model ir.rule) with a new domain. I have looked up the record id and model in External Identifiers and produced this data.xml-file:
<record id="base.res_partner_rule" model="ir.rule">
<field name="name">Multi-company res.partner</field>
<field name="model_id" ref="base.model_res_partner"/>
<field eval="True" name="global"/>
<field name="domain_force">['|','|',('company_id','=',False),('company_id','child_of',[user.company_id.id]),('company_id','in',[company.id for company in user.company_ids])]</field>
I dont get any erros when I install the module but the ir.rule-record does not get updated.
I have tried some attributes on data but with no luck.
This is probably because the default rule has been defined with <data noupdate="1">
Once this is done, you cannot update it or overwrite it or even set the noupdate property to 0.
You can instead navigate to Settings > Sequences & Identifiers > External Identifiers and search for res_partner_rule.
Open this record and uncheck the "Non Updatable" boolean. Try updating your custom module again.
It is still useless because of the manual work involved, you might as well create a record rule on the UI directly. But it can save you some time. Please let us know if you find a better way to do this.
About This Community
This platform is for beginners and experts willing to share their Odoo knowledge. It's not a forum to discuss ideas, but a knowledge base of questions and their answers.Register
Odoo Training Center
Access to our E-learning platform and experience all Odoo Apps through learning videos, exercises and Quizz.Test it now
|Asked: 11/13/14, 9:06 AM|
|Seen: 2245 times|
|Last updated: 10/3/15, 6:49 AM|