Top 25 ABAP Interview Questions - Solved
| |

SAP ABAP Interview Questions – Solved

Below ABAP Interview questions are collected from industry experts who interview 100’s of students. Go through all the questions and solved questions which can help in your interview. Happy Learning.

1. Explain about 3-Tier Architecture?
Presentation Layer (GUI): It is an environment where all the users are sent for the services.

Application Layer: It receives requests from the presentation layer to get them processed. It also sends back the services to the presentation layer. There are 4 types of components in application layer.

Dispatcher: It is a link between the presentation layer & the work process. It receives the request from the presentation layer & sends them to an appropriate work process to get them processed.

Gateway/Layer: It is a communication protocol of the cross application components such are $, BAPI etc. It provides link between two SAP systems.

Shared Memory: It is a common memory which can be shared by all the work process.

Work Process: It is a component to execute the applications.

Database Layer: It is central repository of the data. It provides data base services to group of clients.

2. What is Object Navigator?
It is the central point of entry to work with any kind of work bench objects such as Programs, DDIC objects, Function groups etc. The T-code is: SE80.

3. What are Workbench objects/tools?
It is a collection of tools which can be used to develop the applications, change the existing  applications & implement the customer specific business requirements.

4. What is Where Used List?
It is used to list out all the dependent objects & know the usage of the particular object.
The T-code SQVI is used to check the relationships between the tables.

5. What is Data Dictionary/DDIC?
Data Dictionary is central & structure d source of data. The data objects can be referred anywhere in the system & the data definitions are maintained in the DDIC.

6. What is Client & Server?
Client: It is a software/hardware combination which can send the requests for services from the central system.
Server: It is a software/hardware combination which can provide the services to a group of clients.

7. What are different types of Data Dictionary Objects?

  1. Database Tables
  2. Domains
  3. Data types
    • Data element
    • Structure
    • Table type
  4. Search helps
    • Elementary search help
    • Collective search help
    • Database view
    • Maintenance view
    • Help view
    • Projection view
  6. Lock objects
  7. Type groups TheObjectsViews, Match Code and Lock objects are called Aggregate Objects because they are formed from several related table.

8. What is the difference between TYPE and LIKE?
TYPE: – It is used to refer the Elementary data types (I, F, P) & DDIC objects. It doesn’t copy  the properties of DDIC objects.
                        Syntax: –  DATA : <gv-var> TYPE <I/D/F/C……>.

  • This Statement doesn’t copy the existing properties of the objects.
  • LIKE: – It is used to refer only the data objects.
    Syntax: –  DATA : <gv-field> LIKE <dbtab_field>.
  • This Statement copies the existing properties of the objects.

9. Explain few of the additions to PARAMTERS and SELECT-OPTIONS statements.
Obligatory: It is the keyword to make the input field as mandatory Default: It is the keyword to pass the default values to the input fields.

As checkbox: It is the keyword to define the checkboxes in the selection screen Radio button group: It is the keyword to define the radio buttons in the selection screen

As list box: It is used to define the dropdown list in the selection screen.

MATCHCODE OBJECT: It is used to specify DDIC search help to the input fields MODIFID: It is used to assign all the screen elements to the modification group to format the Selection fields dynamically.

LOWER CASE: It is used to make the input fields as case sensitive to accept both upper & Lower case letters

Memory ID: It is the keyword to access the field value from one session to another session


  • NO-EXTENSIONS: This addition is used to hide the multiple selection button in the Selection screen.
  • NO-INTERVALS: This addition is used to hide the higher limit of select-options in the Selection screen.
  • DEFAULT…TO: This addition is used to pass the default values to lower & upper limits .

10. What are the different parameters in Function Modules and Explain about them?
Following are the different types of Parameters in Function Modules  Attributes:

It contains technical properties of a function module such are type of function module, function group.

  • Import parameters:

They are imported from the calling program to the function module.  Export parameters:

These are used to exported the data from the function module to the calling programs.

  • Changing parameters:

