La page complète du module

Carte de l’entreprise : tout ce que contient votre système et comment chaque élément se relie au reste

Promotions, diplômés, contrats, échéances, événements, billets, tables, galeries, collaborateurs et fournisseurs sur une carte navigable, lue dans les tables mêmes des modules à l’ouverture de l’écran. Cherchez par nom, par CPF ou par numéro, cliquez, et voyez tout ce qui se rattache à cette fiche, dans tous les sens. Comparez les promotions côte à côte, repérez celles qui demandent de l’attention, trouvez les fiches en double et vérifiez toute une liste de CPF d’un coup.

Quatre écrans, aucun paramétrage et aucune copie de données. Cette page est la référence complète du module : les onze objets qui entrent dans la carte, les treize liens qui les relient, les neuf points d’attention, les limites de navigation et la raison de chacune, les choix techniques qui expliquent le comportement de l’explorateur, et le glossaire.

  • 11types de fiches sur la carte, de l’entreprise au fournisseur
  • 13liens entre elles, chacun formulé dans les deux sens
  • 4écrans : carte, explorateur, comparaison de promotions et vérification de liste
  • 0tables dédiées, collectes à programmer ou champs à paramétrer

Dans le module

8 screens, in the order the work happens

Le module compte quatre écrans. La carte répond à : que possède cette entreprise, qu’est-ce qui attend quelqu’un et par où commencer. L’explorateur répond à : qu’est-ce qui est relié à cette fiche et comment elle rejoint cette autre. La comparaison répond à : quelle promotion demande de l’attention en premier. La vérification de liste répond à : quelles lignes d’un tableur sont déjà dans le système. Le reste de cette page est ce qui étaye ces réponses.

01

Les quatre écrans

Un pour entrer, un pour naviguer, un pour comparer et un pour vérifier. Il n’y a ni assistant de première utilisation ni écran de réglages.

4 screens
  • Carte de l’entrepriseLa recherche est en haut parce que c’est la vraie porte d’entrée : on arrive avec un nom, un e-mail ou un CPF, pas avec un identifiant interne. En dessous s’affichent les volumes de chaque objet, leur proportion, le tableau des liens et des listes de promotions, de diplômés et d’événements récents sur lesquels cliquer pour basculer dans l’explorateur. Viennent aussi les points d’attention, les fiches en double, l’export de n’importe quelle liste et les fiches consultées récemment.
  • ExplorateurLe dessin des liens. Cliquez sur une fiche pour voir ce qu’elle est, double-cliquez pour ouvrir ses voisines par-dessus ce qui est déjà à l’écran, ou ouvrez d’un coup les voisines de toutes les fiches d’un même type. Glissez pour déplacer, molette pour zoomer, ajustez à l’écran, relâchez ce que vous avez déplacé et enregistrez le dessin en PNG.
  • Comparer les promotionsJusqu’à six promotions côte à côte, avec le nombre de fiches de chaque type et de chaque problème ouvert, plus un classement de toutes les promotions par points d’attention. Chaque chiffre ouvre la liste dont il provient.
  • Vérifier une listeCollez des CPF, des CNPJ ou des e-mails issus d’un tableur et voyez, ligne par ligne, ce qui est enregistré, où, ce qui ne l’est pas, et ce qui apparaît dans plusieurs fiches.
02

Ce qui entre dans la carte

Onze types de fiches et treize liens, déclarés dans le code et identiques pour toutes les entreprises.

2 screens
  • Les fichesEntreprise, promotion, diplômé, contrat, échéance, événement, billet, table, galerie, collaborateur et fournisseur. Chacune vient de la table du module qui la détient, et utilise la clé primaire de cette table comme adresse. Un type dont le module n’existe pas dans la base apparaît grisé au lieu de disparaître : cela répond à soi seul à la question de savoir pourquoi les fournisseurs ne figurent pas sur la carte de cette entreprise.
  • Les liensLa promotion appartient à l’entreprise, le diplômé est dans la promotion, le contrat appartient à la promotion, le contrat est signé par le diplômé, l’échéance appartient au contrat, l’échéance appartient au diplômé, l’événement appartient à la promotion, le billet appartient à l’événement, le billet est détenu par le diplômé, la table appartient à l’événement, la galerie appartient à la promotion, le collaborateur appartient à l’entreprise et le fournisseur appartient à l’entreprise. Chaque lien fonctionne dans les deux sens et affiche son intitulé inversé quand on le regarde de l’autre côté.
