Bonjour,
Nous avons une table BASE ABSENTEISME (remplie d’info élèves) dont la cheffe de service est propriétaire.
Cette table est alimentée par 5 personnes du service (en fonction du secteur géo de l’élève : DEL1, DEL2, DEL3, DEL4, DEL5), elle contient donc une colonne $secteur (avec choix unique DEL1, DEL2, DEL3, DEL4, DEL5).
Nous voulons que les collègues puissent éventuellement lire toute la base mais écrire seulement dans leur secteur géographique. L’idéal étant un affichage par défaut avec seulement leur secteur.
En créant 5 tables à partir de BASE et en filtrant sur la colonne $secteur je permets bien aux 5 collègues d’écrire et voir sur leur secteur mais je voudrais aller plus loin pour sécuriser les choses.
En effet j’ai créé une table Droits qui contient les colonnes Email / Secteur / Lire / Ecrire pour que la cheffe de service puisse gérer facilement qui peut lire ou écrire dans sa table BASE. (voir ma capture d’écran)
Je cherche de l’aide pour trouver les bonnes lignes à mettre dans les permissions avancées car tout ce que j’ai déjà essayé ne fonctionne pas … la formule que les I.A. me proposent est user.Email in Droits.lookupRecords(Lire=True).Email
et celle-ci renvoie une erreur “Unknown variable ‹ Droits ›”.
J’espère avoir été claire, merci pour l’aide qui pourrait m’être apportée, je sèche !!
Bonjour, je pense que ces permissions répondent à vos besoins (je n’avais jamais pensé à configurer les droits de lecture et d’écriture de façon granulaire dans la table des utilisateurs, c’est une bonne idée !).
Voici un exemple interactif (vous pouvez « Voir en tant que » pour constater que Pierre Dupont voit la ligne DEL1 sans pouvoir l’éditer, alors que Jeanne Durand voit la ligne DEL2 et peut l’éditer, ou ajouter une ligne) : Droits gérées par table - Grist
Bonjour,
merci beaucoup Antoine pour votre réponse rapide !!
J’ai testé sur mes tables et enfin je n’ai plus de message d’erreur dans les permissions avancées.
Cependant ma base ne fonctionne pas encore tout à fait correctement (mes utilisateurs ne voient que DEL1 et ne peuvent pas écrire )
Pour me corriger j’aurais aimé voir votre exemple interactif (merci bcp) mais je suis bien embêtée car lorsque je tente d’y accéder j’ai une erreur " Insufficient access to document to copy it entirely"
Je pense que c’est bon ! Pour ce faire j’ai dû donner aussi des droits au rôle EDITOR : n’en tenez pas compte, seul ce qui apparaît sur la capture d’écran compte !
Merci j’ai pu voir votre exemple.
Avec ces règles, cela fonctionne, chaque secteur est accessible en lecture et/ou en écriture à un utilisateur.
Dans notre service certains utilisateurs doivent pouvoir écrire ou lire dans plusieurs secteurs or j’ai l’impression que les règles ainsi posées sont exclusives. pierre.dupont ne peut lire et écrire que dans DEL1 (même si des droits lui sont donnés pour DEL1 et DEL2 dans la table Droits)
Exemple : pierre.dupont doit pouvoir lire DEL1 Et DEL2 mais n’écrire que dans DEL1
Ah oui pardon, en plus c’était évident dans ta première capture d’écran… j’ai simplifié à outrance le problème !
Dans ta situation, il faut penser autrement la structure de la table Droits, car les droits d’un utilisateur ne peuvent être gérés que sur une seule ligne. Voici ce que ça donne :
Super !! Tout fonctionne à merveille.
Merci beaucoup Antoine, tu as été bien plus efficace et rapide que l’I.A. (j’avais passé plusieurs heures à creuser à l’aide les tutos /webinaires puis l’I.A. car je pars de zéro sur Grist)
Tant mieux, c’est vrai que c’est une mécanique pas évident au début ! Moi j’ai un peu appris de l’IA mais surtout du forum, et en faisant : maintenant je n’utilise l’IA que quand j’ai une bonne intuition de ce que je dois faire, mais que je bute sur la formule…