sapdev logo background
sapdev logo sapdev logo
Comments

SAP SYSEXC-ERRKL documentation, setup help and example usage



Return to SAP documentation index


ARTICLE

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 handled the runtime error Normally,
most exception classes of an exception group belong to a common superclass. This superclass is specified in parentheses below the except
ion group.

The associated ABAP keywords are specified for each exception group. Only those keywords associated with 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, overflows in fields, and errors in arithmetic and trigonometric functions.
Errors cannot be caught that occur during the conversion between data types in mixed arithmetical expressions
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 associated with this exception group:
ADD
ADD-CORRESPONDING
COMPUTE
DIVIDE
DIVIDE-CORRESPONDING
MULTIPLY
MULTIPLY-CORRESPONDING
SUBTRACT
SUBTRACT-CORRESPONDING


Notes
The keyword COMPUTE is optional (and also obsolete). However, statements in category
n1 = arithexp
still belong to the keyword COMPUTE .
Statements of the category
COMPUTE n1 = n2.
are simply assignments without arithmetic function and are assigned to the keyword MOVE (in the context of catchable runtime errors). To avoid confusion, it is better to write the following in these cases:
n1 = n2.


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 MOVE , for example.
Implicit conversions are only caught in arithmetical 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 associated with this exception group:
ADD
ADD-CORRESPONDING
COMPUTE
DIVIDE
DIVIDE-CORRESPONDING
MOVE
MOVE-CORRESPONDING
MULTIPLY
MULTIPLY-CORRESPONDING
PACK
SUBTRACT
SUBTRACT-CORRESPONDING
UNPACK


Note
Statements of category n2 = n1 are assigned to the obsolete keyword MOVE .


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 associated with 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 associated with 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
CX_SY_RANGE_OUT_OF_BOUNDS
DATA_OFFSET_LENGTH_TOO_LARGE
CX_SY_RANGE_OUT_OF_BOUNDS
REFI_WRONG_SECTION
CX_SY_RANGE_OUT_OF_BOUNDS
STRING_OFFSET_NEGATIVE
CX_SY_RANGE_OUT_OF_BOUNDS
STRING_OFFSET_TOO_LARGE
CX_SY_RANGE_OUT_OF_BOUNDS
STRING_LENGTH_NEGATIVE
CX_SY_RANGE_OUT_OF_BOUNDS
STRING_LENGTH_TOO_LARGE
CX_SY_RANGE_OUT_OF_BOUNDS
STRING_OFFSET_LENGTH_TOO_LARGE
CX_SY_RANGE_OUT_OF_BOUNDS
DATA_OFFSET_LENGTH_NOT_ALLOWED
CX_SY_OFFSET_NOT_ALLOWED

Since a subfield access can occur in almost all statements, no keywords can be associated.


Exception group: DYNAMIC_CALL_METHOD_ERRORS
(Associated superclass:
CX_SY_DYN_CALL_ERROR )
This group contains runtime errors that can occur in dynamic method calls. These are normally errors that trigger a syntax error when the call is static.
DYN_CALL_METH_CLASS_ABSTRACT
CX_SY_DYN_CALL_ILLEGAL_CLASS
DYN_CALL_METH_CLASS_NOT_FOUND
CX_SY_DYN_CALL_ILLEGAL_CLASS
DYN_CALL_METH_CLASSCONSTRUCTOR
CX_SY_DYN_CALL_ILLEGAL_METHOD
DYN_CALL_METH_CONSTRUCTOR
CX_SY_DYN_CALL_ILLEGAL_METHOD
DYN_CALL_METH_NOT_FOUND
CX_SY_DYN_CALL_ILLEGAL_METHOD
DYN_CALL_METH_NO_CLASS_METHOD
CX_SY_DYN_CALL_ILLEGAL_METHOD
DYN_CALL_METH_PRIVATE
CX_SY_DYN_CALL_ILLEGAL_METHOD
DYN_CALL_METH_PROTECTED
CX_SY_DYN_CALL_ILLEGAL_METHOD
DYN_CALL_METH_EXCP_NOT_FOUND
CX_SY_DYN_CALL_EXCP_NOT_FOUND
DYN_CALL_METH_PARAM_KIND
CX_SY_DYN_CALL_ILLEGAL_TYPE
DYN_CALL_METH_PARAM_LITL_MOVE
CX_SY_DYN_CALL_ILLEGAL_TYPE
DYN_CALL_METH_PARAM_TAB_TYPE
CX_SY_DYN_CALL_ILLEGAL_TYPE
DYN_CALL_METH_PARAM_TYPE
CX_SY_DYN_CALL_ILLEGAL_TYPE
DYN_CALL_METH_PARAM_MISSING
CX_SY_DYN_CALL_PARAM_MISSING
DYN_CALL_METH_PARREF_INITIAL
CX_SY_DYN_CALL_PARAM_MISSING
DYN_CALL_METH_PARAM_NOT_FOUND
CX_SY_DYN_CALL_PARAM_NOT_FOUND
DYN_CALL_METH_REF_IS_INITIAL
CX_SY_REF_IS_INITIAL

The following keywords are associated with this exception group:
CALL METHOD


