diff --git a/odoo/addons/base/res/res_partner.py b/odoo/addons/base/res/res_partner.py index 85e8d719ac8..8e91a0b3ebd 100644 --- a/odoo/addons/base/res/res_partner.py +++ b/odoo/addons/base/res/res_partner.py @@ -201,7 +201,7 @@ class Partner(models.Model, FormatAddress): # company_type is only an interface field, do not use it in business logic company_type = fields.Selection(string='Company Type', selection=[('person', 'Individual'), ('company', 'Company')], - compute='_compute_company_type', readonly=False) + compute='_compute_company_type', inverse='_write_company_type') company_id = fields.Many2one('res.company', 'Company', index=True, default=_default_company) color = fields.Integer(string='Color Index', default=0) user_ids = fields.One2many('res.users', 'partner_id', string='Users', auto_join=True) @@ -372,6 +372,10 @@ class Partner(models.Model, FormatAddress): for partner in self: partner.company_type = 'company' if partner.is_company else 'person' + def _write_company_type(self): + for partner in self: + partner.is_company = partner.company_type == 'company' + @api.onchange('company_type') def onchange_company_type(self): self.is_company = (self.company_type == 'company')