Sous-traitance

Cette page ne contient pas de sous-pages directes.

← Retour à LambiqueEntities


Documentation technique – Activités sous-traitantes

Cette documentation décrit la logique de gestion des activités pouvant être sous-traitées dans un système modulaire composé des modules Lambique, LambiqueEntities et LambiqueGlobal.

1. Objectif

Identifier les activités (par exemple : tuyauteur, calorifugeur, etc.) qui peuvent être réalisées en sous-traitance. Ces activités sont référencées dans la classe MEntiteActivite, avec un champ booléen m_bSousTraitance pour indiquer leur éligibilité à la sous-traitance.

2. Structure des modules

LambiqueEntities

  • Contient la classe MEntiteActivite.
  • Responsable de la persistance des données (mapping BDD).
  • Le champ m_bSousTraitance indique si l’activité est sous-traitable.

LambiqueGlobal

  • Module partagé chargé de centraliser les données.
  • Contient un singleton exposant MEntiteActiviteListe (liste de toutes les MEntiteActivite).
  • Agit comme source unique pour les modules consommateurs.

Lambique

  • Contient la classe MVARChoix_SousTraitance.
  • Cette classe fournit une liste filtrée des activités sous-traitables, à partir de LambiqueGlobal.
  • Module utilisé par d’autres composants applicatifs pour accéder à la logique métier sans dépendre de LambiqueEntities.

3. Classe MEntiteActivite

Classe <MAPPING = LATEEntite_Activite>
Hérite de MBase
Implémente IEntiteActivite

Champs principaux :
- m_nRefActivite : entier (clé unique)
- m_sNom : chaîne
- m_sInfo : chaîne
- m_sCleConstant : chaîne
- m_bSousTraitance : booléen (true si l'activité peut être sous-traitée)
- m_nCouleur : entier
- m_nActif : entier
- m_nRefEntite : entier

4. Classe MVARChoix_SousTraitance (dans Lambique)

MVARChoix_SousTraitance est une Classe
    hérite de MVARChoix
FIN

PROCÉDURE Constructeur()
    Initialiser()

PROCÉDURE Destructeur()

PROCÉDURE PRIVÉE Initialiser()
    M         est un objet dynamique
    iActivite est un IEntiteActivite

    POUR TOUT M DE GGlobal.GListe(GEntiteActivite).p_tabModele
        iActivite <- M
        SI iActivite.m_bSousTraitance ALORS
            AjouterChoixPossible(iActivite.IdentifiantUnique, iActivite.p_sNomComplet)
        FIN
    FIN

5. Bonnes pratiques

  • Centraliser les données dans LambiqueGlobal pour éviter la duplication de logique.
  • Utiliser m_bSousTraitance comme critère simple (plutôt qu’un système de catégories complexes).
  • Éviter d’accéder directement à LambiqueEntities dans les modules consommateurs.
  • Mettre à jour LambiqueGlobal dès qu’il y a modification des activités dans la base.

6. Terminologie

  • Sous-traitance : activité pouvant être exécutée par une entité externe.
  • Prestataire : entité tierce (souvent de type MEntite) exécutant une activité sous-traitable.

7. Remarques techniques

  • Le champ sous-traitance nécessite probablement des crochets [sous-traitance] dans SQL Server car il contient un tiret (caractère réservé).
  • Il est recommandé de nommer ce champ sous_traitance ou sousTraitance pour éviter les conflits avec SQL Server.

Dernière mise à jour : 2025-05-05