RESUME
Short Reference
ABAP Syntax RESUME.
What does it do? This statement exits the CATCH
handling of a resumable
exception and resumes processing after the statement that raised the
exception. This statement can only be executed in a
CATCH block of a TRY control structure
for which the addition BEFORE UNWIND is declared. When exception
handling is exited using RESUME , the context of the exception is
not deleted and any CLEANUP blocks are not executed.
The following are prerequisites for resuming processing:
The exception was raised as a resumable exception by the addition
RESUMABLE of the statement RAISE
EXCEPTION or by the addition
THROW in a
conditional expression .
The exception was declared with the addition RESUMABLE of
RAISING in the interface of all procedures from which it was
propagated (if it is not an exception derived from CX_NO_CHECK ).
If these points do not apply, an exception of the class
CX_SY_ILLEGAL_HANDLER is raised. To check whether the prerequisites
are met, the instance attribute IS_RESUMABLE with type
abap_bool of the current exception object can be checked. The value
of the attribute is set using the addition INTO when the
statements CATCH and CLEANUP are executed and when an
exception object is reused using the statement RAISE .
Latest notes: If the resumable exception was not raised by the variant
RAISE RESUMABLE EXCEPTION oref ,
the handler can send information to the raiser of the event by assigning
values to appropriate attributes of the exception object.
Resuming processing after an exception is particularly useful if the
exception was raised when a special method was called, such as a
constructor or a functional method in an operand position.
If a CATCH block is not exited using RESUME when
handling a resumable exception, the program does not continue in the
context of the statement that raised the exception (as described in
System Response After a Class-Based
Exception ). This context is deleted when the CATCH block is
exited, at the latest.
Runtime Exceptions
Catchable Exceptions
CX_SY_ILLEGAL_HANDLER
Reason for error: Exception cannot be resumed. The ID of the exception
text is NOT_RESUMABLE
Runtime error: UNCAUGHT_EXCEPTION
Documentation extract taken from SAP system, � Copyright SAP AG. All rights reserved