03

Comment la carte est lue

Toujours en direct, toujours limitée à l’entreprise, toujours dans une limite annoncée.

2 screens
  • Lectures en directIl n’y a pas de table de carte. Chaque écran lance sa requête sur la table du module source à l’instant où on l’ouvre : pas de carte périmée, pas de collecte à déclencher. La seule chose conservée, c’est le nombre de fiches par type, pendant cinq minutes, et un bouton le recalcule sur-le-champ.
  • Limites de navigationSoixante voisines par lien, quatre sauts pour la recherche de chemin, mille cinq cents fiches parcourues et douze résultats de recherche par type. Ces chiffres empêchent une fiche très connectée d’accaparer la base, et l’écran vous prévient quand ce que vous regardez n’est qu’une vue partielle.

Le problème et la réponse

Ce qui change quand les liens cessent de vivre dans la tête des gens

Le point de douleur

La façon dont promotions, contrats, échéances, événements et galeries se relient n’existe que dans la tête de ceux qui sont là depuis des années.

Avec Partiu Formatura

Les liens sont déclarés dans le système et n’importe qui peut les suivre d’un clic. Personne n’a besoin de savoir quel écran ouvrir ni quelle colonne relie une chose à une autre.

Le point de douleur

Une question arrivait au sujet d’un diplômé et y répondre exigeait d’ouvrir six écrans différents.

Avec Partiu Formatura

On cherche le nom, on clique sur le résultat et l’explorateur affiche sur un seul écran la promotion, les contrats, les échéances, les billets et les galeries de ce diplômé.

Le point de douleur

Personne ne sait dire ce qui sera touché si l’on corrige une fiche erronée.

Avec Partiu Formatura

L’explorateur montre tout ce qui dépend de cette fiche avant la correction, au lieu que l’équipe l’apprenne par la réclamation qui suit.

Le point de douleur

L’outil de visualisation envoyait vingt mille points au navigateur et l’onglet se figeait.

Avec Partiu Formatura

Le serveur renvoie au plus soixante voisines par lien et signale quand il a tronqué la liste. Le dessin grandit quand vous le décidez, une fiche à la fois, pas d’un seul bloc.

Le point de douleur

Le module de reporting exigeait une ontologie paramétrée et une collecte programmée avant d’afficher la moindre ligne.

Avec Partiu Formatura

Ici, il n’y a rien à paramétrer. Une entreprise qui utilise déjà la plateforme ouvre l’écran et la carte est prête, parce qu’elle est lue dans les modules que l’équipe alimente déjà tous les jours.

Le point de douleur

Une carte ancienne affichait les données de la veille et personne ne s’en apercevait.

Avec Partiu Formatura

Il n’y a pas de copie qui puisse se périmer. À chaque ouverture, la table source est interrogée, et seul le comptage par type est mis en cache cinq minutes, avec l’heure du calcul affichée à l’écran.

Le point de douleur

Le même diplômé était enregistré deux fois dans la promotion et recevait deux avis de paiement.

Avec Partiu Formatura

Le contrôle des doublons signale le même CPF ou le même e-mail deux fois dans la même promotion, le même CNPJ sur deux fournisseurs et le même CPF sur deux collaborateurs, avec la valeur masquée et un lien vers chaque fiche.

Le point de douleur

Le comité de promotion envoyait le tableur des personnes présentes à la fête et quelqu’un devait chercher les CPF un par un.

Avec Partiu Formatura

La vérification de liste reprend la liste collée, jusqu’à cinq cents lignes, et renvoie chacune avec les fiches correspondantes et celles qui n’ont rien donné, prêtes à exporter en tableur.

Le point de douleur

Avec trois cents promotions actives, personne ne sait laquelle accumule le plus de problèmes.

Avec Partiu Formatura

Le classement note chaque promotion en points d’attention, avec un poids plus fort sur les échéances en retard et les événements à venir sans billetterie, et affiche les trente qui passent en premier.

Comment ça marche

