Bonjour,
Nouvel utilisateur de Grist, je suis confronté fonctionnalité que je n’arrive pas à mettre en œuvre malgré mes recherches, je me permet donc une petite demande d’aide ici.
J’ai une table ‹ Tableau de suivi › dont je souhaite filtrer l’affichage des lignes suivant l’utilisateur connecté.
Dans cette table, j’ai une colonne ‹ Commune › (type choix unique - 13 items différents).
Dans une autre table ‹ Utilisateurs ›, je stocke mes users avec deux colonnes : ‹ Email › et ‹ Communes › (choix multiple).
Je souhaite donc que l’utilisateur identifié ne voit que les lignes dont il a l’accès.
J’ai tenté pas mal de choses à base de =$user.Email mais en vain, je n’y arrive vraiment pas…
Si quelqu’un à déjà mis cela en œuvre et pourrait me guider ce serait super chouette svp !
Pour ne pas dupliquer de la donnée (ici vos communes), le mieux c’est que vous créiez une table « Communes » dans laquelle vous stockez toutes vos communes.
Ce sera votre source unique de données de communes.
Dans votre table utilisateur, la colonne « Communes » sera une référence multiple vers votre table commune.
Et dans votre table tableau de suivi, la colonne « Commune » sera une référence simple vers votre table commune.
Ensuite, dans les permissions, vous mettez comme règles sur « tableau de suivi »
rec.Commune in user.attr.Communes → autoriser tout
qui signifie : si la commune de ma table « tableau de suivi » fait partie de la liste des communes de mon utilisateur (attr = variable correspondant à l’appairage), alors il peut tout faire.
Est-ce que cela pourrait fonctionner pour vous ?
Pour comprendre comment fonctionnent les permissions invincées, je vous conseille cette vidéo :