FileMaker - Tip 129

 

Klik op om terug te keren naar het selectiemenu.

Tip 129 - Is een bepaald FileMaker-bestand geopend of niet?

Deze keer een vraag waarbij we gebruik maken van een van de Design-functies: hoe kan ik zien of een bepaalde databank geopend is of niet?

Dat kan heel eenvoudig door de Design-functie DatabaseNames te combineren met de PatternCount-functie*: de eerste functie geeft een lijstje van alle open bestanden en met PatternCount kunnen we nagaan of ons bestand daar tussenstaat.

Stel dat we willen weten of de databank Facturen al geopend is. In het script maken we dan gebruik van de If-functie gecombineerd met

PatternCount (DatabaseNames, "Facturen") > 0

De If-functie geeft een affirmatief antwoord (True, T, Yes, Y of 1) als de naam Facturen voorkomt in de lijst van databanknamen.

Natuurlijk zit hier een flinke adder (en geen angel...) onder het gras: het kan voorkomen dat een bestandsnaam ook een deel is van een andere bestandsnaam: we willen weten of het bestand Main.FP5 open is, terwijl we ook een bestand Maintenance.FP5 hebben. Daar moeten we dus wel rekening mee houden**.


*

Denk eraan dat PatternCount niet case sensitive is: zoeken met of zonder hoofdletters, het maakt niet uit (zie Tip 155)!

**

Dit is dan weer op te lossen via de Substitute-functie waarbij de ¶-tekens vervangen worden door pipes (|), maar dat valt toch wel buiten het kader van de (eenvoudige) tip van de week... Toch voor de freaks - en met dank aan Stef van Willcom:

PatternCount ( "|" & Substitute( DatabaseNames; "¶" ; "|" ) &"|", "|Facturen.fp5|") > 0

 
avd@avd-ci.be - contactformulier