Le chemin que suit l’information, de la table du module au dessin à l’écran

  1. 1

    Vous cherchez un texte

    Nom, e-mail, CPF ou numéro. La recherche couvre tous les types présents chez l’entreprise et renvoie des résultats groupés par type, douze par type. Un nombre est aussi essayé comme identifiant de la fiche, parce que celui qui tape 4182 a presque toujours un contrat sous les yeux.

  2. 2

    La fiche devient une adresse

    Chaque résultat prend la forme type et clé, par exemple turma:184. C’est la clé primaire de la fiche dans le module source : le lien de l’explorateur continue donc de fonctionner après toute mise à jour et peut être envoyé à un collègue.

  3. 3

    Le serveur construit le voisinage

    Pour chaque lien auquel ce type participe, une requête part dans le bon sens, avec le filtre entreprise répété à l’intérieur. Un lien dont la table ou la colonne n’existe pas dans la base est simplement ignoré.

  4. 4

    L’écran dessine et continue d’ajouter

    Le double-clic fait venir les voisines et conserve ce qui était déjà à l’écran, exactement à sa place. Tout redessiner à chaque clic déplacerait tout et la personne perdrait l’image qu’elle avait construite.

  5. 5

    Le chemin répond à la question

    Choisissez la fiche d’arrivée et le serveur cherche une route entre les deux, saut par saut, jusqu’à quatre sauts et mille cinq cents fiches parcourues. S’il ne trouve rien dans ces limites, il dit qu’il s’est arrêté à la limite plutôt que d’affirmer qu’aucun chemin n’existe.

Comment le système se comporte

13 decisions that explain everything else

Elles expliquent pourquoi le système ne fait parfois pas ce que vous attendez, et pourquoi c’est voulu.

Rien n’est copié

La version précédente de ce module écrivait nœuds et arêtes dans ses propres tables, alimentées par des collectes programmées. Résultat : une carte qui se périmait toute seule, un écran de santé rien que pour surveiller la copie, et des clients obligés de paramétrer une ontologie et des collectes avant de voir la moindre ligne. Aujourd’hui, le SQL lit la table du module source sur l’instant. Sans copie, il n’y a ni ingestion, ni carte périmée, ni rien à paramétrer.

Le modèle vit dans le code, pas dans une table

Ce qui existe et la façon dont les choses se relient relèvent de ceux qui écrivent le code, dans un diff qu’une autre personne relit. Une requête arbitraire stockée en base et exécutée plus tard, c’est de l’injection avec des étapes en plus : quiconque parviendrait à écrire une ligne dans cette table pourrait exécuter n’importe quoi avec les identifiants de l’application.

L’entreprise est filtrée à chaque saut

Pas seulement sur la fiche de départ. Depuis n’importe quelle fiche atteinte, on peut atteindre tout ce qui s’y rattache : une seule fiche appartenant à une autre entreprise ouvrirait donc toute la base de cette entreprise. C’est pourquoi la condition entreprise se trouve dans le SQL de chaque lien, pas uniquement dans la première requête.

Une colonne est une préférence, pas une garantie

Le schéma varie d’un environnement à l’autre et le module lit les tables d’une douzaine d’autres modules. L’intitulé et le détail déclarent une liste de colonnes candidates, et le moteur retient la première qui existe vraiment. Si aucune n’existe, la fiche s’affiche comme Contrat 4182. Une colonne supposée se transforme en « nom de colonne invalide » au visage de l’utilisateur, et c’est exactement ainsi que l’ancien module tombait en panne.

Chaque lien a son propre SQL écrit à la main

Il n’y a délibérément aucun générateur automatique fondé sur les clés étrangères. La moitié des liens réels de cette base passent par une table de jonction ou par une colonne qui n’est pas la clé de l’autre côté : le contrat stocke l’utilisateur, pas la préinscription, et un billet rejoint son événement par eventos_ingressos. Un générateur enfouirait ces cas sous des exceptions, alors que le SQL écrit à la main garde chacun lisible à la ligne où il se trouve.

Les photos ne sont pas des fiches de la carte

Une entreprise possède des millions de photos et aucun être humain ne navigue dans une carte d’un million de points. La galerie est la fiche, et le nombre de photos l’un de ses détails, ce qui correspond à ce que les gens demandent réellement.

Le dessin s’ajoute au lieu de se recharger

