bemade-addons/bemade_fsm/migration18.md
2025-05-29 21:35:47 -04:00

14 KiB

Improved Field Service Management - Migration vers Odoo 18.0

Description

Ce module étend les fonctionnalités de gestion des services sur site (Field Service Management) avec des fonctionnalités spécifiques à Durpro.

Fonctionnalités Ajoutées

Gestion améliorée des services sur site

  • Existe dans Odoo 18.0 ? : Partiellement
  • Différences avec la version native :
    • Gestion avancée des équipements et des contacts
    • Système de modèles de tâches personnalisé
    • Intégration approfondie avec les commandes de vente
    • Gestion des visites FSM
    • Propagation des affectations et des contacts
  • Alternatives :
    • Utiliser le module FSM standard d'Odoo
    • Implémenter des fonctionnalités spécifiques via des modules personnalisés

Modèles et Champs Modifiés

Modèles impactés

  • project.task :

    • Champs ajoutés :
      • work_order_contacts : Contacts liés au bon de travail
      • site_contacts : Contacts sur site
      • visit_id : Lien vers la visite FSM
      • relevant_order_lines : Lignes de commande pertinentes
      • work_order_number : Numéro de bon de travail
      • propagate_assignment : Propagation des affectations
      • is_closed : Indicateur de tâche fermée
      • root_ancestor : Tâche racine de la hiérarchie
    • Méthodes modifiées :
      • create() : Gestion des contacts et numéros de bon de travail
      • write() : Propagation des modifications aux sous-tâches
      • _compute_allow_billable() : Calcul de la facturabilité
      • _fsm_create_sale_order_line() : Création de lignes de commande
      • action_fsm_validate() : Validation des tâches FSM
      • synchronize_name_fsm() : Synchronisation des noms des tâches
    • Recommandations de migration :
      • Vérifier la compatibilité avec le nouveau système de tâches Odoo 18
      • Tester la propagation des modifications
      • Adapter les calculs de facturabilité
      • Vérifier la gestion des noms des tâches
  • task.template :

    • Nouveau modèle : project.task.template
    • Champs principaux :
      • name : Nom du modèle
      • description : Description HTML
      • assignees : Utilisateurs assignés par défaut
      • customer : Client par défaut
      • project : Projet par défaut
      • tags : Tags par défaut
      • parent : Modèle parent
      • subtasks : Sous-tâches
      • sequence : Ordre d'affichage
      • company_id : Société
      • planned_hours : Heures planifiées
      • equipment_ids : Équipements à entretenir
    • Méthodes principales :
      • _prepare_new_task_values_from_self() : Prépare les valeurs pour une nouvelle tâche
      • create_task_from_self() : Crée une tâche à partir du modèle
    • Recommandations de migration :
      • Vérifier la compatibilité avec le nouveau système de modèles de tâches Odoo 18
      • Tester la création de tâches à partir des modèles
      • Adapter la gestion des équipements et des heures planifiées
  • product.template :

    • Champs ajoutés :
      • task_template_id : Modèle de tâche associé
      • is_field_service : Indicateur de service sur site
    • Recommandations de migration :
      • Vérifier la compatibilité avec le nouveau système de produits Odoo 18
      • Tester la gestion des modèles de tâches
      • Adapter l'indicateur de service sur site
  • res.partner :

    • Champs ajoutés :
      • is_site_contact : Indicateur de contact sur site
      • is_service_site : Indicateur de site de service
      • site_ids : Sites de travail liés
      • site_contacts : Contacts sur site
      • work_order_contacts : Destinataires des bons de travail
    • Méthodes modifiées :
      • _compute_is_site_contact() : Calcul de l'état de contact sur site
      • _search_is_site_contact() : Recherche des contacts sur site
      • _compute_is_service_site() : Calcul de l'état de site de service
    • Recommandations de migration :
      • Vérifier la compatibilité avec le nouveau système de partenaires Odoo 18
      • Tester les calculs des indicateurs
      • Adapter la gestion des relations entre sites et contacts
  • sale.order :

    • Champs ajoutés :
      • valid_equipment_ids : Équipements valides
      • default_equipment_ids : Équipements par défaut à entretenir
      • summary_equipment_ids : Équipements en cours de maintenance
      • site_contacts : Contacts sur site
      • work_order_contacts : Destinataires du bon de travail
      • visit_ids : Visites FSM liées
      • is_fsm : Indicateur de commande FSM
    • Méthodes modifiées :
      • get_relevant_order_lines() : Récupère les lignes pertinentes pour une tâche
      • _compute_summary_equipment_ids() : Calcule les équipements en maintenance
      • _onchange_partner_shipping_id() : Gère les changements de partenaire
      • _compute_default_contacts() : Calcule les contacts par défaut
      • _compute_default_equipment() : Calcule les équipements par défaut
      • copy() : Gère la copie des visites
      • _create_default_visit() : Crée une visite par défaut
      • _create_or_organize_visits_if_needed() : Organise les visites FSM
      • action_confirm() : Confirmation de commande avec gestion FSM
      • write() : Gère les mises à jour des partenaires
    • Recommandations de migration :
      • Vérifier la compatibilité avec le nouveau système de commandes Odoo 18
      • Tester la gestion des équipements
      • Adapter la gestion des visites FSM
      • Vérifier les calculs de contacts et d'équipements

