Try…Catch…End-Anweisung (FPScript)
Fängt Ausnahmen, die in den eingeschlossenen Anweisungen auftreten, und ermöglicht deren Verarbeitung.
Syntax
Try
[TryAnweisungen]
Catch Variable
[CatchAnweisungen]
End
Die Syntax der Try...Catch...End-Anweisung besteht aus folgenden Teilen:
Teil |
Beschreibung |
---|---|
TryAnweisungen |
Eine oder mehrere Anweisungen zwischen Try und Catch, für die auftretende Ausnahmen gefangen werden sollen. |
Variable |
Name einer Variable, der der Wert der Ausnahme zugewiesen wird. Die Variable müssen Sie nicht mit Dim deklarieren. |
CatchAnweisungen |
Eine oder mehrere Anweisungen zur Behandlung der gefangenen Ausnahme. |
Anmerkungen
Ausnahmen sind zum einen alle Fehler, die während der Ausführung von FPScript-Code auftreten können, und zum anderen explizit mit der Throw-Anweisung erzeugte Ausnahmen.
Tritt während der Berechnung einer Formel eine Ausnahme auf, wird normalerweise die Berechnung beendet und eine Fehlermeldung ausgegeben. Mit der Try...Catch-Anweisung können Sie solche Ausnahmen jedoch abfangen und geeignet darauf reagieren. Dies funktioniert nicht nur innerhalb einer Formel sondern auch dann, wenn die Ausnahme in einer anderen Formel auftritt, welche von der Formel mit der Try...Catch-Anweisung aufgerufen wird.
Eine Ausnahme hat immer einen Wert. Wenn ein Fehler während der Ausführung auftritt, ist der Wert der erzeugten Ausnahme eine Zeichenkette mit der Fehlermeldung. Wird eine Ausnahme mit der Throw-Anweisung erzeugt, dann kann ein beliebiger Wert, ggf. auch mit Einheit, mitgegeben werden, welcher dann im Catch-Block verarbeitet werden kann.
Innerhalb des Catch-Blocks können Sie auch bestimmte Ausnahmen in Abhängigkeit von deren Wert verarbeiten und andere mit der Throw-Anweisung weiterleiten.
Hinweis Sie sollten die Ausnahmebehandlung nur für Ausnahmezustände verwenden und nicht als Alternative zur Return-Anweisung.
Verfügbarkeit
FlexPro View, Basic, Professional, Developer Suite
Beispiel
Berechnet ein Integral und übergibt das Ergebnis. Tritt bei der Integration ein Fehler auf, dann wird dieser gefangen und die Fehlermeldung übergeben.
Try
Return Integral(x)
Catch Exception
Return Exception
End