Le double-clic fait venir les voisines et conserve ce qui était déjà à l’écran, exactement à sa place. Tout redessiner à chaque clic disperserait les fiches et la personne perdrait l’image qu’elle avait construite, c’est-à-dire précisément le travail qu’elle est venue faire.

Une fiche absente et la fiche d’une autre entreprise répondent de la même façon

La différence entre les deux est précisément ce qu’il ne faut jamais confirmer à un tiers. Les deux situations renvoient la même réponse, avec le même message.

Seul le comptage est mis en cache

Tout compter à chaque chargement est la seule partie coûteuse de l’écran, et le chiffre ne change pas d’une minute à l’autre. Il est mis en cache cinq minutes par entreprise, avec l’heure du calcul à l’écran et un bouton pour recalculer. La carte, elle, ne vient jamais du cache.

Un CPF répété n’est un problème qu’au sein d’une même promotion

Un diplômé inscrit dans deux promotions, c’est normal, et le signaler remplirait la liste de faux problèmes. Le contrôle regroupe par promotion, et un collaborateur au CPF répété arrive avec une note indiquant qu’il peut s’agir d’un réembauchage : la liste sert à vérifier, et les critères disent ce qui y entre.

La liste collée ne circule jamais dans l’URL

Les adresses de page finissent dans l’historique du navigateur, les journaux des proxys et les conversations recopiées. Une liste de CPF s’y retrouverait dans des endroits que personne ne maîtrise : la vérification de liste arrive donc en POST et n’est conservée nulle part.

Le classement interroge par problème, pas par promotion

Avec quatre cents promotions, interroger promotion par promotion représenterait des milliers de comptages. Le classement lance une requête par problème, groupée par promotion, et additionne les points sur le serveur. C’est ce qui permet à une liste de trois cents promotions de revenir en quelques secondes.

L’écran vous prévient quand vous regardez une vue partielle

Un lien comptant plus de soixante voisines revient signalé, et une recherche de chemin qui épuise son budget indique qu’elle s’est arrêtée à la limite. Sans ce message, une vue partielle ressemble exactement à une réponse complète, et c’est là que quelqu’un décide avec la moitié de l’information.

Les limites

Où la carte puise ses données

Le module ne conserve jamais de seconde copie. Il lit ce qui existe déjà et restitue ce qu’il a produit par le même chemin que le reste de la plateforme.

Promotions et diplômés

Promotions et diplômés forment la colonne vertébrale de la carte. Presque toute question intéressante passe par l’un d’eux avant d’atteindre un contrat, un événement ou une galerie.

Finances et facturation

Contrats et échéances arrivent reliés à la promotion et au diplômé. C’est cette vue qui répond à : quel diplômé a payé quoi, et au titre de quel contrat.

Événements et billets

Événements, billets et tables arrivent avec leurs liens vers la promotion et le diplômé : on passe d’un invité au contrat sans ouvrir le moindre rapport.

Galeries et photos

La galerie arrive comme une fiche, reliée à la promotion, avec des photos comptées plutôt que dessinées. Une fiche par fichier rendrait la carte inutilisable.

Décisionnel et indicateurs

Le tableau de bord montre le chiffre ; la carte montre les liens qui se cachent derrière. Quand un total est contesté, parcourir les fiches reliées, c’est ce qui transforme une dispute en vérification.

Gouvernance

Qui voit quoi, et ce qui s’exécute sans que personne le demande

4 separate permissions

Tout le module est en lecture seule : il n’y a donc qu’un seul droit, celui d’ouvrir la carte. Ce que chacun voit ensuite reste limité à ce qu’il pouvait déjà voir dans les modules sources.

  • Consulter la carteOuvrir la carte de l’entreprise, la recherche et l’explorateur. C’est le seul droit du module.
  • Entreprise de la sessionLa carte porte toujours sur l’entreprise dans laquelle la personne travaille, filtre appliqué à chaque requête et à chaque saut.
  • Aucune écritureAucune route n’écrit quoi que ce soit, pas même la vérification de liste. Il n’y a rien à valider, à contrôler ni à annuler ici.
  • Aucun paramétrageTypes, liens et limites viennent du code. Il n’y a pas d’écran de réglages pour le client ni de migration à appliquer.

Les limites, et la raison de chacune