Vues à modifier

  • Vues existantes :
    • Formulaire de tâche :
      • Ajout d'une page "Equipment and Contacts"
      • Modification des boutons de validation
      • Ajout du champ propagate_assignment
    • Vue liste :
      • Ajout du champ work_order_number
      • Masquage de certains champs optionnels
    • Vue calendrier :
      • Personnalisation des couleurs par utilisateur
      • Suppression du champ worksheet_template_id
    • Vue de recherche :
      • Modification des filtres de planification
      • Ajout du filtre "Parent Task"
  • Nouvelles vues :
    • Aucune nouvelle vue créée, uniquement des modifications des vues existantes
  • Recommandations pour Odoo 18 :
    • Vérifier la compatibilité avec les nouvelles vues Odoo 18
    • Adapter les modifications de vues aux nouveaux designs
    • Tester les fonctionnalités de recherche et de filtrage
    • Vérifier la gestion des couleurs dans le calendrier

Rapports

  • Rapports personnalisés :
    • Nouveaux blocs de rapport :
      • Tableau des matériaux
      • Tableau des temps et matériaux avec tarification
      • Liste des sous-tâches
      • Bloc d'informations sur la commande
      • Résumé des équipements
      • Entrées de feuille de temps
      • Bloc de signature
    • Modifications principales :
      • Intégration des contacts et informations client
      • Affichage des dates planifiées
      • Gestion des signatures numériques
      • Personnalisation de la mise en page
    • Recommandations pour Odoo 18 :
      • Vérifier la compatibilité avec le nouveau système de rapports Odoo 18
      • Adapter les modèles de rapport aux nouvelles fonctionnalités
      • Tester l'affichage des différents blocs
      • Vérifier la gestion des signatures numériques

Assistants (Wizards)

  • Nouveaux assistants : À documenter

Analyse des Alternatives Natives Odoo 18.0

Fonctionnalités Natives à Explorer

  1. Gestion des Services :

    • Module Industry FSM d'Odoo Enterprise
    • Nouvelles fonctionnalités de planification
    • Système de rapports amélioré
  2. Gestion des Équipements :

    • Module Maintenance d'Odoo
    • Intégration avec FSM
    • Système de suivi des équipements
  3. Gestion des Contacts :

    • Système de contacts hiérarchiques
    • Gestion des rôles des contacts
    • Système d'adresses de livraison

Approche "Vanilla First"

  1. Fonctionnalités à Conserver en Custom :

    • Gestion spécifique des visites FSM
    • Propagation des affectations
    • Modèles de tâches personnalisés
    • Gestion avancée des contacts sur site
  2. Fonctionnalités à Migrer vers Native :

    • Utiliser le système de planification natif
    • Adopter le système de rapports standard
    • Utiliser la gestion des équipements native
    • Intégrer avec le système de contacts standard

Plan de Migration

Phase 1 : Analyse et Préparation

  1. Audit des Fonctionnalités :

    • Identifier les fonctionnalités disponibles nativement
    • Lister les gaps fonctionnels
    • Évaluer l'impact sur les processus existants
  2. Planification :

    • Définir la stratégie de migration
    • Établir un calendrier
    • Identifier les risques

Phase 2 : Migration Technique

  1. Adaptation du Code :

    • Mettre à jour les vues (tree -> list)
    • Supprimer les attrs obsolètes
    • Adapter les méthodes aux nouvelles API
  2. Intégration Native :

    • Intégrer avec Industry FSM
    • Connecter avec le module Maintenance
    • Adapter le système de contacts

Phase 3 : Tests et Validation

  1. Tests Fonctionnels :

    • Validation des workflows
    • Tests des rapports
    • Vérification des intégrations
  2. Tests de Performance :

    • Analyse des requêtes SQL
    • Tests de charge
    • Optimisation si nécessaire

Recommandations Spécifiques

