Jump to content
  • 0

Portaal met 4 relaties


Proteus

Question

Posted

Ik gebruik momenteel een database met 4 relaties via globale velden. Dat is geen probleem, loopt goed. Het enige nadeel vind ik dat nu alle 4 de globale velden ingevuld moeten zijn voordat ik het resultaat zie. Is het ook mogelijk om nadat het eerste veld ingevuld is, je al meteen in het Portaal alle records ziet die voldoen aan het eerste veld, vul je het tweede veld in krijg je het resultaat van het eerste en tweede veld. 3 en 4 zijn dan nog blank. En zo verder tot je bij de records bent die aan de eisen van de 4 globale velden voldoen.

6 answers to this question

Recommended Posts

  • 0
Posted

Je kunt gaan experimenteren met het portaalfilter. Het kan zijn dat je even moet puzzelen voor het juiste resultaat, maar hiermee kun je er wel voor zorgen dat je resultaten zich aanpassen aan de hand van de al dan niet ingevulde velden (globals).

  • 0
Posted

Je kan ook in de gekoppelde tabel de velden samenvoegen in een calculatieveld, en daarop filteren met één globaal veld. Gebruik in het portaalveld dan een patterncount formule.

 

Door scriptriggers op het portaalveld te zetten kan je het portaal laten bijwerken terwijl je typt.

  • 0
Posted
Je kan ook in de gekoppelde tabel de velden samenvoegen in een calculatieveld, en daarop filteren met één globaal veld. Gebruik in het portaalveld dan een patterncount formule.

 

Door scriptriggers op het portaalveld te zetten kan je het portaal laten bijwerken terwijl je typt.

 

Hiervoor kan je ook de CF "FindWordPartsInText( Zoekenveld ; zoekeninveld1 & ¶ & zoekeninveld2 & ¶ & zoekeninveld3...)" gebruiken.

 

http://filemakerinspirations.com/2010/10/dynamic-portal-filtering-while-you-type/

 

Gr.

Hamit Ozsonmez

  • 0
Posted

Het gaat om een database die ik gemaakt heb voor een verzameling, hierin zitten 4 velden, numeriek, die refereren aan afmetingen, lengte, diameter bodem, diameter top en diameter nek. Deze velden kun je niet aan elkaar koppelen of via een filter met elkaar verbinden. Nu heb ik 4 portalen naast elkaar, waarvan de eerste via een relatie op het 1ste getal werkt, het 2de portaal op veld 1 en 2 en zo verder.

  • 0
Posted

Je gebruikt 4 globale velden als keys naar 4 corresponderende velden in je gerelateerde tabel.

 

Dat is dus eigenlijk een relatie die aan alle voorwaarden moet voldoen voor een 'hit' om zo te zeggen. Een EN-EN voorwaarde.

 

Je zou kunnen kiezen voor een andere constructie in de gerelateerde tabel, waarmee je een OF-OF voorwaarde creëert.

Stel je hebt 4 tekstvelden A, B C en D.

Je maakt dan een berekend veld E (opgeslagen berekening!) dat met de volgende formule:

= A &¶ & B & ¶ & C & ¶ & D & ¶ & ( A & " " & B & " " & C & " " & D )

 

Dat veld E (type tekst!) is dus een soort index veld met allerlei combinaties van waarden.

Als je nu je globale velden ook via eenzelfde formule combineert tot sleutelveld, en dat sleutelveld koppelt ipv de 4 afzonderlijke globals, dan kun je met die relatie bereiken wat je wilt, door de berekening goed in te stellen.

 

NB je maakt dus gebruik van een multi-value key, aan beide zijden van de relatie. FileMaker is bij mijn weten de enige database die dit mogelijk maakt en het geeft ongekende flexibiliteit. Het is natuurlijk alleen voor dit soort doeleinden, niet om een factuur aan factuuregels te koppelen...

 

De oplossing met een Filter werkt ook prima, maar:

- bij grote aantallen gerelateerde records is een filter traag

- je kunt niet zomaar een aantal of som berekenen over de gerelateerde set

- je kunt niet met een GTRR de gerelateerde set selecteren

- een gecombineerd filter is best lastig

  • 0
Posted

Hans-Erik, ik heb je formule geprobeerd, als ik nu de velden invul geeft hij inderdaad alle waarden die ik dan opgeef, maar niet alleen maar de records die voldoen aan 2 of 3 velden. Geef ik b.v. voor A 10 in, laat hij inderdaad alle velden van A zien waar een 10 in staat. Is echter de waarde in veld B 20, dan zou hij moeten geven alle velden waar A = 10 en B = 20. Nu geeft hij wel alle B velden met 20 maar ook alle A velden met andere waarden als 10.

 

Mathieu

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...