2.6 KiB
2.6 KiB
Migration vers Odoo 18.0 - bemade_partner_root_ancestor
Description
Module technique qui ajoute le champ root_ancestor à res.partner pour identifier l'ancêtre racine d'un partenaire dans la hiérarchie.
Analyse Technique
Fonctionnalités Actuelles
-
Champ Root Ancestor
- Type: Many2one vers res.partner
- Calculé et stocké
- Récursif pour la hiérarchie complète
-
Modèles Modifiés
res.partner: Ajout du champ et logique- Utilisation de la récursivité native d'Odoo
-
Logique de Calcul
- Dépend de parent_id
- Calcul récursif via parent_id.root_ancestor
- Stockage pour optimisation
Changements dans Odoo 18.0
-
Architecture Base
- Le modèle res.partner reste stable
- La récursivité est toujours supportée
- Les champs calculés fonctionnent de la même manière
-
Modifications Nécessaires
- Vérifier la compatibilité avec les nouveaux champs calculés
- Valider le comportement récursif
- Optimiser le stockage si nécessaire
Plan de Migration
Phase 1 : Analyse et Préparation
-
Révision du Code
- Vérifier les changements dans res.partner
- Tester la récursivité
- Identifier les potentiels conflits
-
Tests
- Créer des cas de test avec hiérarchies complexes
- Documenter le comportement attendu
- Préparer des données de test
Phase 2 : Migration
-
Mise à Jour du Code
- Adapter les dépendances si nécessaire
- Optimiser le calcul récursif
- Vérifier les index de base de données
-
Tests et Validation
- Tester avec différentes hiérarchies
- Vérifier la performance
- Valider le stockage
État de la Migration
En cours d'analyse - Migration simple requise
Notes Importantes
- La fonctionnalité reste pertinente dans Odoo 18.0
- Module technique sans interface utilisateur
- La logique de base reste la même
- Attention à la performance
Prochaines Étapes
- Valider l'approche avec l'équipe
- Vérifier les optimisations possibles
- Mettre à jour les tests
- Tester avec de grandes hiérarchies
Notes de Version
- Version originale: 17.0.1.0.0
- Dernière analyse: 26/01/2025
Points d'Attention Particuliers
-
Performance
- Optimisation du calcul récursif
- Gestion du cache
- Index de base de données
-
Fiabilité
- Gestion des boucles infinies
- Traitement des erreurs
- Validation des données
-
Maintenance
- Documentation du comportement récursif
- Gestion des cas spéciaux
- Logs pour le débogage