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