Modèles et Champs

  1. project.task :

    • Utiliser les champs natifs quand possible
    • Conserver uniquement les champs spécifiques
    • Adapter les méthodes aux nouvelles API
  2. task.template :

    • Évaluer le système de modèles natif
    • Simplifier la structure si possible
    • Optimiser la création de tâches
  3. sale.order :

    • Utiliser les fonctionnalités FSM natives
    • Optimiser la gestion des visites
    • Simplifier les calculs

Vues et Interface

  1. Modifications Prioritaires :

    • Remplacer tree par list
    • Supprimer les attrs obsolètes
    • Adapter aux nouveaux standards UI
  2. Améliorations Suggérées :

    • Utiliser les nouveaux widgets
    • Simplifier les vues
    • Améliorer l'expérience utilisateur

Rapports

  1. Stratégie de Migration :
    • Utiliser le nouveau système de rapports
    • Adapter les modèles existants
    • Optimiser le rendu

État de la Migration

En analyse préliminaire

Notes Importantes

  • Module complexe nécessitant une approche progressive
  • Forte dépendance avec d'autres modules
  • Impact important sur les processus métier
  • Nécessité de formation des utilisateurs

Prochaines Étapes

  1. Valider l'approche avec les parties prenantes
  2. Créer un environnement de test
  3. Commencer par les fonctionnalités critiques
  4. Planifier la formation des utilisateurs

Analyse Technique

Fonctionnalités Natives dans Odoo 18.0

Le module industry_fsm d'Odoo Enterprise 18.0 inclut déjà plusieurs fonctionnalités avancées :

  1. Gestion des Tâches FSM

    • Champ is_fsm sur les projets pour identifier les projets FSM
    • Champ fsm_done sur les tâches pour marquer leur complétion
    • Gestion des signatures sur les rapports de travail
    • Gestion des coordonnées client (téléphone, adresse, etc.)
    • Planification avec dates de début/fin
  2. Fonctionnalités de Base

    • Vue spécifique pour les travailleurs sur le terrain
    • Rapports sur les tâches
    • Intégration avec les feuilles de temps
    • Géolocalisation des clients
    • Gestion des produits sur les tâches
  3. Sécurité et Contraintes

    • Règles de sécurité spécifiques FSM
    • Contraintes sur les projets FSM (company_id requis)
    • Restrictions sur les dépendances de tâches et les jalons

Différences avec Notre Module

  1. Fonctionnalités à Migrer

    • Fonctionnalités spécifiques de gestion d'équipement
    • Workflows personnalisés
    • Rapports et analyses spécifiques
    • Intégrations avec d'autres modules custom
  2. Fonctionnalités à Adapter

    • Utiliser les champs natifs plutôt que nos champs customs
    • Adapter nos vues aux nouvelles conventions Odoo 18.0
    • Intégrer nos processus avec le système natif

Plan de Migration

Phase 1 : Préparation

  1. Analyse des Données

    • Identifier les données spécifiques à notre module
    • Mapper les champs actuels vers les champs natifs
    • Lister les fonctionnalités uniques à préserver
  2. Configuration

    • Activer et configurer le module industry_fsm
    • Vérifier les dépendances et les conflits
    • Préparer les scripts de migration des données

Phase 2 : Migration

  1. Migration des Données

    • Transférer les données vers les structures natives
    • Adapter les configurations existantes
    • Mettre à jour les vues et rapports
  2. Développement

    • Adapter le code pour utiliser l'API Odoo 18.0
    • Implémenter les fonctionnalités manquantes
    • Mettre à jour les vues XML (plus d'attrs, list au lieu de tree)

Phase 3 : Tests

  1. Validation Fonctionnelle

    • Tester les fonctionnalités de base FSM
    • Vérifier nos fonctionnalités spécifiques
    • Valider les workflows
  2. Tests d'Intégration

    • Tester avec les autres modules
    • Vérifier la compatibilité mobile
    • Valider les performances

État de la Migration

🟡 En cours d'analyse - Utilisation maximale des fonctionnalités natives

Notes Importantes

  • Le module industry_fsm d'Odoo Enterprise offre une base solide
  • Plusieurs de nos fonctionnalités peuvent être remplacées par des fonctionnalités natives
  • Certaines personnalisations spécifiques devront être maintenues
  • La nouvelle interface utilisateur nécessitera une formation des utilisateurs

Prochaines Étapes

  1. Valider l'approche avec l'équipe
  2. Créer les scripts de migration des données
  3. Développer les fonctionnalités manquantes
  4. Planifier la formation des utilisateurs

Notes de Version

  • Version originale: 17.0.1.0.0
  • Dernière analyse: 26/01/2025