meta données pour cette page
  •  

Ceci est une ancienne révision du document !


LoGeAs Sectorisé

Cette page documente la version sectorisée de LoGeAs : un mode de fonctionnement permettant de gérer, au sein d'une seule base de données, plusieurs entités administratives et comptables distinctes appelées secteurs.

Intérêt

LoGeAs sert des associations et organismes à but non lucratif. Certains d'entre eux ne sont pas une structure unique mais un réseau : une fédération, une union régionale, des antennes locales, des paroisses rattachées à une structure nationale (le paramétrage Structure.EPUdF_Region / Structure.EPUdF_Consistoire présent dans le code atteste de ce cas d'usage concret, pour l'Église Protestante Unie de France, organisée en Régions et Consistoires).

Sans sectorisation, un tel réseau devrait soit :

  • gérer une base LoGeAs par antenne, ce qui interdit toute vision consolidée (adhérents, comptabilité) au niveau national ;
  • soit tout regrouper dans une base unique sans cloisonnement, ce qui empêche de distinguer identité légale, adhérents et comptabilité de chaque antenne.

Le mode sectorisé répond à ce besoin : dans une même base, chaque secteur peut disposer de :

  • sa propre identité légale (nom, adresse, logo, SIREN/RNA, TVA, RCS) ;
  • son propre fichier d'adhérents/donateurs ;
  • sa propre comptabilité (saisies, écritures, dons, bilan) ;
  • ses propres droits utilisateurs.

Un niveau dit générique (le secteur n°1, la “tête de réseau”) garde une vision consolidée sur l'ensemble, pendant qu'un utilisateur rattaché à un secteur particulier ne voit en principe que les données de son secteur.

Concepts et modèle de données

L'entité Secteur

Chaque secteur est un enregistrement de la table Secteur (classe TSQLSecteur côté client) portant :

  • son identité : nom, mnémonique, dénomination courante et officielle (avec déterminant grammatical, ex. “la”/“le”), logo ;
  • ses coordonnées : adresse complète, téléphone, portable, email ;
  • ses informations légales (uniquement significatives pour le secteur générique) : SIREN, RNA, ville de dépôt du RCS, n° de TVA.

Le secteur n°1 est toujours la “Structure générique” : il existe même sur une base non sectorisée. Le nombre de secteurs déclarés est exposé via TBaseLoGeAs.NbSecteur — tant que ce nombre vaut 1, toute l'interface liée à la sectorisation (menus, sélecteurs, blocs “Secteur” dans les fiches) reste masquée : le fonctionnement est alors identique à une base classique.

Le champ "secteur"

Un champ secteur (numéro du secteur propriétaire) est porté par les entités suivantes :

  • Fichier : Personne, Famille — les deux seules entités dont le filtrage par secteur est automatique et systématique, quel que soit l'écran qui charge les données (le filtre est injecté par le code générique du modèle, pas par chaque écran) ;
  • Comptabilité : Saisie, Ecriture, HistoriqueDon, HistoriqueDonSynthese — le champ existe et peut être exploité par un écran pour restreindre son affichage à un secteur, mais le filtrage n'est pas automatique : c'est à l'écran concerné de le demander explicitement ;
  • Droits : DroitsSecteur — un jeu de droits par couple (utilisateur, secteur) ;
  • Paramétrage : LienCloud — les liens de stockage cloud (devis/factures) sont eux aussi déclinables par secteur.

À la création d'une fiche Personne/Famille (ou de tout enregistrement doté d'un champ secteur non renseigné), le secteur est affecté automatiquement selon le mode actif :

  • en mode non-sectorisé ou Durstel → secteur = 1 (générique), sans intervention utilisateur ;
  • en mode Sectorisé ou Nîmes → une boîte de dialogue demande explicitement “Indiquez le secteur d'affectation”.

Connexion à la base

À la connexion, l'utilisateur choisit un Exercice et un Secteur (TBaseLoGeAs.IDExercice / IDSecteur). Dès que la base compte plus d'un secteur, le titre affiché ajoute le nom du secteur courant (“Nom de la base - nom du secteur”).

Spécificité : les quatre modes de sectorisation

Le comportement exact est piloté par un paramètre de base, modeSectorisationFichier (énuméré côté client sous TModeFichierSectorise). Il détermine, pour le fichier des membres (Personne/Famille), qui voit quoi.

Mode Valeur Vision depuis le secteur générique Vision depuis un secteur donné Origine
Non sectorisé 0 (base à secteur unique) (base à secteur unique) Comportement par défaut, équivalent à une base classique
Sectorisé 1 Voit tous les membres, tous secteurs confondus Ne voit que les membres de son propre secteur Mode “réseau” standard
Nîmes 2 Voit tous les membres (les secteurs 1 et 2 sont tous deux considérés génériques) Ne voit que son propre secteur (à partir du secteur 3) Variante développée pour un déploiement client, où deux niveaux distincts doivent conserver une vision globale
Durstel 3 Voit tous les membres Voit également tous les membres — le fichier n'est jamais restreint Variante développée pour un déploiement client, où le secteur sert d'axe de qualification (notamment comptable) sans cloisonner le fichier des membres

Points importants :

  • Ce filtrage s'applique uniquement aux entités Personne et Famille (cf. ci-dessus). La comptabilité (Saisie/Ecriture/dons) porte le champ secteur mais n'est cloisonnée par ce mécanisme automatique que si l'écran le demande explicitement dans son filtre de chargement.
  • Les modes Nîmes et Durstel sont des adaptations développées pour répondre au besoin d'un client précis (leur nom en code le suggère fortement) et reprises comme modes génériques disponibles pour toute base. À manier avec prudence si on les réutilise sur une nouvelle base : leur comportement est plus spécifique que le mode “Sectorisé” standard.
  • Le mode est un réglage technique de la base, positionné une fois pour toutes ; il n'est pas modifiable depuis un écran client (voir “Paramétrage” ci-dessous).

