From 6bd2bdf02b95ecf9d64941c83d51683c84528787 Mon Sep 17 00:00:00 2001 From: pedrambiria <pebr@odoo.com> Date: Fri, 3 Mar 2023 16:26:19 +0000 Subject: [PATCH] [FIX] base: add `commercial_company_name` to the depends MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Before this commit: if you add a custom one2many field to the 'res.partner', like x_related_commercial_partner_ids, that is related to the `commercial_partner_id` in the`res.partner` model, it won't update the display name of a contact in case of changing its parent_id name. Here are the steps to reproduce the problem: 1. Create a new custom field with these values: a. Field Type = one2many b. Model = Contact c. Related Model = res.partner d. Relation Field = commercial_partner_id 2. Create a new Contact that is the "Company" (e.g. "My Company") 3. Create a new Contact that is the "Individual" (e.g. "My Name"), and put the "My Company" as its parent_id. 4. Now the display_name is "My Company, My Name" which is correct 5. Change the company name to "My new Company" -> display_name won't change, and is "My Company, My Name" The solution is to add the 'commercial_company_name' to the `display_name` depends. opw-3202894 closes odoo/odoo#114344 Signed-off-by: Rémy Voet <ryv@odoo.com> --- odoo/addons/base/models/res_partner.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/odoo/addons/base/models/res_partner.py b/odoo/addons/base/models/res_partner.py index 9dc00948af87..101b15314dc3 100644 --- a/odoo/addons/base/models/res_partner.py +++ b/odoo/addons/base/models/res_partner.py @@ -238,7 +238,7 @@ class Partner(models.Model): ('check_name', "CHECK( (type='contact' AND name IS NOT NULL) or (type!='contact') )", 'Contacts require a name'), ] - @api.depends('is_company', 'name', 'parent_id.display_name', 'type', 'company_name') + @api.depends('is_company', 'name', 'parent_id.display_name', 'type', 'company_name', 'commercial_company_name') def _compute_display_name(self): diff = dict(show_address=None, show_address_only=None, show_email=None, html_format=None, show_vat=None) names = dict(self.with_context(**diff).name_get()) -- GitLab