These are imported from the calling program, changed them in the function modules & exported/returned to the calling program.

(Import -> Change -> Export)  Tables:

These can be used to import & export only for internal tables.

  • Exceptions:

They are used to raise/handle the messages in the function module based on return code (SY-SUBRC).

  • Source code:It is used to write central ABAP source code.

11. How to debug Background Jobs?
The Background jobs can be debug using the command ‘JDBG’.

  • Execute the T-code SM37
    • Check the required background job to be debug.  Enter JDBG in the Command field & Press Enter
    • Keep on pressing F7 until the required program is stopped.
    • Use the Function keys F5/F6/F7 to check the program Line by line/Block by Block once it is reached.

12. What are the Function Modules associated with ALV Reports?
The standard ALV display Function module

‘REUSE_ALV_LIST_DISPLAY’ is used to display the populated final internal table data in ALV LIST format.

  • The Field values cannot be edited in case of ALV List format.
    1. Logos/Images cannot be displayed in ALV List format. The standard ALV display Function module

‘REUSE_ALV_GRID_DISPLAY’ is used to display the populated final internal table data in ALV GRID format.

  • The Field values can be edited in case of ALV GRID format.
    1. Logos/Images can be displayed in ALV GRID format.

The Blocked ALV’s are used to display the data from the multiple internal tables as separate block in the output.

  • The standard ALV display Function modules ‘REUSE_ALV_BLOCK_LIST_INIT’ is used to initialize the different blocks in the output.
    1. ‘REUSE_ALV_BLOCK_LIST_APPEND’ is used to append the internal tables as separate blocks.
    2. ‘REUSE_ALV_BLOCK_LIST_DISPLAY’ issued to display the appended blocks in the output.

The standard ALV display Function module

‘REUSE_ALV_HIERSEQ_LIST_DISPLAY’ is used to display the Header &corresponding item details in HIERARICHAL manner.

13. What is the difference between Flow Logic and Module Pool program?
Flow Logic is used to define the Flow Logic of the screen elements. The modules are used to communicate with the Module Pool Program.

Module Pool Program is used to define the modules of the Flow Logic in screens. The T-code SE38/SE80 is used to develop & create the M.P.P.

It can have 4 Include programs such are *TOP, *F01, *I01, *O01.

14. What are the difference types of Windows?

Windows: – They are used to define the different types of windows.

  • Following are the different types of windows.
    1. Main Window: It is the default widow. It is used to display the continuous text on the pages. Without main window we can’t design SAP scripts. The system generates the pages dynamically for main window. Up to 99 main windows can be created in a form.

The window type is ‘MAIN’.

  • Constant Window: This window contains the static content which can be formatted only once to print/display the same contents on all the pages.
    1. Variable Window: It is used to print the data based on the window size. It can be formatted for each page to print/display the different contents. Without a variable window also we can design the SAP script.
    2. Graphic Window: It is used to print/display the graphics/logos on the page.

15. What are the different types of Symbols in Scripts?
The Symbols are the constants which can be inserted n the page windows to display / print the corresponding contents/data. Symbols are of 3 Types.

System Symbols: They are used to display the system data such as date, time etc …

Ex: &DATE&, &DAY&, &MONTH&

&DATE&System Date
&DAY&Day of the System
&MONTH&Month of the System
&YEAR&Year of the system
&TIME&System Time
&HOURS&System Hours (HH)
&ULINE&Horizontal Line

16. What are the Smart Form events?
Only On First Page: To Print/Display the data on the 1st page only.

  1. Not on First Page: The corresponding contents are not to Print/Display on the 1st page.
    • Only after end of Main Window: To Print/Display the corresponding contents after the MAIN window is processed.
    • Only Before end of Main Window: To Print/Display the corresponding contents of the node or text node before the MAIN window is ended.

17.What are the Transaction Codes associated with BADIs?
T-code SE18 & SE19: are used to work with the BADI’s

T-code SE18: used to define the BADI’s

