[IMP] stock: create warehouse on existing companies

If companies are created before the installation of module stock, the
warehouses of those companes won't be created when stock module is
installed.

So we've created a post init hook to create the warehouses for the
existing companies.

TASK-ID: 58645
This commit is contained in:
Pierre Masereel
2018-08-30 15:32:42 +02:00
parent 8b355457c4
commit cc62784924
2 changed files with 18 additions and 0 deletions
+17
View File
@@ -17,3 +17,20 @@ def pre_init_hook(cr):
('model', 'like', '%stock%'),
('module', '=', 'stock')
]).unlink()
def _create_warehouse(cr, registry):
""" This hook is used to add a warehouse on existing companies
when module stock is installed.
"""
env = api.Environment(cr, SUPERUSER_ID, {})
company_ids = env['res.company'].search([])
company_with_warehouse = env['stock.warehouse'].search([]).mapped('company_id')
company_without_warehouse = company_ids - company_with_warehouse
for company in company_without_warehouse:
company.create_transit_location()
env['stock.warehouse'].create({
'name': company.name,
'code': company.name[:5],
'company_id': company.id,
'partner_id': company.partner_id.id
})
+1
View File
@@ -78,4 +78,5 @@
'application': True,
'auto_install': False,
'pre_init_hook': 'pre_init_hook',
'post_init_hook': '_create_warehouse',
}