SetErrorIf()
SetErrorIf() – Fehler erzeugen wenn Bedingung erfüllt
SetErrorIf erzeugt wie SetError einen Abbruchfehler, der innerhalb einer Fehlerauffangroutine ausgelesen werden kann. Im Unterschied zu SetError() kann im ersten Parameter angegeben werden ob der Abbruchfehler erzeugt werden soll oder nicht.
Wird SetErrorIf() ausserhalb von StartSeq / StopSeq ausgeführt, bewirkt der erzeugte Fehler den Abbruch der Codeblockausführung, als wäre ein echter Fehler aufgetreten!
Parameter | Beschreibung |
---|---|
aCondition:L | Bedinung ob Abbruchfehler erzeugen werden soll |
aErrText:C | Fehlertext (kann mit GetErrorText() ausgelesen werden) |
aErrCode:N | Fehlernummer (kann mit GetErrorCode() ausgelesen werden) |
Rückgabewert
Keiner
Beispiel
| oForm |
startseq,
startseq,
WriteLn('Fehlerauffangroutine gestartet!'),
if jn('Formular erzeugen?') then
oForm := CreateObject('TFormEx'),
endif,
SetErrorIf(Empty(oForm), 'Test-Fehlertext: Formular nicht vorhanden', 123),
onerror,
WriteLn('------'),
WriteLn('Zeile des Testfehlers: ' + Str(GetErrorLine())),
WriteLn('Nummer des Testfehlers: ' + Str(GetErrorCode())),
WriteLn('Beschreibung des Testfehlers: ' + GetErrorText()),
WriteLn('------'),
stopseq,
always,
DestroyObject(oForm),
stopseq,