ABAP Keyword Documentation → ABAP - Reference → Calling and leaving program units → Calling Processing Blocks → Calling procedures → PERFORM
PERFORM - general
Other versions: 7.31 | 7.40 | 7.54
Syntax
PERFORM subr_identifier [parameter_list].
Effect
This statement calls the subroutine specified with the name
subr_identifier and assigns the actual parameters specified in parameter_list
to the formal parameters of the subroutine.
Note
Subroutines are obsolete. Do not create new subroutines in new programs. Subroutines created in existing programs for internal modularization can continue to be called. Avoid external calling subroutines from other programs as far as possible.
Example
See parameter_list.
Exceptions
Catchable Exceptions
CX_SY_PROGRAM_NOT_FOUND
-
Cause: The specified program was not found.
Runtime Error:LOAD_PROGRAM_NOT_FOUND
-
Cause: The specified program cannot exist because the program name is longer than 40 characters.
Runtime Error:PERFORM_PROGRAM_NAME_TOO_LONG
CX_SY_DYN_CALL_ILLEGAL_FORM
-
Cause: The specified subroutine was not found.
Runtime Error:PERFORM_NOT_FOUND
-
Cause: The specified index was too small.
Runtime Error:PERFORM_INDEX_0
-
Cause: The specified index was negative.
Runtime Error:PERFORM_INDEX_NEGATIVE
-
Cause: The specified index was too large.
Runtime Error:PERFORM_INDEX_TOO_LARGE
CX_SY_DYN_CALL_PARAM_MISSING
-
Cause: The called
FORM
expects more parameters than were specified.
Runtime Error:PERFORM_PARAMETER_MISSING
CX_SY_DYN_CALL_PARAM_NOT_FOUND
-
Cause: More parameters were specified than expected by
FORM
.
Runtime Error:PERFORM_TOO_MANY_PARAMETERS
CX_SY_DYN_CALL_ILLEGAL_TYPE
-
Cause: When parameters are passed using the addition
STRUCTURE
, the addressing offsets do not match in the actual and target structures.
Runtime Error:PERFORM_BASE_WRONG_ALIGNMENT
-
Cause: The deep components contained in the actual and target structures
cannot be passed to each other. This error can only occur in parameter transfer using
STRUCTURE
.
Runtime Error:PERFORM_CAST_DEEP_MISMATCH
-
Cause: During the transfer of a generically defined type to the form, a type conflict occurred.
Runtime Error:PERFORM_CONFLICT_GENERIC_TYPE
-
Cause: The table type of the actual parameter does not match the table type of the parameter defined in the form.
Runtime Error:PERFORM_CONFLICT_TAB_TYPE
-
Cause: The type of the actual parameter does not match the type of parameter defined in the form.
Runtime Error:PERFORM_CONFLICT_TYPE
-
Cause: The actual parameter occupies less storage space than the target
parameter defined in the form. This error occurs only with parameter specification using
STRUCTURE
.
Runtime Error:PERFORM_PARAMETER_TOO_SHORT
-
Cause: During parameter transfer with the addition
STRUCTURE, the fragment views of the actual and target parameters do not match. This error only occurs in Unicode programs in
Runtime Error:PERFORM_CONFLICT_UC_STRUCT
-
Cause: When the form is called, an internal table is expected as the actual parameter.
Runtime Error:PERFORM_TABLE_REQUIRED
-
Cause: A hash table was passed to a parameter defined using
TABLES
.
Runtime Error:PERFORM_STD_TAB_REQUIRED