FileMaker - Tip 163

 

Klik op om terug te keren naar het selectiemenu.

Tip 163 - Set Error Capture On - Nuttig, maar erg gevaarlijk!

Eerst "Nuttig!"

Rony Rabijns wees er al op dat de scriptstap Set error capture on bijzonder nuttig is. Dank zij die stap kunnen we FileMaker-foutmeldingen onderdrukken, zodat we die kunnen vervangen door onze eigen meldingen. Een typische toepassing hebben we in Find-scripts: wanneer niets gevonden wordt, is het vaak interessanter zelf een foutmelding te genereren, omdat de FileMaker-melding meteen voorstelt opnieuw naar Find Mode te gaan, en vaak hebben we dat helemaal niet nodig (bijvoorbeeld wanneer we gezocht hebben naar alle openstaande facturen).

Zo'n script kunnen we dus het beste beginnen met Set Error Capture On.

 

En nu: "Gevaarlijk!"

Maar hier is wel een flinke caveat: "Oppassen is de boodschap!", zegt Theo Tromp, en gelijk heeft hij! Zo'n Set Error Capture On aan het begin van het script werkt immers voor het integrale script, tenzij we die optie ergens weer uitschakelen (via Set Error Capture Off). En dat uitschakelen is eigenlijk een must: er kan altijd nog wel iets mislopen, en dan moeten we de FileMaker-warning message dankbaar zijn.

Theo Tromp geeft daarna twee typische toepassingen om de Set Error Capture On te gebruiken in combinatie met Set Error Capture Off: bij het afdrukken en bij het zoeken:

Set error capture On
Print
Set error capture Off

En:

Set error capture On
Perform Find
If Status(CurrentError) = ....

End If

Set error capture Off

Indien een andere scriptstap na de printopdracht een (fout)melding kan geven (bijvoorbeeld bij een record lock*), dan wordt deze melding bij Set Error Capture On NIET getoond aan de gebruiker. Dit kan voor onverwachte resultaten zorgen. De Error Capture-mogelijkheid gebruiken we dus alleen indien we de (fout)melding per se NIET wilt zien.

Met dank aan Rony Rabijns en Theo Tromp.


* Een record lock komt voor wanneer twee gebruikers op hetzelfde ogenblik in dezelfde record willen werken. Een van de twee moet dan wachten. FileMaker meldt dit.

 
avd@avd-ci.be - contactformulier