Skip to content

ABAP Keyword Documentation →  ABAP − Reference →  program editing 

Dynamic Program Editing

In addition to static program development in the ABAP Workbench, the following components of ABAP programs can be edited and generated using language elements:

This type of program development is called dynamic program development.

Other versions: 7.31 | 7.40 | 7.54

Security Note

If used wrongly, dynamic programming techniques can present a serious security risk. Any dynamic content that is passed to a program from the outside must be checked thoroughly or escaped before being used in dynamic statements. This can be done using the system class CL_ABAP_DYN_PRG or the predefined function escape.


  • On the one hand, the statements for dynamic program development provide a powerful and flexible method of dynamic programming, but on the other hand this type of programming is very elaborate and the created programs are difficult to maintain. Therefore, it is recommended that other dynamic programming options for application programs are used first, before using dynamic program development. In ABAP, dynamic programming is facilitated by:

  • Dynamic token specification - that is, the dynamic specification of operands or entire clauses as data objects in parentheses

  • The statements for dynamic program development do not carry out authorization checks or other checks. These must be programmed separately. The following special function modules can be used for the required checks in addition to the statement AUTHORITY-CHECK:

  • The function module RS_ACCESS_PERMISSION performs all authorization checks that are also performed when ABAP Editor is called.

  • The function module TR_SYS_PARAMS and other function modules of the function group STR9 determine whether repository objects can be changed.


ABAP Source Code

text element