T-code SE19: used to implement the BADI’

18. What are the types & sub types of BADIs and explain about them?
It is used to add the additional customer specific business logic to the standard programs.

  1. Classic/Old BADI: These are mostly used in the functional areas like SD, MM, FI/CO. The standard method “GET_INSTANCE” of the standard class “CL_EXIT_HANDLER” is used to work with the classic BADI’s.
    • Kernel/New BADI: The ABAP statements “GET BADI & CALL BADI” are used to work with New BADI’s. It is faster than Classical BADI’s.

GET BADI: This statement is used to generate a New BADI object & sets the BADI reference to the objects in the BADI reference variables.

CALL BADI: This statement is used to call the Methods of the New BADI’s.


Single use BADI: The single use BADI can’t beimplemented for multiple times. This BADI can have only one implementation.

Multiple use BADI: The multiple use BADI’s can’t be implemented for the multiple times.

Filter Dependent BADI: It is used to control the BADI implementation based on the specified filter value. The system generates an Import parameter ‘FLT_VAL’ to pass the filter values for controlling the business logic of the BADI implementation.

19. How to make Destination (system-id) as dynamic?
IF Sy-sysid EQ ‘CMD.

<gv_dest> = ‘R3D’.

ELSEIF Sy-sysid EQ ‘CMQ.

<gv_dest> = ‘R3Q’.

ELSE Sy-sysid EQ ‘CMP.

<gv_dest> = ‘R3P’. *Call RFC


DESTINATION <gv_dest>    “R3D

20. How to handle exceptions in RFCs and BAP Is?
You can handle the exceptions by using a structure BAPIE1RET2 which returns the messages captured in BAPI. In Tables parameter of your BAPI, you can create a structure as of type BAPIE1RET2 so that you can capture the ‘RETURN’ parameters from BAPI.

21. How to handle error messages in standard BAPI’s?
Get all the message details into a written table of the type BAPIRET such as Message ID, Message type, Message variable etc.

       1.     Use the standard function modules ,

MESSAGE_INITIALIZE ( Initialize messages),

MESSAGE_STORE (To store messages) &

MESSAGES_SHOW (To display messages in the Dialog box/Model dialog)

22. What is Extended BAPI?
Standard BAPI’s can be extended to add the customer specific additional field.

Standard BAPI contains table’s parameter EXTENSIONIN, EXTENSIONOUT in case they are extended BAPI’s.

BAPI extensionin is used to update custom fields of a table (ex: MARA).

BAPI extensionout is used to retrieve custom fields of a table.

23. What is ALE& EDI?
ALE stands for Application Link Enabling. It is used to distribute the data between two different SAP systems/Servers.

EDI stands for Electronic Data Interchange. It is used to distribute the databetween SAP & non-SAP systems/servers.

24. How to check the IDOCs?
WE19 is the T-code to check the IDOC’s.

  • Execute WE02/WE05
    1. Provide the Message type: CREMAS (Logical Sys), Partner no: LS810 & Click on Execute
    2. After we get the status code 03, if we want to know the IDOC is reached to destination or notthen we execute RBDMOIND standard program.
    3. The status of an IDOC (3) use in Green color (turn 10 to12) means it is delivered

Successfully, Yellow traffic light indicates/the status code remains same, IDOC is in Progress or in the Transaction RFC & Red traffic light/the status code turns 10 to 11 indicates the Error/the IDOC is damaged.

Expand the Data Records folder & click on each segment to see the data to be distributed.

25. What is Package & Transportable Objects?
Package: It is a collection of transportable objects. The package is used to save all   the transportable objects.

Transportable Objects: They must be saved under the required package. The system generates the unique Transport Request number while saving the objects under the package. The transportable objects can be released from one system to another system.

We are going to update more SAP ABAP INTERVIEW QUESTIONS on our page .
So Please read them and Get ready for your Interview .
You can also go through our other article on ABAP, which explains you the career prospects in you choose ABAP as your career


Similar Posts