Jump to content
  • 0

Werken met found sets in FM8


Johnny

Question

In een personen database wil ik gaan werken met verschillende gebruikers (zo'n 100 in totaal) die ieder hun eigen found set krijgen toegewezen. Ik stel me voor dat inloggen ervoor zorgt dat iedere user zijn eigen found set krijgt toebedeeld. Maar wat gebeurd er als een user 'alle records' kiest? Dat hij/zij alle records ziet! En dat is niet de bedoeling, de user moet in zijn eigen found set blijven.

Hoe pak je zoiets handig aan, zonder dat je in eindeloze hoeveelheden scripts geraakt? Is daar in FM misschien een algemene voorziening voor die ik nog niet heb ontdekt?

Omdat iedere user ook nog een eigen password moet hebben kan ik dat misschien aan elkaar koppelen?

 

Jan Sterenborg

Link to comment

2 answers to this question

Recommended Posts

  • 0

Ik heb een "projectbeveiliging" in één van mijn pakketten zitten, waarbij ik per project kan aangeven welke gebruikers toegang mogen krijgen.

In het record van het project zit een veld, die de accountnamen moeten bevatten van alle gebruikers die toegang moeten kunnen krijgen.

Daarbij is het zo ingesteld, dat als er geen tekens in dat veld staan, ALLE gebruikers toegang krijgen. Dit voorkomt dat direct na het aanmaken geen van de gebruikers meer toegang zou hebben tot het nieuwe project.

 

Dus: Tabel Project bevat veld "Toegangsrechten".

 

En: een veld "StatusCurrentRecordAccess" waarin de formule

 

Get ( RecordAccess )

staat, zodat deze is uit te lezen op voldoende rechten om het betreffende record te mogen zien.

 

 

En nu:

Aanmaken van accounts, zoals je al aangeeft gebeurt dat dus al.

 

En vervolgens:

In de betreffende privilegesets mag je op de tabellen onder View de boel gaan limiteren met de volgende formule:

 

Toegangsrechten = "" or PatternCount( Toegangsrechten ; Get ( AccountName ) ) > 0

 

Zorg er vervolgens voor dat tijdens het openen van het bestand er een zoekactie wordt uitgevoerd op veld StatusCurrentRecordAccess waarin de toegangsrechten zichtbaar wordt gemaakt.

De zoekactie is bij mij ook van een script voorzien, deze vult automatisch al het zoekargument "> 0" in op veld "StatusCurrrentRecordAccess".

 

Er zit één groot nadeel aan deze constructie: bij grote hoeveelheden records is het niet bepaald flitsend snel....

 

In mijn applicatie valt dat mee, door de top-down benadering vind de zoekactie plaats op projectnivo, daar zitten doorgaans weinig records in.

Kostenregels, begrotingsregels etc. zijn vele malen groter en hebben dan een echt performance probleem.

Link to comment
  • 0

Bedankt voor je uitleg.

Ik zit nog met het volgende: in mijn projectendatabase maken users gebruik van de mogelijkheid om standaard briefjes op te stellen, popup's zelf te formeren etc. Dat is keurig geregeld via een tabel met een permanente relatie (in die tabel slechts 1 record). Geen probleem. Maar ik wil niet dat users elkaars standaard briefjes gebruiken, nee, het moet zo zijn dat iedere user zijn eigen set standaard briefjes, popup's etc. kan aanmaken. Hoe kan je dat het beste aanpakken?

 

Johnny

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...