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 have two modules.
Both inheriting sale module.
Both have same field demo in py and xml.
Both having same on_change method in it with same parameter.
Question is if both modules are installed which module on_change will trigger.
How Odoo/Openerp Modules will take preference?? By module name or Installation time or any other factor??
if you are asking for debug purposes.. probably the last installed will be triggered..
but that is bad practice and confusing code.. try to avoid it.. because if you install both modules you will probably get fields in your views shown twice wich is very bad... OE does not handle well if same field is shown twice on one view...
if you have two modules using(and needing) the same attribute probably the best solution is to make third module which will contain that attribute (also methods and views for it) and the two original modules can depend on new one.. so you will avoid double adding fields..
It depends on your your type of inheritance for your custom modules.
If both modules use class inheritance ( _inherit = 'parent.model', _name = 'parent.model'), the both fields will be exactly the same.
if you use prototype inheritance ( _inherit = 'parent.model', _name = 'new.name'), the database will contain different tables for your new custom modules. This will result in no conflict, since the fields (although they have the same name) are part of different database tables.
I'm not sure, which on_change method will be used in your case. Maybe the last installed module will determine it. Maybe the sequence/order of the views will play a role.
You should think about your design and maybe try to change the inheritance.
Why not using one custom module instead of two?
Or let module A inherit from Sales and module B from module A?
Please try to give a substantial answer. If you wanted to comment on the question or answer, just use the commenting tool. Please remember that you can always revise your answers - no need to answer the same question twice. Also, please don't forget to vote - it really helps to select the best questions and answers!
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: 7/2/14, 1:42 AM|
|Seen: 1074 times|
|Last updated: 6/4/15, 5:59 AM|