# Copyright 2026 Ecocentral, Criptomart # License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html). """Renombrar l'xml_id de la vista heretada del formulari de contacte. A la 17.0 la vista es deia `l10n_es_partner_ccpae.view_partner_form`, un nom que xoca visualment amb `base.view_partner_form` i que no segueix la convenció del repo (`_view_form_`). A la 18.0 passa a dir-se `res_partner_view_form_ccpae`. Sense aquest script l'actualització continuaria funcionant —Odoo crearia una vista nova i esborraria l'antiga a `_process_end`— però pel mig hi hauria dues vistes heretades equivalents injectant la mateixa pàgina al formulari, i es perdrien les personalitzacions que algú hagués fet sobre el registre existent. Renombrant a `ir_model_data` es reaprofita la mateixa `ir.ui.view`. """ import logging _logger = logging.getLogger(__name__) RENAMED_XMLIDS = [ # (model, nom antic, nom nou) ("ir.ui.view", "view_partner_form", "res_partner_view_form_ccpae"), ] def migrate(cr, version): if not version: return for model, old_name, new_name in RENAMED_XMLIDS: cr.execute( """ UPDATE ir_model_data SET name = %s WHERE module = 'l10n_es_partner_ccpae' AND name = %s AND model = %s AND NOT EXISTS ( SELECT 1 FROM ir_model_data WHERE module = 'l10n_es_partner_ccpae' AND name = %s ) """, (new_name, old_name, model, new_name), ) if cr.rowcount: _logger.info( "l10n_es_partner_ccpae: xml_id %s renombrat a %s", old_name, new_name )