FileMaker Tip 238
![]()
Globals en variabelen (deel 1)
Wat een globaal veld is, hebben we vroeger al eens uitgelegd: kijk maar in Tip 156. Heel bondig samengevat, komt het hierop neer: het is een veld dat dezelfde inhoud heeft voor alle records.
Wat kunnen we aanvangen met zo'n globaal veld? De toepassingen zijn onbeperkt. Meestal stoppen we er via een script tijdelijke waarden in die voor elke record geldig zijn, zoals bijvoorbeeld een vermenigvuldigingscoëfficiënt. We kunnen globals ook gebruiken als alternatief voor het clipboard van het operating system (Mac of Windows), zodat dat vrij blijft voor andere toepassingen (Word, Excel...). We kunnen dan waarden van de ene plaats naar de andere overbrengen zonder copy and paste: we doen een SetField van onze waarde naar een global (het kopiëren), en daarna van die global naar de doelplaats (het plakken).
Tot en met FileMaker 6 was een globaal veld een veld van het type "global" (andere mogelijke types zijn text, number, date enzovoort). Na het definiëren van zo'n veld konden we nog aanklikken wat we in het veld wilden bewaren: tekst, getallen, een datum enzovoort.
Vanaf FileMaker 7 is een globaal veld niet langer een apart veldtype. We kunnen wel voor elk veldtype (tekst, getal, datum...) aangeven dat het globally stored moet zijn. Voor ons komt het natuurlijk op hetzelfde neer. Of toch niet... Vermits de nieuwe globals geen aparte veldtypes meer zijn, hebben ze ook geen record meer nodig om op te staan. We kunnen globale waarden dus zonder probleem stockeren in een lege tabel, een tabel dus die geen enkele record bevat. Als dat geen straffe kost is (wink)...
Een heel speciale eigenschap van globale velden is dat ze op een netwerk eigen zijn aan elke computer - dus ook aan de server! - : iedere gebruiker in het netwerk kan zijn eigen waarden gebruiken. Dat is ook logisch. Stel dat we op een bepaalde record of in een bepaalde lay-out staan, dat we ergens anders naartoe willen en dat we daarna weer terug naar de vertrekplaats willen. In dat geval laten we het record- of het lay-outnummer bij het vertrek achter in een global, en keren we later naar dat nummer terug. Als iedereen dezelfde waarde in het globaal veld zou moeten delen, dan zou elke gebruiker naar hetzelfde record terugkeren en dat is zeker niet de bedoeling. Bij het opstarten in een server-configuratie krijgt elke gebruiker wel de toestand terug zoals die oorspronkelijk was toen het bestand op de server werd gezet, dus met de global die op dat ogenblik geldig was. Sommige mensen vinden dat knap vervelend!
Meer info in de volgende tip.
Terug naar het selectiemenu voor de tips.