U1 · Bases de données mères et sous-pages · Lecture · 20 min

Comprendre : Bases de données mères et sous-pages

Le chapitre 2 t'a donné le processus réel de Vermont. Cette fiche le traduit en structure de données — c'est le premier acte de conception du module, et celui qui conditionne tout le reste.

Une base par objet métier

Un objet métier est une chose dont l'entreprise parle au quotidien, qui a une existence propre et une durée de vie. Le test : la phrase « untel a plusieurs… » a-t-elle un sens ? Un client a plusieurs demandes : demande est un objet. Un client a plusieurs statuts : non — le statut est une propriété.

Chez Vermont, les entretiens font apparaître cinq objets : Client, Demande, Devis, Chantier, et Partie prenante, cette dernière servant au cadrage lui-même.

Demande et Devis méritent d'être séparés, même si l'un découle souvent de l'autre : toutes les demandes ne donnent pas lieu à un devis, et un projet peut en recevoir plusieurs versions. Les fusionner rendrait impossible le calcul du taux de transformation — précisément ce que le gérant veut savoir.

Jamais une base par projet

La tentation est forte de créer une base « Chantier Lauriol », une base « Chantier Ferrand ». C'est le même piège que la page par client, en pire : chaque nouvelle base a ses propres colonnes, et plus rien ne se compare. Une base contient tous les chantiers ; un chantier est une ligne.

Où placer les bases

À la racine de l'espace d'équipe, dans une page Données, et jamais enterrées dans une sous-page thématique. Les vues liées se chargent ensuite de les faire apparaître partout où elles servent, sans les déplacer ni les dupliquer. Une base est un entrepôt : on n'y va pas, on s'y branche.

Sous-pages : légitimes ou non

Légitime — un contenu unique attaché à une ligne : le compte-rendu de visite dans la page d'une demande, les photos dans la page d'un chantier, le plan scanné. Ce contenu n'existe que pour cette ligne et n'a pas vocation à être comparé.

Illégitime — recréer une hiérarchie dans le corps des pages. Si tu crées dans la page du client Lauriol une sous-page par demande, tu réinventes à la main ce qu'une relation fait mieux : tes sous-pages ne seront ni filtrables, ni comptables, ni visibles ailleurs.

Pour une hiérarchie à l'intérieur d'une même base — un chantier découpé en lots, par exemple — Notion propose la propriété Sous-élément, qui garde tout dans la base et donc tout interrogeable.