Before this commit:
* Install `sale_management`, `crm`
* Uninstall `crm`
* Go to sales -> sales channels
* Boom! The view is broken
This happens because both CRM and Sales share the sales teams view, yet
CRM's override of the model adds a selection_add to the
dashboard_graph_model selection field, when it is uninstalled, records
whose dashboard_graph_model field are set to one of the values
introduced by CRM keep this no-longer-valid value and upon accessing the
view it crashes.
This is a known limitation of selection fields and the selection_add
feature.
To solve this, an uninstallation hook has been created for CRM which
will fetch all records whose dashboard_graph_model is set to
`crm.opportunity.report`, and update the field of all these records to
None (NULL).
Fixes #25363
16 lines
454 B
Python
16 lines
454 B
Python
# -*- coding: utf-8 -*-
|
|
# Part of Odoo. See LICENSE file for full copyright and licensing details.
|
|
|
|
from . import controllers
|
|
from . import models
|
|
from . import report
|
|
from . import wizard
|
|
|
|
from odoo import api, SUPERUSER_ID
|
|
|
|
|
|
def uninstall_hook(cr, registry):
|
|
env = api.Environment(cr, SUPERUSER_ID, {})
|
|
teams = env['crm.team'].search([('dashboard_graph_model', '=', 'crm.opportunity.report')])
|
|
teams.update({'dashboard_graph_model': None})
|