Atelier 4 : Le portail client
Niveau ouvrir · Durée ~45 min · Prérequis Atelier 2
Ouvrir un accès à ses clients est le moment où une application interne devient un service. C'est aussi le moment où une erreur de réglage se voit : un client qui voit les devis d'un autre, c'est un incident.
Cet atelier construit l'accès dans le bon ordre : d'abord qui voit quoi, ensuite seulement qui entre.
Étape 1 : L'objet Client
Le portail a besoin d'une fiche par client : c'est elle qui identifiera la personne dans vos données.
Studio → Objets → Nouvel objet : Client, icône 🏢. Champs :
| Libellé | Type |
|---|---|
| Nom | Texte court |
| Texte court | |
| Actif | Oui / Non |
Créez trois clients, avec des adresses e-mail que vous contrôlez (des alias de votre propre boîte, par exemple vous+client1@…) : ils recevront de vrais courriels.
Étape 2 : Relier les devis aux clients
Sur l'objet Devis de l'atelier 2, remplacez le champ texte Client par une vraie relation :
- + Ajouter un champ : libellé
Client, type Relation vers un objet, objet cible Client. (Si le codeclientest pris par l'ancien champ texte, renommez-le d'abord ou nommez celui-ciClient (fiche).) - Sur quelques devis, renseignez ce champ.
Sans cette relation, aucun cloisonnement n'est possible : le portail a besoin de savoir de qui est un devis.
Étape 3 : Le profil d'accès
Un profil décrit ce qu'un client peut voir et faire. C'est le cœur de l'atelier.
Studio → onglet Extranet → Profils d'accès → Nouveau profil, nommé Client portail.
Pour l'objet Devis :
- Actions : cocher
Lireseulement. - Périmètre :
Client= moi. C'est la ligne qui cloisonne : chaque client ne verra que les devis dont la fiche client est la sienne. - Champs visibles : Référence, Date, Statut, Total HT, Net à payer. Laissez
Remise (%)décochée.
Pour l'objet Ligne, ajoutez Lire avec un périmètre par chemin Devis → Client = moi, et les champs Désignation, Quantité, Montant.
Un profil externe sans périmètre ne montre rien du tout (refus par défaut) — jamais tout. C'est délibéré : l'oubli le plus courant ne doit pas être celui qui expose les données.
Le profil liste deux objets, chacun avec son périmètre. Rien d'autre n'est accessible : ce qui n'est pas déclaré n'existe pas pour le client.
Étape 4 : Ouvrir les comptes depuis l'objet Client
Vos clients sont déjà en base : inutile de les ressaisir.
- Studio → Extranet → Clients portail → Ouvrir depuis un objet.
- Objet source : Client. Profil d'accès portail : Client portail.
- Correspondance des champs : GesHoms devine
Email,Nom,Actifd'après leurs noms. Corrigez si besoin. - Cocher N'inviter que les fiches actives.
- Analyser : lisez le décompte, fiche par fiche.
- Inviter N clients.
Chaque compte créé est rattaché à sa propre fiche : c'est ce rattachement qui alimente le = moi du périmètre. Sans lui, le client ne verrait rien.
Le bilan annonce le nombre d'invitations avant l'envoi. Vérifiez-le, surtout la première fois.
Étape 5 : Vérifier par les yeux du client
C'est l'étape que l'on saute et qu'il ne faut jamais sauter.
- Activez l'un des comptes depuis le courriel reçu : le lien suffit, il n'y a pas de mot de passe à choisir.
- Connectez-vous au portail (fenêtre de navigation privée, pour ne pas mélanger les sessions).
- Vérifiez trois choses :
- le client voit ses devis, et seulement les siens ;
- la colonne
Remise (%)n'apparaît pas ; - aucun bouton de création n'est proposé (vous n'avez accordé que
Lire).
Si vous exposez un champ calculé qui s'appuie sur Remise (%), il ne sera pas servi : GesHoms coupe un calcul dont une dépendance est masquée, sinon la remise serait déductible du résultat. Voir Gérer le portail.
Étape 6 : Une page d'accueil pour le portail
Par défaut le client arrive sur une liste. Composez-lui un accueil.
- Studio → Extranet → Pages portail → Nouvelle page, nommée
Accueil. - Cocher Page d'accueil du portail.
- Composer : un bloc Bandeau de bienvenue, un Indicateur « Mes devis en cours », un bloc Liste d'enregistrements sur Devis.
- Publier.
Rechargez le portail avec le compte client : il arrive sur votre page.
À vous de jouer
Exercice 1 — Le client valide son devis
Autorisez le client à passer un devis de « Envoyé » à « Accepté », sans rien pouvoir modifier d'autre.
Corrigé
Dans le profil, sur Devis : ajoutez l'action Modifier, et limitez Champs modifiables au seul Statut. Pour empêcher la modification d'un devis déjà accepté, utilisez une condition d'action sur l'état (update seulement si Statut est Envoyé). Les champs visibles restent inchangés.
Exercice 2 — Un client inactif
Passez un client à Actif = Non. Que se passe-t-il pour son compte ?
Corrigé
Rien. Le champ Actif de la fiche ne pilote pas le compte : il n'a servi qu'à filtrer les invitations. Pour couper l'accès, allez dans Clients portail et cliquez sur Désactiver : l'accès est coupé immédiatement, aucune donnée n'est touchée. Retenez la distinction : la fiche décrit votre client, la membership décrit son accès.
Exercice 3 — Le devis en PDF côté client
Donnez au client la possibilité de télécharger le PDF « Devis client » de l'atelier 2.
Corrigé
Dans le profil d'accès, section Documents de l'objet Devis : cochez le modèle Devis client. Sans cela, le document n'est pas proposé au portail — et le rendu projette de toute façon les champs visibles, un modèle qui référence un champ masqué n'en révèle pas la valeur.
Exercice 4 — Deux fiches, une adresse
Créez un quatrième client avec la même adresse e-mail qu'un client existant, puis relancez l'ouverture depuis l'objet.
Ce qu'il faut observer
Un seul compte existe par adresse : le bilan compte la fiche comme « déjà en place » et ne crée rien. Le rattachement du compte reste celui posé la première fois. Si un client a deux fiches, c'est la donnée qu'il faut corriger, pas l'accès.
Ce que vous avez appris
- Le portail se règle dans l'ordre : périmètre d'abord, comptes ensuite.
- Le rattachement d'un compte à une fiche est ce qui donne un sens au périmètre
= moi. - Un profil externe est fermé par défaut : ce qui n'est pas déclaré n'existe pas.
- Les comptes s'ouvrent en masse depuis un objet, sans ressaisie et sans toucher aux comptes existants.
- Un champ calculé ne peut pas contourner un champ masqué.
Atelier suivant : Automatiser et cloisonner.