sobald du raise ....
ausführst wird das Programm bzw die Procedure unterbrochen, und erst an der Stelle weitergemacht, wo diese
Exception abgefangen wird.
versuche doch mal
um den Case Block
eine Try anweisung zu setzen
also so:
proc ....
try
case .... of
end;
finally
(was auf jeden fall ausgeführt werden soll)
end;
(was auf jeden fall ausgeführt werden soll)
end;
nach finally wird dann alles wieder normal ausgeführt.
man könnte auch nur dann etwas machen wenn eine
exception ausgelöst wird:
proc ....
try
case .... of
end;
except
(was bei einer
Exception passieren soll)
raise; //wiederholt die letzte
Exception
end;
(was auf jeden fall ausgeführt werden soll, wenn kein Raise da steht!)
end;