Exception group: FILE_ACCESS_ERRORS
(Associated superclass:
CX_SY_FILE_ACCESS_ERROR )
This group contains runtime errors that can occur when files are accessed. Typical examples are when the system cannot find the file, when no more space is available to write to or create the file, or if the authorization to access the file is missing.
DATASET_CANT_CLOSE
CX_SY_FILE_CLOSE
DATASET_CANT_OPEN
CX_SY_FILE_OPEN
EXPORT_DATASET_CANNOT_OPEN
CX_SY_FILE_OPEN
DATASET_WRITE_ERROR
CX_SY_FILE_IO
DATASET_READ_ERROR
CX_SY_FILE_IO
EXPORT_DATASET_WRITE_ERROR
CX_SY_FILE_IO
DATASET_SEEK_ERROR
CX_SY_FILE_POSITION
DATASET_NO_POSITION
CX_SY_FILE_POSITION
DATASET_READ_ONLY
CX_SY_FILE_OPEN_MODE
DATASET_NOT_OPEN
CX_SY_FILE_OPEN_MODE
OPEN_DATASET_NO_AUTHORITY
CX_SY_FILE_AUTHORITY
OPEN_PIPE_NO_AUTHORITY
CX_SY_FILE_AUTHORITY
DATASET_TOO_MANY_FILES
CX_SY_TOO_MANY_FILES
DATASET_NO_PIPE
CX_SY_PIPES_NOT_SUPPORTED

The following keywords are associated with this exception group:
CLOSE , variant: CLOSE DATASET ...
DELETE , variant: DELETE DATASET ...
EXPORT , variant: EXPORT ... TO DATASET ...
OPEN , variant: OPEN DATASET...

READ , variant: READ DATASET...

TRANSFER


Exception group: IMPORT_MISMATCH_ERRORS
(Common class:
CX_SY_IMPORT_MISMATCH_ERROR )
This group contains runtime errors that can occur during the import of data
  • from the ABAP Memory ,

  • from the database,

  • from the SHARED BUFFER , or

  • from a file

  • if the type or the length of the data stored is not identical with that of the target type.
    CONNE_IMPORT_WRONG_COMP_DECS
    CX_SY_IMPORT_MISMATCH_ERROR
    CONNE_IMPORT_WRONG_COMP_LENG
    CX_SY_IMPORT_MISMATCH_ERROR
    CONNE_IMPORT_WRONG_COMP_TYPE
    CX_SY_IMPORT_MISMATCH_ERROR
    CONNE_IMPORT_WRONG_FIELD_DECS
    CX_SY_IMPORT_MISMATCH_ERROR
    CONNE_IMPORT_WRONG_FIELD_LENG
    CX_SY_IMPORT_MISMATCH_ERROR
    CONNE_IMPORT_WRONG_FIELD_TYPE
    CX_SY_IMPORT_MISMATCH_ERROR
    CONNE_IMPORT_WRONG_OBJECT_TYPE
    CX_SY_IMPORT_MISMATCH_ERROR
    CONNE_IMPORT_WRONG_STRUCTURE
    CX_SY_IMPORT_MISMATCH_ERROR
    IMPORT_ALIGNMENT_MISMATCH
    CX_SY_IMPORT_MISMATCH_ERROR
    IMPORT_WRONG_END_POS
    CX_SY_IMPORT_MISMATCH_ERROR

    The following keywords are associated with this exception group:
    IMPORT


    Exception group: LOCALIZATION_ERRORS
    (Common class: CX_SY_LOCALIZATION_ERROR
    )
    This group contains runtime errors that can occur when the program switches to another text environment
    . Typical examples are when the required language is not allowed or when the system wants to switch to a character set which has not been released.
    TEXTENV_CODEPAGE_NOT_ALLOWED
    CX_SY_LOCALIZATION_ERROR
    TEXTENV_INVALID
    CX_SY_LOCALIZATION_ERROR
    TEXTENV_KEY_INVALID
    CX_SY_LOCALIZATION_ERROR

    The following keywords are associated with this exception group:
    SET , variant: SET LOCALE ...


    Exception group: REMOTE_CALL_ERRORS
    (Associated superclass:
    CX_SY_REMOTE_CALL_ERROR )
    This group contains runtime errors that can occur during calls to remote systems (currently only CALL METHOD ). Typical examples are network errors or the unexpected termination of the connection.
    RMC_COMMUNICATION_FAILURE
    CX_SY_RMC_COMM_FAILURE
    RMC_INVALID_STATUS
    CX_SY_RMC_INVALID_STATUS
    RMC_SYSTEM_FAILURE
    CX_SY_RMC_SYSTEM_FAILURE

    The following keywords are associated with this exception group:
    CALL METHOD


    Not assigned to an exception group:
    ASSIGN_CASTING_ILLEGAL_CAST
    CX_SY_ASSIGN_CAST_ILLEGAL_CAST
    ASSIGN_CASTING_UNKNOWN_TYPE
    CX_SY_ASSIGN_CAST_UNKNOWN_TYPE
    ASSIGN_FIELD_NOT_IN_RANGE
    CX_SY_ASSIGN_OUT_OF_RANGE
    DATASET_OFFSET_TOO_LARGE
    CX_SY_FILE_POSITION
    DYN_CALL_METH_NOT_IMPLEMENTED
    CX_SY_DYN_CALL_ILLEGAL_METHOD
    EXPORT_BUFFER_NO_MEMORY
    CX_SY_EXPORT_BUFFER_NO_MEMORY
    GENERATE_SUBPOOL_DIR_FULL
    CX_SY_GENERATE_SUBPOOL_FULL
    MOVE_CAST_ERROR
    CX_SY_MOVE_CAST_ERROR
    PERFORM_PROGRAM_NAME_TOO_LONG
    CX_SY_PROGRAM_NOT_FOUND
    REPLACE_INFINITE_LOOP
    CX_SY_REPLACE_INFINITE_LOOP
    Documentation extract taken from SAP system, � Copyright SAP AG. All rights reserved




    SYNTAX_OBSOLETE
    SYSTEM-EXCEPTIONS




    comments powered by Disqus