SAP NetWeaver AS ABAP Release 740, ©Copyright 2014 SAP AG. All rights reserved.
ABAP Keyword Documentation → ABAP − Reference → Calling and leaving program units → Calling ABAP Programs → Calling Executable Programs →Syntax
SUBMIT {rep|(name)} [selscreen_options]
[list_options]
[job_options]
[AND RETURN].
Addition:
Effect
The SUBMIT statement accesses an executable program rep. The executable program is executed as described under Flow of an Executable Program. If the called program contains a syntax error, an exception is raised that cannot be handled.
The program name rep can either be specified directly or as the content of a character-like data object name. The data object name must contain the name of the program to be accessed in uppercase letters. If the program specified in name is not found, a non-handleable exception is raised.
When the SUBMIT statement is executed, it is followed by an authorization check (using the
authorization object S_PROGRAM) for the
authorization group specified in the
program attributes.
The program attribute Start Using Variant is ignored withSUBMIT.
Notes
Security Note
If used wrongly, dynamic calls of program units can present a serious security risk. Names of program
units that are passed to a program from the outside must be checked thoroughly before being used in dynamic calls. The system class CL_ABAP_DYN_PRG, for example, can be used to do this. See
Dynamic Calls.
... AND RETURN
Effect
The AND RETURN addition determines the object accessed by the runtime environment after the program has been called:
Note
The statement SUBMIT with the addition AND RETURN opens a new
SAP-LUW, but it does not open a new
database LUW. This means that a
database rollback
in this SAP LUW can roll back all registration entries made by the statements
CALL FUNCTION IN UPDATE TASK or
CALL FUNCTION IN BACKGROUND TASK in the tables VB... or ARFCSSTATE and
ARFCSDATA. Under certain circumstances, the statement ROLLBACK WORK in the called program can also affect the interrupted SAP LUW. To prevent this, an explicit
database commit must be executed before the program is called. This problem does not occur in
local updates.
Non-Catchable Exceptions