ABAP Development Handbook

ABAP is a programming language developed by SAP for programming commercial applications in the SAP environment.

ABAP is a 4GL language developed specifically for the mass processing of data in commercial applications. It offers the following advantages in comparison to elementary languages in which these functions are stored in libraries:

  • Database access integrated into the language as Open SQL.
  • Performance optimization of database accesses integrated into the ABAP runtime environmentthrough the use of SAP buffering.
  • Internal tables for dynamic storage and processing of tabular mass data in the working memory.
  • Concept of Online Transaction Processing (OLTP) integrated in the ABAP runtime environment, enabling several users to access the central database at the same time using the SAP LUW.
  • The language has an integrated interface to other programming environments via Remote Function Call.
  • The language has an integrated interface to XML.

The integration of these functions into the language is particularly advantageous for the static checkability and the performance of programs. In return, this means that ABAP also contains considerably more language elements than an elementary programming language.

ABAP programs are objects of the R/3 Repository. Like all other Repository objects, you maintain them using an ABAP Workbench tool – in this case, the ABAP Editor.

This section provides a brief description of the ABAP Workbench and an overview of how to create and edit ABAP programs. It describes the different ways of starting the ABAP Editor. In the text below, ‘open a program’ always means ‘start the ABAP Editor and use it to open a program’.

Starting the ABAP Editor

To start the ABAP Editor to create or change ABAP programs, the R/3 system offers three possibilities:

  • Using the Repository Browser

The Repository Browser in the ABAP Workbench (transaction SE80) offers a hierarchical overview of all R/3 Repository objects, ordered by development class, user name of the programmer, object type, and so on. If you enter a program name, you can directly access all of its components, such as the main program, subroutines, and global data. If you select a program object in the Repository Browser and choose Change, the system automatically opens the appropriate tool; in this case, the ABAP Editor.

This method is suitable for complex programs, since the Repository Browser always provides you with an overview of all of the program components.

  • Using the ABAP Editor

You can open a program directly by choosing ABAP Editor from the initial screen of the ABAP Workbench (Transaction SE38). If you want to change a program using this method, you must already know its name and environment.

This procedure is suited for maintaining or creating relatively simple or short programs, which have few or no additional components.

  • Using Forward Navigation

In any of the tools in the ABAP Workbench, you can open a different Repository object by positioning the cursor on it and double-clicking. The system automatically opens the object using the correct tool. This also applies to ABAP programs.

Forward navigation by double-clicking is possible wherever an ABAP program is called from another object, such as screen flow logic or another program.