|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Nouveau Membre du Club
![]() Inscription : mai 2006 Messages : 83 ![]() |
Bonjour,
J'aimerais savoir s'il est possible d'afficher ou non des invites selon les droits des utilisateurs : Imaginons : user1 est directeur et user2 simple utilisateur. Ils ont accès au même rapport sous Webi. User1 doit pouvoir filtrer sur plusieurs objets (par exemple, choisir un utilisateur dans une liste et afficher le rapport de cet utilisateur) tandis que User2 ne peut voir que les données qui le concernent (il n'a pas le droit de voir un autre utilisateur que lui-même). Par contre, on peut imaginer que les deux auront la possibilité de choisir une période. Le nombre de "profils" étant conséquent, est-il possible de jouer sur l'affichage d'invites plutôt que de refaire le même rapport pour chaque profil? Merci d'avance! |
|
|
00
|
|
|
#2 | ||||
![]() ![]() Julien LizzulInscription : mars 2008 Messages : 1 103 ![]() |
Bonjour,
A ma connaissance, on ne peut pas, sur un même objet (filtre) appliquer 2 restrictions différentes. Il existe tout de même un moyen mais il s'appliquera dans tous les rapports. Il s'agit des surcharges. J'ai un user1 et un user2. User1 ne doit avoir accès qu'à son profil et user2 a une invite. Il faut aller dans les restrictions d'accès au niveau du designer > Nouveau. Dans l'onglet lignes, Ajouter. On arrive alors à une liste de table avec une clause where à appliquer. Je prends par exemple la table employés. Code :
Il faut créer la seconde restriction pour user2 : restrictions d'accès > Nouveau. Dans l'onglet lignes, Ajouter. Code :
Maintenant, il faut appliquer les restrictions aux utilisateurs : restrictions d'accès > Ajouter un utilisateur ou un groupe On ajoute l'utilisateur ou le groupe, on clique sur la restriction souhaitée pour cet utilisateur ou groupe, et on applique. Dorénavant, lorsque user1 se connectera à un rapport qui pointera sur la table Employé, il ne verra que ce qui le concerne, lorsque user2 se connectera aus mêmes rapports, il aura une invite lui demandant quels employés ils souhaitent visualiser. N'hésite pas si tu as des questions sur cette méthode. Bon courage
__________________
|
||||
|
|
00
|
|
|
#3 | ||
|
Nouveau Membre du Club
![]() Inscription : mai 2006 Messages : 83 ![]() |
Salut Julien,
Merci pour ta réponse. Je n'ai pas abandonné le sujet et j'ai bien étudié ta solution même si je ne ne te réponds que maintenant. J'ai testé ta solution mais elle ne convient pas car le directeur ne veut pas avoir à choisir un employé à chaque fois qu'il ouvre le rapport. Je m'explique : la hiérarchie est de ce type : société --> groupe --> lieu --> equipe --> utilisateur Pour ces rapports, il y a une invite par hiérarchie (quelle(s) société(s)? quel(s) groupe(s)? etc.). l'utilisateur basique, c'est simple, ne peut voir que ce qui le concerne : même s'il ne renseigne rien, le rapport s'actualise sur ses données. Je dis même s'il ne renseigne rien car il ne veut pas avoir à renseigner toutes les invites à chaque fois qu'il ouvre son rapport. le directeur, quant à lui, peut faire tout ce qu'il veut : renseigner les différents niveaux de hiérarchies ou non (dans ce cas, il a l'ensemble des données du niveau). En gros, s'il ne renseigne rien, il a toutes les sociétés, tous les groupes etc. Je m'en suis finalement sortie en créant une table de gestion des différents profils qui contient, pour chaque profil, l'ensemble des données auquel il a droit pour chacun des niveaux. Par exemple : Code :
J'affecte cette restriction à tous les utilisateurs et le tour est joué : chaque utilisateur voit ce à quoi il a droit, qu'il renseigne ou non les différentes invites. Et s'il veut renseigner les invites, la liste de valeurs ne contient que les données autorisées. Le seul bémol est que si le directeur répond Soc_A à l'invite 1 (quelle(s) société(s)?), la liste des valeurs de l'invite 2 (quel(s) groupe(s)?) contiendra Grp_A1, Grp_A2, Grp_B1 au lieu de ne contenir que les deux premières En fait, ta solution répondait bien à ma question, c'est moi qui ai été trop simpliste dans mon explication. Voilà, c'était pour apporter plus de détails et te faire un retour sur ta solution, je laisse le sujet ouvert encore un peu, au cas où qq a une solution sur le petit bémol |
||
|
|
00
|
|
|
#4 |
![]() ![]() Julien LizzulInscription : mars 2008 Messages : 1 103 ![]() |
Merci pour le retour
![]() Bien sûr que ma solution répondait à ta question ![]() Plus sérieusement, je pense que tu y gagnerais à passer par des surcharges. Tu peux gérer tous les cas indépendamment les uns des autres et plus facilement qu'au travers d'une table. Concernant ton problème des groupes pour le directeur, il suffit de faire une invite en cascade. N'oublie pas de cliquer sur
__________________
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com