SAP ABAP TECHNICAL Interview Questions

Explain SAP ABAP 3-tier architecture?

The Presentation layer consists of any input device that can be used to control SAP system. This could be a web browser, a mobile device and so on. All the central processing takes place in Application server. The Application server is not just one system in itself, but it can be multiple instances of the processing system. The server communicates with the Database layer that is usually kept on a separate server, mainly for performance reasons and also for security. Communication happens between each layer of the system, from the Presentation layer to the Database and then back up the chain.

What do you understand by work area and internal tables in ABAP? Why do we use it?

They are temporary memory areas that are used to store the data at run-time. Internal tables and work areas represents the instances of database tables.

What is use of transparent table in ABAP? How it is different from Pool tables?

Transparent table has one to one relation with the table in the database however Pool table has many to one relationship with database tables.

Explain the use of insert and append statement in SAP ABAP?

Append statement is used to add a record at the end of internal table in work area.

Insert statement is used to add a record at specified location.

How memory management happens for internal tables and work areas in ABAP?

8KB memory is allocated to internal table and work areas and it increases dynamically.

Why do we use TYPES statement in ABAP programming?

TYPES is used to pass user defined structure in an ABAP program.

What is the use of message command in a report? What are the different message types?

MESSAGE command displays messages defined by a message ID specified in the REPORT statement at the beginning of the program. The message ID is a 2 character code that defines which set of 1,000 messages the program will access when the MESSAGE command is used.

Message Type Consequences
E Error The message appears and the application halts at its current point. If the program is running in background mode, the job is canceled and the message is recorded in the job log.
W Warning The message appears and the user must press Enter for the application to continue. In background mode, the message is recorded in the job log.
I Information A pop-up window opens with the message text and the user must press Enter to continue. In background mode, the message is recorded in the job log.
A Abend This message class cancels the transaction that the user is currently using.
S Success This provides an informational message at the bottom of the screen. The information displayed is positive in nature and it is just meant for user feedback. The message does not impede the program in any way.
X Abort This message aborts the program and generates an ABAP short dump.

What is the use of lock objects?

Lock Object is a feature offered by ABAP Dictionary that is used to synchronize access to the same data by more than one program. Data records are accessed with the help of specific programs. Lock objects are used in SAP to avoid the inconsistency when data is inserted into or changed in the database. Tables whose data records are to be locked must be defined in a Lock Object, along with their key fields.

Get Global Python Certification

Get Started Python Online Training Now!

What is lock mechanism? How do we create lock objects in ABAP?

Following are the two main functions accomplished with the lock mechanism −

A program can communicate with other programs about data records that it is just reading or changing.

A program can prevent itself from reading data that has just been changed by another program.

A lock request is first generated by the program. Then this request goes to the Enqueue server and the lock is created in the lock table. The Enqueue server sets the lock and the program is finally ready to access data.

Go to transaction SE11 to create lock objects.

Why do we use logical blocks in ABAP program?

In SAP ABAP environment, modularization involves the organization of programs into modular units, also known as logical blocks. It reduces redundancy and increases program readability even as you are creating it and subsequently during the maintenance cycle. Modularization also enables reusability of the same code again.

What are the different types of ABAP reports in SAP?

There are 7 ABAP report types in SAP and are available in reports attributes screen.

  • Executable program
  • Interface pool
  • Function groups
  • Include
  • Class pool
  • Module pool
  • Subroutine pool

What is a subroutine?

A subroutine is a reusable section of code. It is a modularization unit within the program where a function is encapsulated in the form of source code. You page out a part of a program to a subroutine to get a better overview of the main program, and to use the corresponding sequence of statements many times.

What is the different between template and a table?

You can define table as dynamic and template as static.

What are the data classes in ABAP?

Below data classes exists in ABAP programming as per data type −

  • Master data: It is the data which is slowly changed.
  • Transaction data: It is the data which is often changed.
  • Organization data: It is a customizing data which is entered in the system when the system is configured and is then rarely changed.
  • System data: It is the data which R/3 system needs for itself.

Which function modules can be used to transfer the data using BDC programming?


What is the use of ABAP data dictionary?

ABAP data dictionary defines logical structures of the objects in application development and also tells mapping to the underlying relational database in tables/views.

What is the different between ABAP and OOABAP? Why do we use OOABAP?

OOABAP involves object oritented programming concepts. ABAP is used to develop traditional programs in R/3, while OOABAP is used to develop smart forms, BADI’s, etc.

What are the different ABAP editors? What is the used of different editors in ABAP?

In SE38 − This allows you to create programs and view online reports and basically to perform all the development of objects in this editor.

In SE80 − It supports additional features such as creating packages, function group, module pool, classes, and programs.


It is used to format ABAP code.

Explain the difference between cluster tables and Pool table?

The data of several cluster tables is stored together in a single table cluster in the database. A cluster table is thus known only in the ABAP Dictionary, not in the database.

The data of several pooled tables are stored together as a table pool in the database.

You may be interested in