Ce ne sont pas des préférences d’interface. Ce sont elles qui empêchent la navigation depuis une fiche très connectée de parcourir toute la base en monopolisant le pool de connexions. Toutes sont appliquées côté serveur.

  • Voisines par lien : 60Un lien qui en compte davantage revient signalé comme tronqué. Tout ramener figerait l’écran, et de toute façon personne ne lit huit cents fiches d’un coup.
  • Sauts par chemin : 4Chaque saut supplémentaire multiplie la portée par le nombre moyen de liens, et la réponse ne tient plus dans le temps d’une seule requête. Quatre sauts couvrent déjà la route d’un billet jusqu’à un contrat.
  • Fiches parcourues par chemin : 1 500Le budget de recherche. Quand il est épuisé, la réponse dit qu’elle s’est arrêtée à la limite, pas que le chemin n’existe pas. La différence compte pour celui qui la lit.
  • Résultats de recherche par type : 12La recherche parcourt tous les types en même temps. Douze par type gardent la liste lisible et le temps de réponse prévisible.
  • Fiches par liste sur la carte : 8Les listes de promotions, de diplômés et d’événements récents sont là pour donner un point de départ, pas pour remplacer l’écran de liste de chaque module.
  • Cache des comptages : 5 minutesCompter toutes les fiches de tous les types est la seule partie coûteuse de l’écran. La carte, elle, est toujours lue en direct, et un bouton recalcule le comptage quand vous le souhaitez.
  • Durée de recherche de chemin : 8 secondesQuand le temps est écoulé, la réponse dit que la recherche s’est arrêtée, pas que le chemin n’existe pas. Essayez de partir d’une fiche plus proche de la destination.
  • Export : 5 000 lignesLe tableur utilise la même requête que la liste à l’écran. Au-delà, un message indique combien de lignes ont été laissées de côté, parce qu’un tableur qui s’arrête sans prévenir se lit comme la base entière.
  • Vérification de liste : 500 lignesDe quoi couvrir la liste d’invités d’une fête. Les listes plus longues se vérifient par lots.
  • Classement : 30 promotionsCelles qui demandent de l’attention en premier. La comparaison détaillée en couvre jusqu’à six côte à côte.

En pratique

6 everyday situations, from problem to result

01

L’appel au sujet d’un diplômé

Le scénario

Une mère appelait pour connaître la situation de son fils : contrat, échéances, billets et photos de la promotion. Le conseiller aurait dû ouvrir quatre écrans et s’assurer, dans chacun, qu’il regardait la bonne personne.

Avec le système

Il a cherché le nom sur la carte, cliqué sur le résultat, et l’explorateur a ouvert le diplômé avec la promotion, les contrats, les échéances et les billets qui s’y rattachent.

Le résultat

La réponse est venue pendant l’appel, sans transfert. Le risque de vérifier un homonyme a baissé lui aussi, parce que tout s’affichait rattaché à la même fiche.

02

Le billet que personne n’arrivait à retracer

Le scénario

Un billet a été signalé pour usage irrégulier à l’entrée de l’événement, et l’équipe devait savoir de quel diplômé il venait et si son contrat était à jour.

Avec le système

Ils ont ouvert le billet dans l’explorateur et tracé le chemin jusqu’à la promotion. En trois sauts, la piste montrait billet, diplômé, contrat et promotion, avec le nom de chaque lien traversé.

Le résultat

La question est devenue un écran à montrer au coordinateur. Le chemin est resté dessiné, et le PNG a été joint à la fiche d’incident.

03

La correction que personne n’osait faire

Le scénario

Une promotion avait été créée deux fois et l’équipe d’exploitation savait que la corriger pouvait toucher contrats, échéances, événements et galeries. Personne ne savait dire exactement quoi.

Avec le système

Ils ont ouvert la promotion dans l’explorateur et double-cliqué pour déployer deux sauts, le dessin rassemblant tout ce qui en dépendait.

Le résultat

La correction a été planifiée avec la liste complète sous les yeux, et non à tâtons. Ce qui devait être retraité a été repéré avant la réclamation, pas après.

04

Le tableur d’invités du comité de promotion

Le scénario

Le comité d’une promotion a envoyé la liste des CPF de toutes les personnes ayant confirmé leur venue à la fête, et l’équipe événementielle devait savoir qui avait déjà une fiche et un billet, et qui n’était pas du tout dans la base.

Avec le système

