" Samenvatting queries"

Status
Niet open voor verdere reacties.

john64

Gebruiker
Lid geworden
12 jun 2011
Berichten
268
Goedemorgen ,
Of de naam van het onderwerp juiste is weet ik niet, maar ik heb de volgende vraag.
Ik heb 3 tabellen: tblMedewerker, tblRol, tblMedewerkerRol.
Een medewerker kan meerdere rollen hebben, een rol kan door meerdere personen uitgevoerd worden. Zie bijlage.
Verder heb ik een query die per persoon de diverse rollen verzameld en de bijbehorende bevoegdheden laat zien.

Wat ik zou willen is het volgende: Jan mag op basis van toegekende rol manager lezen, en op basis van admin mag hij alles. Klaas mag alleen lezen en schrijven op basis van 1 toegekende rol.

Ik zou in een query (of op andere wijze) willen zien wat Jan allemaal mag. De bedoeling is dat ik dan op basis van toegekende bevoegdheden bepaalde knoppen wel of niet laat zien.
Is het mogelijk om dit in 1 keer te zien? Of moet ik een recordset samenstellen, 1 voor 1 doorlopen:
IF schrijven_bij_rol_1 is TRUE OF schrijven_bij_rol_2 is TRUE OF .... THEN schrijven is TRUE (en dan met juiste VBA code)

Hopelijk is duidelijk wat mijn bedoeling is

alvast bedankt voor meedenken.

mvg
John
 

Bijlagen

Laatst bewerkt:
Ik kan je db pas vanavond bekijken, en die tijd heb ik, als ik je vraag zo lees, wel nodig ook om de vraag te snappen...
Verder heb ik een query die per persoon de diverse rollen verzameld en de bijbehorende bevoegdheden laat zien.
Dat is toch al het antwoord op je vraag?
 
Goedemorgen Michel

Naam Rol Lezen Admin Rapporten Schrijven
Jan Werknemer Ja Nee Nee Nee
Jan Manager Ja Nee Ja Ja
Hans Werknemer Ja Nee Nee Nee
Hans Admin Ja Ja Nee Nee

Jan heeft rol werknemer en mag op basis hiervan lezen. Hij heeft ook rol manager en op basis hiervan kan hij naast lezen, ook rapporten inzien en schrijven (puur fictief, manager moet tenslotte niet te veel kunnen doen ... :cool:)
Wat ik wil is dus in 1 opslag kunnen zien dat Jan mag lezen rapporten inzien en schrijven
Dus iets van een query, of tijdelijk tabel die gemaakt wordt als ik deze nodig heb, met als resultaat:
Naam Lezen Admin Rapporten Schrijven
Jan Ja Nee Ja Ja

Is dit mogelijk ?

mvg
John
 
Lijkt mij niet zo lastig. Ik ga er van uit dat je de verschillende rechten ook in je tabel hebt staan, en dat je er een selectiequery van kunt maken. Daarbij zou ik dan een Totalen query maken, waarbij je groepeert op Naam, Rol niet gebruikt en alle aparte rechten weer wel laat zien. Omdat je hier Ja/Nee velden voor gebruikt, kun je voor die velden de functie SOM gebruiken. Die telt alle waarden dan bij elkaar op. Als je die totalen bekijkt als je de query uitvoert, zul je zien dat de uitkomst ofwel 0 is, ofwel <0, dus -1, -2 of (bij iemand met 3 rollen) -3. Als de uitkomst 0 is bij een rechtengroep, dan houdt dat in dat de persoon die rechten niet heeft; bij al zijn rollen staat dan niets aangevinkt. Is de uitkomst -1 dan is de groep minstens één keer aangevinkt, en bij -2 is de rechtengroep bij beide rollen aangevinkt.
Omdat je alleen wilt zien òf iemand rechten heeft of niet, is het dus voldoende om te controleren of de waarde 0 is (geen rechten) of <= -1 (minstens één keer aangevinkt).
 
Laatst bewerkt:
Hallo Michel,

Even snel geprobeerd om deze totalen query te maken, dit gaat werken. Zal het vanavond in mijn echte database invoeren, maar daar kom ik uit.
Thnx

mvg
John
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan