diff --git a/addons/account/models/chart_template.py b/addons/account/models/chart_template.py index bc1f2edcac6..973e12dd3d4 100644 --- a/addons/account/models/chart_template.py +++ b/addons/account/models/chart_template.py @@ -244,17 +244,20 @@ class AccountChartTemplate(models.AbstractModel): del data['account.journal'][xmlid] else: journal = None + lang = self._get_untranslatable_fields_target_language(company.chart_template, company) + translated_code = self._get_field_translation(journal_data, 'code', lang) if 'code' in journal_data: journal = self.env['account.journal'].with_context(active_test=False).search([ *self.env['account.journal']._check_company_domain(company), - ('code', '=', journal_data['code']), + ('code', 'in', (journal_data['code'], translated_code)), ]) # Try to match by journal name to avoid conflict in the unique constraint on the mail alias + translated_name = self._get_field_translation(journal_data, 'name', lang) if not journal and 'name' in journal_data and 'type' in journal_data: journal = self.env['account.journal'].with_context(active_test=False).search([ *self.env['account.journal']._check_company_domain(company), ('type', '=', journal_data['type']), - ('name', '=', journal_data['name']), + ('name', 'in', (journal_data['name'], translated_name)), ], limit=1) if journal: del data['account.journal'][xmlid]