I have a big module based on mrp that adds product waste, ingredients list calculation, line costing evaluation, additional costs etc.
The module is installed and works fine.
A need arose though to split the module to smaller ones.
What is the correct way to split a module that is already installed?
I can rework and refactor and test the code to the development pc but how to I handle replacing the one big module with the 4 new smaller ones without losing existing data at the production machine?
I think that these steps should work. Test it first in the development environment
- Create the modules as empty, without models and views or anything else. Think that you will need to keep the already installed big one. Put as dependencies only installed modules if you will need them latter
- Install the empty modules
- Move the models and views for the corresponding new modules
- Restart the odoo server and update module list just to be safe
- Update the modules if you need too
- Check the logs in all the steps to ensure that nothing relevant is deleted
- Don't move records that could cause that changed data of those records could be restored to initial state. If you need to do it then update their module reference of those records directly on ir.model.data to get it not modified by updates of modules. These record normally are initial data load defined on the module xml to be inserted, like users, products or any other defined configuration to get the job ready to start
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
|Asked: 12/29/15, 3:07 AM|
|Seen: 409 times|
|Last updated: 8/27/16, 2:21 AM|