From 9a9a2b1336b1b164d938a787bde020ed63758ed4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nguy=E1=BB=85n=20=C4=90=E1=BA=A1i=20D=C6=B0=C6=A1ng?= Date: Fri, 7 Jun 2024 12:00:21 +0700 Subject: [PATCH] [FIX] account: set company for tax_group (#658) * [FIX] account: set company for tax_group -Forget to set company_id for tax_group [FIX] l10n_vn: wrong value for pre-fix company_id of xml_id - if just select id from res_company then env.cr.fetchall() will return like [(1, ), (2, )] * Update pre-migration.py * Update pre-migration.py * Update openupgrade_scripts/scripts/account/17.0.1.2/pre-migration.py --------- Co-authored-by: Roy Le <43790414+royle-viindoo@users.noreply.github.com> --- .../scripts/account/17.0.1.2/pre-migration.py | 17 +++++++++++++---- .../scripts/l10n_vn/17.0.2.0.3/pre-migration.py | 4 +++- 2 files changed, 16 insertions(+), 5 deletions(-) diff --git a/openupgrade_scripts/scripts/account/17.0.1.2/pre-migration.py b/openupgrade_scripts/scripts/account/17.0.1.2/pre-migration.py index c973f40b6ff6..9b5c8888939e 100644 --- a/openupgrade_scripts/scripts/account/17.0.1.2/pre-migration.py +++ b/openupgrade_scripts/scripts/account/17.0.1.2/pre-migration.py @@ -494,11 +494,20 @@ def _account_tax_migration(env): ) for tax_group_id, company_ids in env.cr.fetchall(): - first_company_id = company_ids[:1] - + first_company_id = company_ids[:1] and company_ids[0] + + openupgrade.logged_query( + env.cr, + f""" + UPDATE account_tax_group + SET company_id = {first_company_id} + WHERE id = {tax_group_id} + """, + ) imd = env["ir.model.data"].search( [("res_id", "=", tax_group_id), ("model", "=", "account.tax.group")] ) + tax_group_name = imd.name imd.write({"name": f"{first_company_id}_{imd.name}"}) for company_id in company_ids[1:]: @@ -513,8 +522,8 @@ def _account_tax_migration(env): ) new_tax_group_id = env.cr.fetchone()[0] - vals = {"res_id": new_tax_group_id, "name": f"{company_id}_{imd.name}"} - imd.copy(default=vals) + new_imp = imd.copy(default={"res_id": new_tax_group_id}) + new_imp.write({"name": f"{company_id}_{tax_group_name}"}) openupgrade.logged_query( env.cr, diff --git a/openupgrade_scripts/scripts/l10n_vn/17.0.2.0.3/pre-migration.py b/openupgrade_scripts/scripts/l10n_vn/17.0.2.0.3/pre-migration.py index 4fa98e660966..fe52f1312969 100644 --- a/openupgrade_scripts/scripts/l10n_vn/17.0.2.0.3/pre-migration.py +++ b/openupgrade_scripts/scripts/l10n_vn/17.0.2.0.3/pre-migration.py @@ -24,7 +24,9 @@ def _vn_coa_rename_xml_id(env): we need to rename some xml_id like tax or tax.group in order to avoid duplication """ - env.cr.execute("""SELECT id FROM res_company WHERE chart_template = 'vn'""") + env.cr.execute( + """SELECT array_agg(id) FROM res_company WHERE chart_template = 'vn'""" + ) xmlids_renames = [] for company_id in env.cr.fetchall(): for tax_group_xmlid in _account_tax_group_xmlid: