ABAP Keyword Documentation → ABAP - Release-Specific Changes → Changes in Release 7.0 and its EhPs → Changes in Release 7.0, EhP2
Class-Based Exceptions in Release 7.0, EhP2
2. Preserving the context of an exception
Other versions: 7.31 | 7.40 | 7.54
Modification 1
Resumable Exceptions
Before Release 7.0, EhP2, the context in which a
class-based exception was raised was always emptied completely. All procedures called between the
raising of the exception and any handler, and their local data, were deleted before the handler was executed. The program could only resume after the TRY
control structure of the handler.
From Release 7.0, EhP2,
class-based exceptions can be raised and propagated as resumable exceptions. The new addition RESUMABLE
can be used in
-
the statement
RAISE EXCEPTION
-
the
RAISING
addition for declaring exceptions in [CLASS-] METHODS,FUNCTION
, andFORM
.
The new statement RESUME
is used
to resume the execution of a program after the exception-raising statement, while the resumable exception is being handled.
Modification 2
Preserving the Context of an Exception
The context of the exception must be retained while it is being handled so that the program can resume
afterwards. To enable this, the new addition BEFORE UNWIND
of the statement
CATCH
has been implemented. This addition can also be used independently of resumable exceptions.
Modification 3
Retrying the TRY Block
The new statement RETRY
enables an exception-raising TRY
block to be retried.