Get Example source ABAP code based on a different SAP table
Assignment of Catchable Runtime Errors to Exception Groups Most of the obsolete catchable runtime errors are assigned to exception groups. Using the name of an exception group, all catchable runtime errors of the group can be caught simultaneously using CATCH SYSTEM-EXCEPTIONS>>. For each of the catchable runtime errors, a predefined exception class> is specified that can be used to handle the runtime error. Normally, most> exception classes of an exception group belong to a common superclass. This superclass is specified in parentheses below the exception group. The assigned ABAP keywords are specified for each exception group. Only those keywords assigned to a specific exception group can be used to catch the runtime errors in this exception group using the obsolete statement CATCH SYSTEM-EXCEPTIONS>.
Exception Group: ARITHMETIC_ERRORS> (Associated superclass: CX_SY_ARITHMETIC_ERROR>>) This group contains exceptions that can be raised by arithmetic expressions. These include, for example, division by zero, overflow or underflow in fields, and errors in arithmetic and trigonometric functions. Errors that occur during the conversion between data types in mixed arithmetic expressions> are not caught. BCD_ZERODIVIDE>CX_SY_ZERODIVIDE>> COMPUTE_FLOAT_ZERODIVIDE>CX_SY_ZERODIVIDE>> COMPUTE_INT_ZERODIVIDE>CX_SY_ZERODIVIDE>> ADDF_INT_OVERFLOW>CX_SY_ARITHMETIC_OVERFLOW>> BCD_OVERFLOW>CX_SY_ARITHMETIC_OVERFLOW>> COMPUTE_BCD_OVERFLOW>CX_SY_ARITHMETIC_OVERFLOW>> COMPUTE_COSH_OVERFLOW>CX_SY_ARITHMETIC_OVERFLOW>> COMPUTE_EXP_RANGE>CX_SY_ARITHMETIC_OVERFLOW>> COMPUTE_FLOAT_DIV_OVERFLOW>CX_SY_ARITHMETIC_OVERFLOW>> COMPUTE_FLOAT_MINUS_OVERFLOW>CX_SY_ARITHMETIC_OVERFLOW>> COMPUTE_FLOAT_PLUS_OVERFLOW>CX_SY_ARITHMETIC_OVERFLOW>> COMPUTE_FLOAT_TIMES_OVERFLOW>CX_SY_ARITHMETIC_OVERFLOW>> COMPUTE_INT_ABS_OVERFLOW>CX_SY_ARITHMETIC_OVERFLOW>> COMPUTE_INT_DIV_OVERFLOW>CX_SY_ARITHMETIC_OVERFLOW>> COMPUTE_INT_MINUS_OVERFLOW>CX_SY_ARITHMETIC_OVERFLOW>> COMPUTE_INT_PLUS_OVERFLOW>CX_SY_ARITHMETIC_OVERFLOW>> COMPUTE_INT_TIMES_OVERFLOW>CX_SY_ARITHMETIC_OVERFLOW>> COMPUTE_LOG10_ERROR>CX_SY_ARITHMETIC_OVERFLOW>>, CX_SY_ARG_OUT_OF_DOMAIN>> COMPUTE_LOG_ERROR>CX_SY_ARITHMETIC_OVERFLOW>>, CX_SY_ARG_OUT_OF_DOMAIN>> COMPUTE_MATH_OVERFLOW>CX_SY_ARITHMETIC_OVERFLOW>> COMPUTE_POW_RANGE>CX_SY_ARITHMETIC_OVERFLOW>> COMPUTE_SINH_OVERFLOW>CX_SY_ARITHMETIC_OVERFLOW>> COMPUTE_ACOS_DOMAIN>CX_SY_ARG_OUT_OF_DOMAIN>> COMPUTE_ASIN_DOMAIN>CX_SY_ARG_OUT_OF_DOMAIN>> COMPUTE_ATAN_DOMAIN>CX_SY_ARG_OUT_OF_DOMAIN>> COMPUTE_COSH_DOMAIN>CX_SY_ARG_OUT_OF_DOMAIN>> COMPUTE_COS_DOMAIN>CX_SY_ARG_OUT_OF_DOMAIN>> COMPUTE_EXP_DOMAIN>CX_SY_ARG_OUT_OF_DOMAIN>> COMPUTE_MATH_DOMAIN>CX_SY_ARG_OUT_OF_DOMAIN>> COMPUTE_POW_DOMAIN>CX_SY_ARG_OUT_OF_DOMAIN>> COMPUTE_SINH_DOMAIN>CX_SY_ARG_OUT_OF_DOMAIN>> COMPUTE_SIN_DOMAIN>CX_SY_ARG_OUT_OF_DOMAIN>> COMPUTE_SQRT_DOMAIN>CX_SY_ARG_OUT_OF_DOMAIN>> COMPUTE_TANH_DOMAIN>CX_SY_ARG_OUT_OF_DOMAIN>> COMPUTE_COS_LOSS>CX_SY_PRECISION_LOSS>> COMPUTE_MATH_LOSS>CX_SY_PRECISION_LOSS>> COMPUTE_SIN_LOSS>CX_SY_PRECISION_LOSS>> COMPUTE_TAN_LOSS>CX_SY_PRECISION_LOSS>> BCD_FIELD_OVERFLOW>CX_SY_CONVERSION_OVERFLOW>> The following keywords are assigned to this exception group: ADD>> ADD-CORRESPONDING>> COMPUTE>> DIVIDE>> DIVIDE-CORRESPONDING>> MULTIPLY>> MULTIPLY-CORRESPONDING>> SUBTRACT>> SUBTRACT-CORRESPONDING>>
Latest notes:
The obsolete keyword COMPUTE>> is optional. However, statements in category n1 = arithexp> still belong to the keyword COMPUTE>.
Statements of the category COMPUTE n1 = n2.> are simply assignments without arithmetic functions and are assigned to the keyword MOVE>, which is also optional in the context of catchable runtime errors. To avoid confusion, it is better to write the following in these cases: n1 = n2.> ABAP_HINT_END
Exception Group: CONVERSION_ERRORS> (Associated superclass: CX_SY_CONVERSION_ERROR>>) This group contains runtime errors that can occur during the conversion between data types. An explicit conversion can be made using an assignment>, for example. Implicit conversions are only caught in arithmetic expressions>. BCD_FIELD_OVERFLOW>CX_SY_CONVERSION_OVERFLOW>> CONVT_OVERFLOW>CX_SY_CONVERSION_OVERFLOW>> CONVT_CODEPAGE>CX_SY_CONVERSION_CODEPAGE>> CONVT_NO_NUMBER>CX_SY_CONVERSION_NO_NUMBER>> BCD_OVERFLOW>CX_SY_ARITHMETIC_OVERFLOW>> The following keywords are assigned to this exception group: ADD>> ADD-CORRESPONDING>> COMPUTE>> DIVIDE>> DIVIDE-CORRESPONDING>> MOVE>> MOVE-CORRESPONDING>> MULTIPLY>> MULTIPLY-CORRESPONDING>> PACK>> SUBTRACT>> SUBTRACT-CORRESPONDING>> UNPACK>>
Latest notes: Statements of category n2 = n1> are assigned to the obsolete keyword MOVE>. ABAP_HINT_END
Exception Group: CREATE_DATA_ERRORS> (Associated superclass: CX_SY_CREATE_ERROR>>) This group contains runtime errors that can occur when data objects are created. CREATE_DATA_UNKNOWN_TYPE>CX_SY_CREATE_DATA_ERROR>> CREATE_DATA_NOT_ALLOWED_TYPE>CX_SY_CREATE_DATA_ERROR>> CREATE_DATA_LEN_NOT_ALLOWED>CX_SY_CREATE_DATA_ERROR>> CREATE_DATA_ILLEGAL_LENGTH>CX_SY_CREATE_DATA_ERROR>> CREATE_DATA_ILLEGAL_DECIMALS>CX_SY_CREATE_DATA_ERROR>> CREATE_DATA_ILLEGAL_INIT_SIZE>CX_SY_CREATE_DATA_ERROR>> The following keywords are assigned to this exception group: CREATE DATA>>
Exception Group: CREATE_OBJECT_ERRORS> (Associated superclass: CX_SY_CREATE_ERROR>>) This group contains runtime errors that can occur when objects are created. CREATE_OBJECT_CLASS_NOT_FOUND>CX_SY_CREATE_OBJECT_ERROR>> CREATE_OBJECT_CLASS_ABSTRACT>CX_SY_CREATE_OBJECT_ERROR>> CREATE_OBJECT_CREATE_PRIVATE>CX_SY_CREATE_OBJECT_ERROR>> CREATE_OBJECT_CREATE_PROTECTED>CX_SY_CREATE_OBJECT_ERROR>> The following keywords are assigned to this exception group: CREATE OBJECT>>
Exception Group: DATA_ACCESS_ERRORS> (Associated superclass: CX_SY_DATA_ACCESS_ERROR>>) This group contains runtime errors that can occur in substring accesses (with offset/length) to data objects. DATA_OFFSET_NEGATIVE>CX_SY_RANGE_OUT_OF_BOUNDS>> DATA_LENGTH_NEGATIVE>CX_SY_RANGE_OUT_OF_BOUNDS>> DATA_LENGTH_0>CX_SY_RANGE_OUT_OF_BOUNDS>> DATA_LENGTH_TOO_LARGE>