Jump to content
  • 0

Alternatief voor Ga Naar Gerelateerde Record


WimT

Question

Posted

Ik heb in mijn programma 46 verschillende onderzoeken, elk met een eigen layout. Afhankelijk van een een keuze in een koppeltabel wil ik naar de juiste layout (en tabel) gaan.

In de variabele $Layoutnaam staat de layoutnaam, en de variabele $tabelnaam bevat de tabelnaam.

Om naar de juiste layout te gaan, gebruik ik hiervoor 46 keer

if [ $OzDefID = 2]
Ga naar gerelateerde Record[Tabel:Ontstaan Vermoeidheid; Layout: Ontstaan Vermoeidheid]
else if [$OzDefID = 3]
Ga naar gerelateerde Record[Tabel:Fuduko; Layout: Fuduko]
else ....

//en dit zo voor alle 46 mogelijke onderzoeken.

In de Ga naar gerelateerde Record moet ik de tabel kiezen uit 1 van de bestaande tabellen (drop down list), maar de layout kan ik door berekening kiezen, bijv door $LayoutNaam.

Is er niet een manier om een functie te maken, die hetzelfde doet op basis van de variabelen $tabelnaam en $layoutnaam?

Zie ook bijgevoegde screendump van het eerste deel van het script.

5a758dcd4c31a_VoorbeeldGanaargerelateerdelayout.png.f6e1c7d411cfbd37ea294b12ed6f1efd.png

5 answers to this question

Recommended Posts

  • 0
Posted

Zit je datamodel wel goed in elkaar? Waarom voor elk onderzoek een aparte tabel? Als je bang bent voor te veel velden in een tabel kun een voorloop code aan je velden meegeven die aangeeft bij welk onderzoek ze horen zodat ze gegroepeerd zijn. Als het echt uit de hand loopt kun je nog subtabellen maken waarbij als je een onderzoeksrecord aanmaakt automatisch een gerelateerd record in de subtabel wordt aangemaakt.

 

Je kunt meerdere layouts maken voor dezelfde tabel en bij de scriptstap 'naar gerelateerde record' aangeven in welke layout je belandt

  • 0
Posted

De layouts hebben ook nummers

Kun je je variabele OzDefID niet het gewenste layoutnummer laten berekenen?

 

Dan heb je maar een klein scriptje nodig

variabele instellen $patientID

ga naar layout nr OzDefID

zoek $patientID

of stel veld in $patientID

afhankelijk van hoe je je layouts laat werken

 

Bezwaar is dat als je een layout verwijderd uit de reeks je je berekening moet aanpassen.

  • 0
Posted

Goed punt van FMwebshop maar zoals hij zelf al aangaf is de nummering niet hard. Filemaker geeft wel zelf ID's aan layouts die nooit meer veranderen.

 

Wat ik zelf altijd doe is een tabel aanmaken met de velden ID_Layout en LayoutNaam. Met een script verzamel je alle layoutnamen en ID's binnen de applicatie en maak je daar records van.

 

Je verwijst nu niet naar een layoutnaam maar naar een record waarin de layoutnaam is vastgelegd waarmee je vrij bent in het wijzigen van layoutnamen zonder dat je scripts hoeft te updaten. Het enige wat je hoeft te doen is na het wijzigen of toevoegen van een layoutnaam het script om de layout-records aan te maken opnieuw te runnen zodat de namen worden geupdate.

 

Dit geeft ook weer de mogelijkheid om gebruikersgroepen aan te maken die naar verschillende layouts worden verwezen.

  • 0
Posted

Dank voor jullie meedenken.

Ik kan heel goed vanuit de layoutnaam het layoutnummer vinden.

Maar het commando "ga naar gerelateerde record" vraagt om een exacte tabel naam. De layout kan dan (desgewenst) middels een berekening (zowel op naam, als op nummer) opgegeven worden.

het probleem zit hem in de tabel naam.

Dus eigenlijk zoek ik een script met als argumenten "tabel naam", "layout naam / of layout id" dat hetzelfde doet als "ga naar gerelateerde record".

Eigenlijk snap ik niet zo goed waarom er een tabel naam opgegeven moet worden als er een layout naam of -id opgegeven wordt, want door het opgeven van de layout is toch altijd ook de tabel bekend?!

5a758dcd68ab2_VoorbeeldGanaargerelateerdelayout2.png.a25cd900fcc6fb6143c9a44abbfdb5d9.png

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