SAP RESUME ABAP Statements



Get Example source ABAP code based on a different SAP table
  


ID RESUME
• RESUME ABAP Statement

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 place where the exception was raised. The statement RESUME can only be listed 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.
Prerequisites for resuming processing are:
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, where exceptions derived from CX_NO_CHECK are always implicitly declared with that addition.
Otherwise, 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 as long as the addition BEFORE UNWIND is specified for CATCH.



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 flow 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.
The transformation option OPTIONS exception = 'resumable' can be used to make exceptions of the class CX_ST_DESERIALIZATION_ERROR that are raised in Simple Transformations resumable. If CATCH BEFORE UNWIND is used, the canceled transformation can also be resumed after the break using RESUME.
NON_V5_HINTS
ABAP_HINT_END

ABAP_EXAMPLE_VX5
Use of the statement RESUME in the handling of a resumable exception cx_demo.