La liste a été collée dans la vérification de liste. Un seul écran a montré les lignes trouvées, avec le diplômé et le contrat rattachés, celles qui apparaissaient dans deux fiches et celles qui étaient introuvables.

Le résultat

L’équipe n’a traité que les exceptions au lieu de chercher trois cents CPF un par un, et le tableur de résultats est reparti vers le comité le jour même.

05

Commencer le lundi par la bonne promotion

Le scénario

La coordinatrice du service client avait deux cents promotions actives et aucun moyen de savoir où les problèmes s’accumulaient.

Avec le système

Le classement d’attention a placé en tête une promotion avec une série d’échéances en retard et un événement dans trois semaines sans billetterie paramétrée. La comparer à deux autres promotions du même établissement a montré que le problème lui était propre.

Le résultat

La semaine a commencé par la promotion qui en avait besoin, les chiffres en main pour la discussion avec le comité.

06

Le nouveau client qui a ouvert l’écran et l’a vu à moitié grisé

Le scénario

Un client récemment arrivé a ouvert la carte, s’est étonné de voir fournisseurs, tables et galeries grisés, et en a conclu que le module était cassé.

Avec le système

L’écran l’explique : un type apparaît grisé quand ce module n’existe pas dans la base, et le message en haut indique combien de types sont dans cet état et pourquoi.

Le résultat

La question a été réglée sans ouvrir de demande d’assistance. À mesure que les modules sont entrés en service, les types se sont allumés tout seuls, sans que personne ne paramètre quoi que ce soit.

Glossaire

Les termes de l’écran, en langage clair

Le panneau emploie délibérément le langage métier de tous les jours. Si vous cherchez le vocabulaire de la théorie des graphes, voici ce que chaque terme désigne dans le module.

FicheNœud, ou sommet
Tout ce qui existe sur la carte : une promotion, un diplômé, un contrat, une galerie. Cela vient de la table du module qui la détient, l’intitulé et le détail y étant lus.
ConnexionArête
La relation entre deux fiches, avec un nom et un sens. Un diplômé est dans une promotion, une échéance appartient à un contrat, un billet appartient à un événement.
Adresse de la fichetype:key
La façon dont une fiche est identifiée, par exemple turma:184. C’est la clé primaire dans le module source, et c’est pourquoi le lien continue de fonctionner après toute mise à jour.
VoisinesNœuds adjacents
Tout ce qui est directement relié à une fiche, d’un côté comme de l’autre. C’est ce que le double-clic ouvre dans l’explorateur.
SautÉtape
Chaque passage d’un lien au suivant. D’un billet à sa promotion, il y a trois sauts : billet, diplômé, promotion.
CheminRoute entre deux fiches
La suite de liens qui mène d’une fiche à une autre, cherchée saut par saut et plafonnée à quatre.
TronquéTronqué
Le signalement qu’un lien reçoit quand il compte plus de voisines que la limite. Ce message existe pour qu’une vue partielle ne soit pas prise pour la liste complète.
Type griséModule absent
Le type reste à l’écran, sans couleur, quand sa table n’existe pas dans cette base. C’est ce qui explique pourquoi cet objet n’apparaît pas sur la carte.
Fiche racineEntreprise
L’entreprise est la fiche dont tout dépend, et c’est pourquoi elle ne figure pas dans les listes de départ : elle apparaît sur le chemin de n’importe quelle navigation.
DirectAucune copie
Les lectures se font sur la table source au moment où l’écran s’ouvre. Seul le comptage par type est conservé, et seulement cinq minutes.
Point d’attentionProblème ouvert
Une question de travail à laquelle répond une condition sur les fiches, par exemple un diplômé sans contrat signé. Le chiffre et la liste qu’il ouvre viennent de la même condition.
Fiche en doubleDoublon
Le même document ou le même e-mail dans deux fiches là où une seule devrait exister. La règle de chaque contrôle dit ce qui compte comme doublon.
Points d’attentionScore de la promotion
La somme des problèmes ouverts d’une promotion, chacun multiplié par son poids. C’est ce qui ordonne le classement.

Une carte prête le jour où l’entreprise ouvre l’écran

Nous pouvons ouvrir l’explorateur sur une partie de vos données, dérouler un cas réel du billet jusqu’au contrat et discuter du déploiement adapté à votre activité.