From 729ec5e4903c90f0a9f85a368f91d31f509a023f Mon Sep 17 00:00:00 2001 From: Luis Rodriguez Date: Mon, 15 Sep 2025 12:32:51 +0200 Subject: [PATCH 1/2] [OU-ADD] l10n_es_igic: Merged into l10n_es --- openupgrade_scripts/apriori.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/openupgrade_scripts/apriori.py b/openupgrade_scripts/apriori.py index 3d580948de1..ec983cf1623 100644 --- a/openupgrade_scripts/apriori.py +++ b/openupgrade_scripts/apriori.py @@ -80,6 +80,8 @@ "document_page_group": "document_page_access_group", # OCA/l10n-france "l10n_fr_pos_cert_update_draft_order_line": "l10n_fr_pos_cert", + # OCA/l10n-spain + "l10n_es_igic": "l10n_es", # OCA/sale-workflow "sale_order_qty_change_no_recompute": "sale", # OCA/server-brand From 36876d6da53d33a59de0524c1103562588a1a915 Mon Sep 17 00:00:00 2001 From: Luis Rodriguez Date: Wed, 15 Oct 2025 08:56:55 +0200 Subject: [PATCH 2/2] [OU-ADD] l10n_es_igic: migration script --- .../scripts/l10n_es/18.0.5.4/pre-migration.py | 298 ++++++++++++++++++ 1 file changed, 298 insertions(+) create mode 100644 openupgrade_scripts/scripts/l10n_es/18.0.5.4/pre-migration.py diff --git a/openupgrade_scripts/scripts/l10n_es/18.0.5.4/pre-migration.py b/openupgrade_scripts/scripts/l10n_es/18.0.5.4/pre-migration.py new file mode 100644 index 00000000000..02a5866e957 --- /dev/null +++ b/openupgrade_scripts/scripts/l10n_es/18.0.5.4/pre-migration.py @@ -0,0 +1,298 @@ +from openupgradelib import openupgrade, openupgrade_merge_records + +_account_to_merge = [ + (["account_assoc_canary_100"], "account_assoc_100"), + (["account_assoc_canary_1030"], "account_assoc_1030"), + (["account_assoc_canary_1034"], "account_assoc_1034"), + (["account_assoc_canary_1040"], "account_assoc_1040"), + (["account_assoc_canary_1044"], "account_assoc_1044"), + (["account_assoc_canary_120"], "account_assoc_120"), + (["account_assoc_canary_121"], "account_assoc_121"), + (["account_assoc_canary_129"], "account_assoc_129"), + (["account_assoc_canary_1300"], "account_assoc_1300"), + (["account_assoc_canary_1301"], "account_assoc_1301"), + (["account_assoc_canary_1320"], "account_assoc_1320"), + (["account_assoc_canary_1321"], "account_assoc_1321"), + (["account_assoc_canary_207"], "account_assoc_207"), + (["account_assoc_canary_2400"], "account_assoc_2400"), + (["account_assoc_canary_2401"], "account_assoc_2401"), + (["account_assoc_canary_2402"], "account_assoc_2402"), + (["account_assoc_canary_2403"], "account_assoc_2403"), + (["account_assoc_canary_2404"], "account_assoc_2404"), + (["account_assoc_canary_2490"], "account_assoc_2490"), + (["account_assoc_canary_2491"], "account_assoc_2491"), + (["account_assoc_canary_2492"], "account_assoc_2492"), + (["account_assoc_canary_2493"], "account_assoc_2493"), + (["account_assoc_canary_2494"], "account_assoc_2494"), + (["account_assoc_canary_2807"], "account_assoc_2807"), + (["account_assoc_canary_2830"], "account_assoc_2830"), + (["account_assoc_canary_2831"], "account_assoc_2831"), + (["account_assoc_canary_2907"], "account_assoc_2907"), + (["account_assoc_canary_2935"], "account_assoc_2935"), + (["account_assoc_canary_296"], "account_assoc_296"), + (["account_assoc_canary_2990"], "account_assoc_2990"), + (["account_assoc_canary_2991"], "account_assoc_2991"), + (["account_assoc_canary_2992"], "account_assoc_2992"), + (["account_assoc_canary_2993"], "account_assoc_2993"), + (["account_assoc_canary_2994"], "account_assoc_2994"), + (["account_assoc_canary_412"], "account_assoc_412"), + (["account_assoc_canary_447"], "account_assoc_447"), + (["account_assoc_canary_4480"], "account_assoc_4480"), + (["account_assoc_canary_4482"], "account_assoc_4482"), + (["account_assoc_canary_4489"], "account_assoc_4489"), + (["account_assoc_canary_464"], "account_assoc_464"), + (["account_assoc_canary_4707"], "account_assoc_4707"), + (["account_assoc_canary_4757"], "account_assoc_4757"), + (["account_assoc_canary_490"], "account_assoc_490"), + (["account_assoc_canary_551"], "account_assoc_551"), + (["account_assoc_canary_5935"], "account_assoc_5935"), + (["account_assoc_canary_596"], "account_assoc_596"), + (["account_assoc_canary_6501"], "account_assoc_6501"), + (["account_assoc_canary_6502"], "account_assoc_6502"), + (["account_assoc_canary_6503"], "account_assoc_6503"), + (["account_assoc_canary_6504"], "account_assoc_6504"), + (["account_assoc_canary_6510"], "account_assoc_6510"), + (["account_assoc_canary_6511"], "account_assoc_6511"), + (["account_assoc_canary_6512"], "account_assoc_6512"), + (["account_assoc_canary_6513"], "account_assoc_6513"), + (["account_assoc_canary_6514"], "account_assoc_6514"), + (["account_assoc_canary_653"], "account_assoc_653"), + (["account_assoc_canary_654"], "account_assoc_654"), + (["account_assoc_canary_655"], "account_assoc_655"), + (["account_assoc_canary_6560"], "account_assoc_6560"), + (["account_assoc_canary_6561"], "account_assoc_6561"), + (["account_assoc_canary_658"], "account_assoc_658"), + (["account_assoc_canary_663"], "account_assoc_663"), + (["account_assoc_canary_6710"], "account_assoc_6710"), + (["account_assoc_canary_6711"], "account_assoc_6711"), + (["account_assoc_canary_6910"], "account_assoc_6910"), + (["account_assoc_canary_6911"], "account_assoc_6911"), + (["account_assoc_canary_694"], "account_assoc_694"), + (["account_assoc_canary_720"], "account_assoc_720"), + (["account_assoc_canary_721"], "account_assoc_721"), + (["account_assoc_canary_722"], "account_assoc_722"), + (["account_assoc_canary_7230"], "account_assoc_7230"), + (["account_assoc_canary_7231"], "account_assoc_7231"), + (["account_assoc_canary_7233"], "account_assoc_7233"), + (["account_assoc_canary_728"], "account_assoc_728"), + (["account_assoc_canary_763"], "account_assoc_763"), + (["account_assoc_canary_791"], "account_assoc_791"), + (["account_assoc_canary_794"], "account_assoc_794"), + (["account_assoc_canary_7962"], "account_assoc_7962"), + (["account_assoc_canary_7963"], "account_assoc_7963"), + (["account_common_canary_112"], "account_common_112"), + (["account_common_canary_113"], "account_common_113"), + (["account_full_canary_100"], "account_full_100"), + (["account_full_canary_1030"], "account_full_1030"), + (["account_full_canary_1034"], "account_full_1034"), + (["account_full_canary_1040"], "account_full_1040"), + (["account_full_canary_1044"], "account_full_1044"), + (["account_full_canary_1110"], "account_full_1110"), + (["account_full_canary_1111"], "account_full_1111"), + (["account_full_canary_1143"], "account_full_1143"), + (["account_full_canary_115"], "account_full_115"), + (["account_full_canary_120"], "account_full_120"), + (["account_full_canary_121"], "account_full_121"), + (["account_full_canary_129"], "account_full_129"), + (["account_full_canary_130"], "account_full_130"), + (["account_full_canary_132"], "account_full_132"), + (["account_full_canary_133"], "account_full_133"), + (["account_full_canary_1340"], "account_full_1340"), + (["account_full_canary_1341"], "account_full_1341"), + (["account_full_canary_135"], "account_full_135"), + (["account_full_canary_136"], "account_full_136"), + (["account_full_canary_140"], "account_full_140"), + (["account_full_canary_146"], "account_full_146"), + (["account_full_canary_147"], "account_full_147"), + (["account_full_canary_1765"], "account_full_1765"), + (["account_full_canary_1768"], "account_full_1768"), + (["account_full_canary_178"], "account_full_178"), + (["account_full_canary_189"], "account_full_189"), + (["account_full_canary_204"], "account_full_204"), + (["account_full_canary_2403"], "account_full_2403"), + (["account_full_canary_2404"], "account_full_2404"), + (["account_full_canary_2405"], "account_full_2405"), + (["account_full_canary_2493"], "account_full_2493"), + (["account_full_canary_2494"], "account_full_2494"), + (["account_full_canary_2495"], "account_full_2495"), + (["account_full_canary_2550"], "account_full_2550"), + (["account_full_canary_2553"], "account_full_2553"), + (["account_full_canary_257"], "account_full_257"), + (["account_full_canary_466"], "account_full_466"), + (["account_full_canary_490"], "account_full_490"), + (["account_full_canary_501"], "account_full_501"), + (["account_full_canary_5091"], "account_full_5091"), + (["account_full_canary_5296"], "account_full_5296"), + (["account_full_canary_5297"], "account_full_5297"), + (["account_full_canary_551"], "account_full_551"), + (["account_full_canary_5530"], "account_full_5530"), + (["account_full_canary_5531"], "account_full_5531"), + (["account_full_canary_5532"], "account_full_5532"), + (["account_full_canary_5533"], "account_full_5533"), + (["account_full_canary_5593"], "account_full_5593"), + (["account_full_canary_5598"], "account_full_5598"), + (["account_full_canary_569"], "account_full_569"), + (["account_full_canary_580"], "account_full_580"), + (["account_full_canary_581"], "account_full_581"), + (["account_full_canary_582"], "account_full_582"), + (["account_full_canary_583"], "account_full_583"), + (["account_full_canary_584"], "account_full_584"), + (["account_full_canary_585"], "account_full_585"), + (["account_full_canary_586"], "account_full_586"), + (["account_full_canary_587"], "account_full_587"), + (["account_full_canary_588"], "account_full_588"), + (["account_full_canary_589"], "account_full_589"), + (["account_full_canary_5990"], "account_full_5990"), + (["account_full_canary_5991"], "account_full_5991"), + (["account_full_canary_5992"], "account_full_5992"), + (["account_full_canary_5993"], "account_full_5993"), + (["account_full_canary_5994"], "account_full_5994"), + (["account_full_canary_643"], "account_full_643"), + (["account_full_canary_6440"], "account_full_6440"), + (["account_full_canary_6442"], "account_full_6442"), + (["account_full_canary_6450"], "account_full_6450"), + (["account_full_canary_6457"], "account_full_6457"), + (["account_full_canary_650"], "account_full_650"), + (["account_full_canary_6510"], "account_full_6510"), + (["account_full_canary_6511"], "account_full_6511"), + (["account_full_canary_659"], "account_full_659"), + (["account_full_canary_6630"], "account_full_6630"), + (["account_full_canary_6631"], "account_full_6631"), + (["account_full_canary_6632"], "account_full_6632"), + (["account_full_canary_6633"], "account_full_6633"), + (["account_full_canary_671"], "account_full_671"), + (["account_full_canary_691"], "account_full_691"), + (["account_full_canary_694"], "account_full_694"), + (["account_full_canary_7630"], "account_full_7630"), + (["account_full_canary_7631"], "account_full_7631"), + (["account_full_canary_7632"], "account_full_7632"), + (["account_full_canary_7633"], "account_full_7633"), + (["account_full_canary_767"], "account_full_767"), + (["account_full_canary_774"], "account_full_774"), + (["account_full_canary_791"], "account_full_791"), + (["account_full_canary_794"], "account_full_794"), + (["account_full_canary_7950"], "account_full_7950"), + (["account_full_canary_7956"], "account_full_7956"), + (["account_full_canary_7957"], "account_full_7957"), + (["account_full_canary_800"], "account_full_800"), + (["account_full_canary_802"], "account_full_802"), + (["account_full_canary_810"], "account_full_810"), + (["account_full_canary_811"], "account_full_811"), + (["account_full_canary_812"], "account_full_812"), + (["account_full_canary_813"], "account_full_813"), + (["account_full_canary_820"], "account_full_820"), + (["account_full_canary_821"], "account_full_821"), + (["account_full_canary_8300"], "account_full_8300"), + (["account_full_canary_8301"], "account_full_8301"), + (["account_full_canary_833"], "account_full_833"), + (["account_full_canary_834"], "account_full_834"), + (["account_full_canary_835"], "account_full_835"), + (["account_full_canary_836"], "account_full_836"), + (["account_full_canary_837"], "account_full_837"), + (["account_full_canary_838"], "account_full_838"), + (["account_full_canary_840"], "account_full_840"), + (["account_full_canary_841"], "account_full_841"), + (["account_full_canary_842"], "account_full_842"), + (["account_full_canary_850"], "account_full_850"), + (["account_full_canary_851"], "account_full_851"), + (["account_full_canary_860"], "account_full_860"), + (["account_full_canary_862"], "account_full_862"), + (["account_full_canary_891"], "account_full_891"), + (["account_full_canary_892"], "account_full_892"), + (["account_full_canary_900"], "account_full_900"), + (["account_full_canary_902"], "account_full_902"), + (["account_full_canary_910"], "account_full_910"), + (["account_full_canary_911"], "account_full_911"), + (["account_full_canary_912"], "account_full_912"), + (["account_full_canary_913"], "account_full_913"), + (["account_full_canary_920"], "account_full_920"), + (["account_full_canary_921"], "account_full_921"), + (["account_full_canary_940"], "account_full_940"), + (["account_full_canary_941"], "account_full_941"), + (["account_full_canary_942"], "account_full_942"), + (["account_full_canary_950"], "account_full_950"), + (["account_full_canary_951"], "account_full_951"), + (["account_full_canary_960"], "account_full_960"), + (["account_full_canary_962"], "account_full_962"), + (["account_full_canary_991"], "account_full_991"), + (["account_full_canary_992"], "account_full_992"), + (["account_full_canary_993"], "account_full_993"), + (["account_full_canary_994"], "account_full_994"), + (["account_pymes_canary_100"], "account_pymes_100"), + (["account_pymes_canary_1030"], "account_pymes_1030"), + (["account_pymes_canary_1034"], "account_pymes_1034"), + (["account_pymes_canary_1040"], "account_pymes_1040"), + (["account_pymes_canary_1044"], "account_pymes_1044"), + (["account_pymes_canary_120"], "account_pymes_120"), + (["account_pymes_canary_121"], "account_pymes_121"), + (["account_pymes_canary_129"], "account_pymes_129"), + (["account_pymes_canary_130"], "account_pymes_130"), + (["account_pymes_canary_132"], "account_pymes_132"), + (["account_pymes_canary_2403"], "account_pymes_2403"), + (["account_pymes_canary_2404"], "account_pymes_2404"), + (["account_pymes_canary_2405"], "account_pymes_2405"), + (["account_pymes_canary_2493"], "account_pymes_2493"), + (["account_pymes_canary_2494"], "account_pymes_2494"), + (["account_pymes_canary_2495"], "account_pymes_2495"), + (["account_pymes_canary_255"], "account_pymes_255"), + (["account_pymes_canary_2935"], "account_pymes_2935"), + (["account_pymes_canary_296"], "account_pymes_296"), + (["account_pymes_canary_490"], "pgc_pyme_490"), + (["account_pymes_canary_551"], "pgc_pyme_551"), + (["account_pymes_canary_5935"], "account_pymes_5935"), + (["account_pymes_canary_596"], "account_pymes_596"), + (["account_pymes_canary_650"], "account_pymes_650"), + (["account_pymes_canary_6510"], "account_pymes_6510"), + (["account_pymes_canary_6511"], "account_pymes_6511"), + (["account_pymes_canary_659"], "account_pymes_659"), + (["account_pymes_canary_663"], "account_pymes_663"), + (["account_pymes_canary_671"], "account_pymes_671"), + (["account_pymes_canary_691"], "account_pymes_691"), + (["account_pymes_canary_694"], "account_pymes_694"), + (["account_pymes_canary_763"], "account_pymes_763"), + (["account_pymes_canary_791"], "account_pymes_791"), + (["account_pymes_canary_794"], "account_pymes_794"), + (["account_pymes_canary_7962"], "account_pymes_7962"), + (["account_pymes_canary_7963"], "account_pymes_7963"), +] + +_xml_ids_renames = [ + ("fp_canary", "fp_canary_1"), +] + + +def rename_fiscal_position_xmlids(env, company): + _xml_ids_renames_company = [ + ( + f"account.{company.id}_{xml_ids[0]}", + f"account.{company.id}_{xml_ids[1]}", + ) + for xml_ids in _xml_ids_renames + ] + + openupgrade.rename_xmlids(env.cr, _xml_ids_renames_company) + + +def merge_accounts(env, company): + for accounts in _account_to_merge: + account_to_merge = env["account.account"] + for account in accounts[0]: + account_id = env.ref(f"account.{company.id}_{account}", False) + if account_id: + account_to_merge |= account_id + account_to_merge_into = env.ref(f"account.{company.id}_{accounts[1]}", False) + if len(account_to_merge) > 0 and account_to_merge_into: + openupgrade_merge_records.merge_records( + env, + "account.account", + account_to_merge.ids, + account_to_merge_into.id, + method="sql", + ) + + +@openupgrade.migrate() +def migrate(env, version): + for company in env["res.company"].search([]): + rename_fiscal_position_xmlids(env, company) + merge_accounts(env, company)