Usage

Informations légales par secteur

Écran : Administration > Informations Légales (info-secteur.component).

  • Si la base compte plusieurs secteurs, un menu arborescent liste “Structure générique” puis chaque secteur (“Secteur \”Nom\“”).
  • Chaque secteur dispose de son propre formulaire d'identité (nom, déterminant + dénomination courante/officielle, mnémonique, email, téléphones, adresse complète, logo uploadé indépendamment par secteur).
  • Les champs SIREN / RNA / RCS / TVA ne sont proposés que sur le secteur générique (ID=1) : c'est la structure porteuse qui est juridiquement identifiée. Un bandeau rappelle que le SIREN ou le RNA est obligatoire pour l'édition des reçus fiscaux (mise en conformité NF203 ; à défaut de SIREN, saisir “000000000”).
  • Écran soumis à un droit dédié (droit n°82), sauf pour les membres de l'assistance LoGeAs.

Rattachement d'un membre à un secteur

Écrans : fiche Famille et fiche Personne (bloc “Secteur”, visible dès que la base compte plus d'un secteur).

  • Le secteur courant est affiché en lecture seule, avec un bouton “Changer de secteur” (nécessite le droit fichier “édition”).
  • Le changement de secteur est géré par FichierSecteurService et se propage en cascade, après confirmation utilisateur :
    1. au niveau Famille : la famille change de secteur, puis tous ses membres sont basculés dans le même secteur ;
    2. au niveau Personne : la famille de la personne est retrouvée (erreur bloquante si elle est introuvable — incohérence de données), puis le même traitement en cascade est appliqué à la famille et à tous ses membres ;
    3. pour chaque membre : ses saisies comptables non verrouillées (ni approuvées, ni clôturées) changent de secteur, ainsi que les écritures, historiques de dons et leur synthèse rattachés à ces saisies.
  • Les saisies déjà approuvées ou clôturées ne sont pas touchées : elles gardent leur secteur d'origine.

Paramétrage comptable par secteur

Écran : Comptabilité > Gestion de la compta (param-compta).

  • Des sélecteurs Exercice / Secteur permettent de choisir le couple pour lequel on paramètre les liens de stockage cloud (dossiers devis/factures dématérialisés) — chaque secteur peut avoir ses propres emplacements.
  • Un bloc “Autre paramétrage (générique, tous secteurs)” regroupe les réglages communs, non déclinables par secteur.

Droits utilisateurs par secteur

  • Les droits (TSQLDroitsSecteur) sont attribués par couple utilisateur/secteur : administration, fichier, comptabilité, droits spécifiques. Un utilisateur peut ainsi avoir des droits différents selon le secteur.
  • L'écran Synthèse des droits (etat/etatcomptable/etatadmin/synthese-droits) imprime un tableau récapitulatif de tous les utilisateurs et de leurs droits, regroupés par secteur, utile pour un audit ou une revue de droits.

Paramétrage

Action Qui peut le faire
Choix du mode de sectorisation (modeSectorisationFichier) Équipe LoGeAs, au moment de la mise en place de la base Paramètre technique, non exposé dans l'IHM cliente
Création d'un nouveau secteur Réservé aux membres de l'assistance LoGeAs (bouton visible mais désactivé pour les autres profils) Administration > Paramétrage de la base, bloc “Listes des secteurs”
Fiche d'identité d'un secteur (nom, adresse, logo, mentions légales) Administrateurs habituels de la base Administration > Informations Légales
Activation du bilan comptable décliné par secteur Administrateurs habituels de la base Administration > Paramétrage de la base, case “Base.BilanParSecteur”
Rattachement secteur d'un membre / d'une famille Utilisateur ayant le droit fichier “édition” Fiche Famille / Fiche Personne, bouton “Changer de secteur”
Droits par secteur d'un utilisateur Administrateur des droits Écran de gestion des utilisateurs / droits
Liens de stockage cloud par secteur Administrateurs habituels de la base Comptabilité > Gestion de la compta

Points d'attention

  • La sectorisation cloisonne à l'intérieur d'une même base LoGeAs : ce n'est pas un mécanisme multi-tenant, ni un substitut à la notion de “Base” (une Base = une association).
  • Le filtrage automatique par secteur ne concerne strictement que Personne et Famille. Pour toute autre entité portant un champ secteur (Saisie, Ecriture, dons…), le cloisonnement dépend de la requête de l'écran.
  • Toujours valider un identifiant de secteur avec une vérification stricte (ID non nul et non négatif) : l'ID 0 est une valeur valide en base et ne doit pas être traité comme “absence de secteur” par une simple évaluation falsy.
  • Un secteur ne se crée pas depuis une base client standard : il faut passer par l'assistance LoGeAs.

Repères techniques

  • TSQLSecteur — modèle de l'entité Secteur
  • TModeFichierSectorise — énumération des 4 modes (modeNonSectorise, modeSectorise, modeNimes, modeDurstel)
  • TSQLDroitsSecteur — droits par couple utilisateur/secteur
  • FichierSecteurService — cascade de changement de secteur (Fichier > services > fichier-secteur.service.ts)
  • InfoSecteurComponent — écran Informations légales (Administration > Informations Legales > info-secteur.component)
  • AdminBaseComponent — création de secteur, paramètre Base.BilanParSecteur (Administration > Parametrage de la base > admin-base)
  • SyntheseDroitsComponent — état imprimé des droits par secteur (etat/etatcomptable/etatadmin/synthese-droits)