0% found this document useful (0 votes)
625 views37 pages

Sap Abap Interview Questions

Uploaded by

varshitha
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
625 views37 pages

Sap Abap Interview Questions

Uploaded by

varshitha
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 37

SAP ABAP Interview Questions

To view the live version of the


page, click here.

© Copyright by Interviewbit
Contents

SAP ABAP Interview Questions for Freshers


1.   What is SAP ABAP?
2.   What is meant by data dictionary in ABAP?
3.   Differentiate between transparent and pool tables.
4.   What is Web Dynpro for ABAP?
5.   What are smart forms in SAP?
6.   What are the different ABAP/4 editors?
7.   What is ITS in SAP? What are the merits of ITS?
8.   Explain about lock objects in SAP ABAP.
9.   Explain the types of function modules in SAP ABAP.
10.   What do you mean by the workflow in SAP ABAP?
11.   What are Smart forms in SAP ABAP?
12.   Explain about interfaces in SAP ABAP.
13.   What is the type group in SAP ABAP?
14.   How can we insert a line into ABAP internal tables?
15.   What is SAP Script? Describe its components.
16.   Explain about types of buffering in SAP ABAP.
17.   Difference between Type and Like in ABAP.
18.   What is meant by ALV(Application List Viewer) programming in SAP ABAP?
19.   What are internal tables in SAP ABAP?
20.   Explain the advantages of the modularization technique.

Page 1 © Copyright by Interviewbit


SAP ABAP Interview Questions

SAP ABAP Interview Questions for Experienced


21.   Explain the 3-tier SAP ABAP architecture.
22.   What is Transport Request in SAP?
23.   What are OSS notes in SAP ABAP?
24.   Explain about Adobe forms in SAP ABAP.
25.   Does the ABAP object support multiple inheritances?
26.   Mention the Differences between BAPI and RFC in SAP ABAP.
27.   Explain the sequence of events firing in report programming.
28.   What is IDoc in SAP ABAP?
29.   Explain different types of views in SAP ABAP.
30.   Differentiate between ALE and EDI.
31.   Explain about Enhancement framework in SAP ABAP.
32.   How many functional modules will be used in sequence in BDC(Batch Data
Communication)?
33.   Give some SAP ABAP real-time scenarios.

ABAP Programming Examples


34.   Write an ABAP program to display username, date, time, and sum by providing
two inputs.
35.   Write an ABAP sample program for ALV display.

Frequently Asked Questions


36.   Is SAP ABAP tough?
37.   Is SAP ABAP a good career choice in 2022?

Page 2 © Copyright by Interviewbit


SAP ABAP Interview Questions

Frequently Asked Questions


38.   How do I become an SAP ABAP Developer?
39.   What is the salary of SAP ABAP Developer?
40.   What are the skills required for SAP ABAP?

Page 3 © Copyright by Interviewbit


Let's get Started

Introduction to SAP ABAP

SAP(Systems, Applications, and Products in Data Processing) is a so ware type called


Enterprise Resource Planning(ERP) that is used by large companies for managing
their daily affairs. ABAP in SAP is used for developing RICEFW(Reports, Interfaces,
Extensions, Forms, and Workflows) objects. Advanced Business Application
Programming is a full form of ABAP in SAP. SAP ABAP is a 4th generation application-
specific programming language used for creating an application for the SAP R/3
system. Those applications will run in SAP that has been written with the help of
ABAP/4.
It is currently put along with Java as the programming language for SAP NetWeaver
Application Server(part of the SAP NetWeaver platform) for developing business
applications.

Scope of SAP ABAP

SAP is widely used by plenty of organizations & one of the major reasons behind the
popularity of SAP is that it was specially developed for distributed applications. SAP
ABAP gives extended versatility to the SAP applications such that varied database
systems can be contiguous as per user demands.
The scope of the SAP ABAP career is vast. ABAP can give a prominent career boost for
a programmer recognizing their commitment levels. Once you become a member of
the SAP community, you can begin your career as a trainee, followed by a junior
counsellor, then a specialist, a erwards a senior specialist, and then finally a lead
consultant.

Page 4 © Copyright by Interviewbit


SAP ABAP Interview Questions

An ABAP consultant’s profession is never going to fade as the business process keeps
changing, the technologies also keep getting renewed from time to time which
enforces the person to tune into the variations and learn new forthcoming
technologies. The career of SAP ABAP consultant is intellectually challenging, along
with that it is professionally & financially satisfying.

SAP ABAP Interview Questions for Freshers


1.   What is SAP ABAP?
SAP(Systems, Applications, and Products in data processing) is an ERP(Enterprise
Resource Planning) type of so ware that is used to manage the daily affairs of a large
company. Advanced Business Application Programming or ABAP is the fourth-
generation programming language and is used to allow the mass-processing of data
in SAP business applications. It is possible to build enterprise applications for a larger
business and financial institution with the help of the SAP ABAP platform. So, SAP
ABAP will protect from organizational data breaches and security threats to
information leakage.
SAP ABAP is suitable for integrated applications that a company will use to collect,
manage, store, and interpret data from various functional areas. It will act as a single
data source and share data within all the units of an organization. It helps the
customers for running their business with greater accuracy.

2.   What is meant by data dictionary in ABAP?

Page 5 © Copyright by Interviewbit


SAP ABAP Interview Questions

ABAP data dictionary represents metadata(i.e. data about data) that is present
inside the SAP database in addition to the metadata maintained by the
database. Data dictionary allows the necessary description of all the data
without redundancies that are used in the system. New or updated information
will be provided automatically for all the system components. This ensures data
security, data consistency, and data integrity.
It is used to describe the logical structures of certain objects that can be used in
the development of the ABAP/4 application and it can also display the
underlying relational database in tables.
The data dictionary is useful in creating and managing data definitions as well as
in creating Tables, Domains, Views, Data Elements, and Types. Also, it supports a
few standard functions for editing screen fields like assigning input help to the
field of a screen.

3.   Differentiate between transparent and pool tables.

Page 6 © Copyright by Interviewbit


SAP ABAP Interview Questions

Transparent Table Pool Table

It has many to one


It has one to one relation
relationship with the
with the database table
database table

It contains a large number of


It contains only a single table
small tables

Stores customizing data or


Stores master data
system data

A secondary index can be A secondary index cannot be


created created

Can be accessed using Open Can be accessed only using


and Native SQL Open SQL

The database table will have The database table will have
the same name, the same a different name, different
number of fields, and the number of fields, and
same field names different field names

4.   What is Web Dynpro for ABAP?


Web Dynpro(WD) is an SAP standard user interface technology for ABAP and is used
for developing the web-based application in SAP using the development concepts
and techniques of SAP. It provides a front-end web user interface for connection with
backend SAP R/3 systems to access data and also for reporting. It has a graphical
development environment along with a runtime environment that has specific
development tools that are combined in the ABAP Workbench.

Page 7 © Copyright by Interviewbit


SAP ABAP Interview Questions

5.   What are smart forms in SAP?


SAP Smart Forms is a tool used for printing and sending documents. It is useful in the
development of forms, e-mails, PDF files, and documents for the Internet. This tool
offers an interface for building and maintaining the layout and logic of a form. SAP
delivers a form selection for business processes such as those used in Sales and
Distribution(SD), Customer Relationship Management(CRM), Human Resources(HR),
and Financial Accounting(FI).
This tool permits you for form modification with the help of simple graphical tools
rather than using any programming tool. It implies that a user without any
programming knowledge will be able to easily configure these smart forms with data
for a business process.

6.   What are the different ABAP/4 editors?


The two ABAP/4 editors are:
SE38: It allows you for the program creation and to view the online reports and
essentially performs all the object development in ABAP/4 editor.
SE80: It supports additional features like the creation of packages, module pool,
function group, programs, classes, and BSP(Business Server Page) applications.

7.   What is ITS in SAP? What are the merits of ITS?


ITS(Internet Transaction Server) in SAP is the necessary link between the internet
and the SAP R/3 system. It is integrated into the kernel that belongs to SAP
Netweaver Application Server. ITS creates an interface between the R/3 system and
HTTP server for converting screen-provided data by the R/3 system into HTML files
and vice versa. Because of integration with ITS, a web browser is able to do direct
communication with an SAP System. ITS is accessed with the help of “Internet
Communication Manager”.
Merits of ITS are:

Page 8 © Copyright by Interviewbit


SAP ABAP Interview Questions

It is possible to develop and test the comprehensive web transaction in the R/3
system.
It acts upon all transaction components, including those components used
outside of ITS.
In the R/3 system, using automatic language processing utilization of language-
dependent HTML documents can be done during runtime.

8.   Explain about lock objects in SAP ABAP.


Lock Object is an ABAP Dictionary provided feature used for synchronizing the access
to the same data by multiple users or programs. Lock Objects in SAP ABAP are used
for avoiding inconsistency during data insertion or modification in the database.
Tables whose data records are gonna locked must be defined with their key fields in a
Lock Object.
Consider an example for the usage of Lock Object, suppose a travel agent wants to
book a place in flight. Also, the customer wishes to fly to a particular city on a
particular day with a particular airline. The booking will be possible only if there
exists a free place on the flight. The database entry for the flight must be locked
through access prevention for other transactions to avoid the possibility of
overbooking. This will make sure that a user can find out the number of free places,
do the booking, and change the available number of free places without the data
being changed at the same time by another transaction.

9.   Explain the types of function modules in SAP ABAP.


Function Modules are encapsulated procedures in ABAP and are grouped in Function
Groups. Function modules are created with the help of Function Builder(transaction
SE37). The type of function module relies on the type of processing.
Function module types are:
Regular function module: It will be executed immediately and synchronously
on the current SAP system of the user. It is the default option.

CALL FUNCTION funcname { parameter_list | parameter_tables }.

Page 9 © Copyright by Interviewbit


SAP ABAP Interview Questions

Remote-enabled function module: It is called by remote systems(R/2 or R/3)


that utilize the RFC protocol. For example, it is possible to define a Remote
Function Module in an EWM(Extended Warehouse Management) system which
will be later called by your ERP(Enterprise Resource Planning) system for
obtaining further information related to stock levels or shipment details.

CALL FUNCTION funcname DESTINATION dest parameter_list.

The above statement calls the target system mentioned under dest synchronously.
The unique name of a destination should be used for the parameter dest.
Update function module: This module will not be executed immediately. This
update process will be triggered by the COMMIT WORK statement. The
ROLLBACK WORK statement is responsible for deleting all update function
module registrations.

CALL FUNCTION update_function IN UPDATE TASK


[EXPORTING p1 = w1 p2 = w2 ...]
[TABLES tab1 = itab1 tab2 = itab2 ...].

IN UPDATE TASK will bundle database modifications into a single database called
LUW. Since the update happens asynchronously, it is proved beneficial for
performance.
BAPI(Business Application Programming Interface) function module: BAPI is
a Function Module that provides a standard interface for business objects
available in SAP. Common usage of BAPI is to create/delete/update/read
business objects such as Business Partners, Purchase Orders, or Sales Orders.

10.   What do you mean by the workflow in SAP ABAP?

Page 10 © Copyright by Interviewbit


SAP ABAP Interview Questions

In the SAP system, workflows in business are used for executing business processes in
applications. Workflows are the SAP system’s essential component that helps in
business process design, it can be either a simple process or a complex repeated
business process. These are predefined in the SAP R/3 system and the user is allowed
to create their new workflows. It also permits the users for managing business
processes in the most efficient manner.
Workflows will make sure that the correct information will be sent to the right person
at the right time in a proper sequence. It is a tool for business process automation
and will uniformly work across all the applications. It is suitable for business
processes that involve multiple people or a group of people.

11.   What are Smart forms in SAP ABAP?


The smart form allows to create, design, and maintain forms for bulk printing in SAP
Systems. SAP smart forms will support printers, e-mail, fax, or the Internet as an
output medium. We can embed images, texts, barcodes, tables, and ABAP codes with
smart forms. On smart form activation, a function module will be generated that an
ABAP program needs to call. SMART STYLES transaction is helpful in defining the
paragraph and character formats(barcodes, fonts, etc).
Advantages of smart forms are:
It helps to adapt the forms with the help of a graphical user interface and there
is no need for programming knowledge.
During smart form activation, the system will automatically generate the
function module.
For making any changes we need to use the Cut & Paste, Drag & Drop. These
actions do not include the writing of coding lines or using a scripting language.
It is possible to insert the static and dynamic tables using smart forms.
It permits the user to include graphics, that will be shown as a part of the form or
as background graphics. It is possible to suppress the background graphics by
the user as and when it is necessary.

12.   Explain about interfaces in SAP ABAP.

Page 11 © Copyright by Interviewbit


SAP ABAP Interview Questions

Interface in SAP ABAP is an independent structure that is used when two similar
classes have the same method name, but the functionalities of each will be different
from each other. It looks similar to classes, but the method defined in an interface
needs implementation in a class for extending the scope of that class. Interfaces, as
well as inheritance features, will provide a base for polymorphism, because a
function defined in an interface may act differently in various classes.
Following is the syntax for the creation of an interface:

INTERFACE <interfac_name>.
DATA.....
CLASS-DATA.....
METHODS.....
CLASS-METHODS.....
ENDINTERFACE.

In the above given syntax, <interfac_name> stands for the interface name. The DATA
and CLASS-DATA statements are used for instance and static interface attributes
definition respectively. The METHODS and CLASS-METHODS statements are used for
instance and static interface methods definition respectively. Here, the interface
definition will not include the implementation class, so adding the DEFINITION clause
in the interface declaration is not mandatory.

13.   What is the type group in SAP ABAP?


A type group is an ABAP Dictionary-managed ABAP program that is initiated by the
TYPE-POOL statement and that consists of ABAP statements that define globally
visible constants, data types, and macros. A type group and its constants, data types,
and macros do not have semantic attributes excluding short text and any comments
in the source code. The type group name can have only five characters, must begin
with a letter, and can have numbers or letters or underscores.
For example, one type group frequently used in the ABAP program is ABAP itself,
which consists of multiple low-level constants and types. The disadvantage of this
group is loading the entire type group is necessary, even if only a few constants and
types are required.

14.   How can we insert a line into ABAP internal tables?

Page 12 © Copyright by Interviewbit


SAP ABAP Interview Questions

With the help of the INSERT statement, it is possible to insert a line or lines into
internal tables of ABAP. For inserting a line, you need to put the values which we wish
to insert in a work area, then later you can use the INSERT statement for inserting the
values in the work area then into the internal table.
The general format for a line insertion into an internal table is:

INSERT <work area> INTO TABLE <internal table>.

OR

INSERT <work area> INTO <internal table> INDEX <index>.

15.   What is SAP Script? Describe its components.


SAP script is a text-processing system that belongs to the SAP System. It is used for
printing pre-formatted text in the corresponding forms.
SAP Script has the following components:
Editor: It will be used to enter and edit the lines of a text.
Styles and layout set: It is mainly used for print layout. I will be created using
the corresponding maintenance transactions independent of the individual
texts and will be allocated to the texts later.
Composer: It is a central output module and is invisible to the outside.
Programming interface: It permits you for adding SAP script components into
your application programs and for controlling the layout set output from within
the programs.
Database tables: It will be used for styles, layout sets, and storing texts.

Page 13 © Copyright by Interviewbit


SAP ABAP Interview Questions

16.   Explain about types of buffering in SAP ABAP.


Three types of buffering can be found in SAP ABAP, that can be configured for a
database view or database table in ABAP Dictionary. They are:

Page 14 © Copyright by Interviewbit


SAP ABAP Interview Questions

SAP Buffer - Single Record Buffering:


In this type of buffering, only actually accessed rows in the table will be buffered.
It needs less space in the buffer when compared to generic or full buffering. But
it requires more amount of administration work and direct database access. If
SELECT SINGLE is used for accessing a non-buffered row, it tries to load the row.
If the row is not available, this will be noted in the buffer and the database will
not again access the next time SELECT SINGLE has been used.
SAP Buffer - Generic Buffering:
In this type of buffering, SAP buffer will be loaded with all rows that match a
row(on which read is performed) in a le -justified part of the primary key. The
count of key fields covered is mentioned within the definition and will be always
less than the key field’s total count. Altogether, these key fields are considered
as the generic key. Each generic area will be managed similarly as standalone
views or tables whose primary key will be the generic key and that are fully
buffered.
SAP Buffer - Full Buffering:
In this buffering, on reading a row, all rows in the view or table will be loaded
into the SAP buffer. The buffered view or table will be either completely in the
buffer or not at all. In the buffer, the buffered data records will be sorted on the
Key of the view or table basis. Optimized access needs the le -justified part of
the primary key/the secondary index fields to be as large as possible. If not, the
buffer will be scanned in a linear format.

17.   Difference between Type and Like in ABAP.

Page 15 © Copyright by Interviewbit


SAP ABAP Interview Questions

‘Type’ ‘Like’

You can assign the You can assign the data type of one
data type directly object to another during the
during the declaration of the data object. The
declaration of the datatype will be indirectly referenced
data object here.

It is used when
user-defined
It is used when data objects connect
objects connect
with the other data object
with SAP system
data type

Type keyword is
Like keyword is useful in copying the
useful in referring
existing data object properties
to the data type

18.   What is meant by ALV(Application List Viewer) programming


in SAP ABAP?
The ALV or Application List Viewer is used for improving the report output. We can
avail the set of ALV function modules with the help of SAP and those will be used to
improve the functionality or readability of any output of the report. It is a relevant
tool used for arranging the columns in the output of a report.
Application developers can quickly implement structured dataset displays with the
help of ALV, by providing three different tools of ALV, one each for the display of Tree
structures, Simple and two-dimensional tables, and Hierarchical-sequential lists.
The SAP ALV provides application developers with:

Page 16 © Copyright by Interviewbit


SAP ABAP Interview Questions

An object-oriented API for all ALV tools.


The API which is coherent.
Detecting the error during programming as early as possible.
Functions for accessibility will be in integration with ALV, which implies that no
need of providing these functions yourself while using your application.

19.   What are internal tables in SAP ABAP?


Internal tables are temporary memory areas that exist only during run-time for
storing data at run-time. It can be used only on a subset of database tables for
performing calculations related to the table. It re-organizes the content of the
database according to the requirement of the user.

20.   Explain the advantages of the modularization technique.


Modularization is breaking the application code into smaller parts, so that
maintenance will be easier. Consider an example where you want to implement the
same logic like the addition of two numbers in multiple parts of the same program,
then put the logic within a modularization unit and this modularization unit can be
called wherever you want to add two numbers.
Advantages of modularization techniques are:
Modularization will eliminate redundancy if the program is having similar
statement blocks or it needs to process the same function multiple times. Thus
it increases the code reusability.
Using this modularization technique, we can make the program easier to read
and improve the program structure.
Modularized programs will be easier to maintain, update, and debug.

SAP ABAP Interview Questions for Experienced


21.   Explain the 3-tier SAP ABAP architecture.
The SAP ABAP 3-tier architecture has 3 major layers. They are:

Page 17 © Copyright by Interviewbit


SAP ABAP Interview Questions

Page 18 © Copyright by Interviewbit


SAP ABAP Interview Questions

Presentation Layer: It is an interface or program known as “sapgui.exe”


installed on a PC or Workstation of a user. This interface will accept user inputs
in the form of mouse clicks, function keys, or keystrokes and will send the
request that needs to be processed by the application server. The application
server will send the result back to the interface and output formatting will be
done in order to display it to the user.
Application Layer: This is an executable set that togetherly does ABAP/4
program interpretation and will also be able to do input/output management
for them. When the application server gets started each and every executable
will get started at the same time and when the application server stops, they
shut down together. The details about the number of the process that began
during the starting of the application server will be specified in a single
configuration file known as Application Server Profile. The application server is
in existence for interpreting and running the ABAP/4 programs. It is possible for
an ABAP/4 program to start an executable on the presentation server but the
execution of them is not possible. When an ABAP/4 program makes a request for
the data from the database, then that request will be formatted by the
application server, and finally, the formatted request will be sent to the database
server.
Database Layer: This is an executable set that will accept requests for the
database that came from the application server. The requests will be passed on
to the database, it will be processed and information will be sent back to the
database server, from there it will be later passed on to the application server.
The application server will pass on this database retrieved information to the
ABAP/4 program.

22.   What is Transport Request in SAP?

Page 19 © Copyright by Interviewbit


SAP ABAP Interview Questions

Transport Requests(TRs) are a ‘Container or Collection’ type of change that can


be done in the development system. Also, the information related to the
requested category, type of change, the target system, and the purpose of
transport will be recorded. Transport requests are also called Change Requests.
Every transport request will have multiple(one or more) change jobs(change
Tasks). Tasks will be stored inside a TR, in the same way as multiple files will be
stored in some folder. TR will be released only once a er the
completion/release/deletion of all the tasks inside a TR.
Change Task is an object list that has gone through a modification by a specific
user. Each task must be assigned to(and released by) a single user only. Anyways,
multiple users will be assigned with each Transport Request. Tasks cannot be
transportable by themselves, it can be done only as a part of TR.

23.   What are OSS notes in SAP ABAP?


OSS(Online Service System) notes are a part of an online SAP service portal that
gives up-to-date information about SAP notes. It is the Knowledge Base of SAP
that will address the known issues specifically in the SAP system. It frequently
releases patches, new program developments, bug fixes, and other various
updates by SAP. This will provide a list of correction notes for SAP objects.
OSS Notes will be continuously updated as customers report issues in the SAP
system and SAP will release a note that includes detailed instructions about
fixing or addressing the issue. Most of the issues get addressed or fixed when the
next version of the same component gets released by SAP and hence it is very
important to see note applicability related to the version where an issue is being
addressed. Each note will be applied to a version and almost all its predecessor
versions. Before you start with your work, it is necessary to check for the
presence of a particular in your SAP system.

24.   Explain about Adobe forms in SAP ABAP.

Page 20 © Copyright by Interviewbit


SAP ABAP Interview Questions

Adobe forms is a technology used for developing the forms and now it has
become the current standard in SAP for form development. To use these forms,
a Java stack must be first installed in SAP Basis. Along with that, developers
need to configure the Adobe Document Service(ADS). Adobe LiveCycle
Designer(LCD), GUI(graphical user interface) for Adobe Forms- must also require
to be installed separately as the application will run on Windows.
Using Adobe Forms, we can create the forms in companies, fill out the form,
output as a print form, show it as a PDF file on screen, or even it can be sent.
Such forms will include purchase orders, orders, and invoices.
From the SAP system, it reads the associated master data and transaction data.
The data will be displayed by the application in the predefined and desired form,
for example, as a print form. Entering data in forms is also allowed.
Adobe has become the successor to SAPscript and SmartForms. This technology
has surpassed its two predecessors SAPscript and SmartForms in various areas
like performance and design.
We can separate design and programming by using Adobe forms in SAP. Also,
Interactive Forms by Adobe in SAP provides different suitable tools and
functions for the easier design of a form.
It is possible to customize the forms by form developers with the help of their
own programming by using two script languages Adobe FormCalc or JavaScript.
The developer tool for Adobe Forms will be accessed through SFP(SAP tcode-
Form Builder) transaction.

25.   Does the ABAP object support multiple inheritances?


Multiple inheritances mean where multiple classes can be a superclass of a single
class. ABAP objects don’t support multiple inheritances as we can’t inherit a class
from more than one class. It allows defining a class inheriting from only a single class
in ABAP objects. If you are trying to define multiple superclasses during class
definition, an error message will be prompted by the compiler. But still, you can
accomplish a similar functionality like multiple inheritances by using Interfaces in
SAP ABAP.

26.   Mention the Differences between BAPI and RFC in SAP ABAP.

Page 21 © Copyright by Interviewbit


SAP ABAP Interview Questions

BAPI(Business Application Programming Interface) RFC(Remote Funct

It is a standard SAP
It is a standard programming interface that allows
interface for
accessing business processes as well as data for
communicating bet
external applications in the R/3 system
various SAP system

It is used to call the


Used to access SAP functions across stable, formal,
modules that reside
and dialogue-free interfaces
various machines

Success or error message will be returned on a It does not have a R


RETURN table table

It does not allow th


It allows connecting with the SAP for the outside
SAP world to be con
world(VB, .NET, Java, or any Non-SAP system)
to SAP

No business object
A business object is associated with it
associated with it

27.   Explain the sequence of events firing in report


programming.
Report Programs in ABAP are event-driven programs that are used for displaying a
large amount of data. The various events firing will take place in a particular order
within a report program. That is:

Page 22 © Copyright by Interviewbit


SAP ABAP Interview Questions

Top of page: This event will be triggered by the first ‘write’ statement written in
the report. It acts as a page header. By default, the first event triggered will be
the ‘load-of-program’, if the ‘write’ statement is not included in the report.
Load-of-program: This event will be triggered when the program of type
E(Executable program), M(Module pool), F(Function pool), or S(Subroutine pool)
gets loaded. It will be in existence only once per program.
Initialization: This event is used for initializing the values. This event will be
triggered a er the ‘load-of-program’ event and before the display of the
selection screen.
At selection-screen output: This event will be triggered just before the display
of the selection screen. It is used if you wish to change the screen fields during
runtime. It will hide the fields or make them invisible/visible or make them
intensified.
At selection-screen: This event will be triggered processing of selection-screen
by the user. It will be used for checking and validating the inputted values.
At selection-screen on field: This event will be triggered in the PAI(Process A er
Input) when data is transferred from PARAMETERS or SELECT-OPTIONS to ABAP.
It can be used for validating the user input.
At selection-screen on value-request: Using this, if a program field is defined
with ABAP Dictionary field reference for which possible entries help has been
defined, the values from the ABAP Dictionary help will be displayed
automatically on calling F4 help for that field by the user.
Start-of-selection: This event will be triggered on execute button click or F8
button press by the user.
End-of-selection: This event will be triggered on the execution of the last
statement of the start-of-selection event.
End of page: This event will be triggered each time when the list data reaches
the page footer region.

Page 23 © Copyright by Interviewbit


SAP ABAP Interview Questions

28.   What is IDoc in SAP ABAP?


IDoc(Intermediate Document) is an SAP object that carries business transaction data
in the form of electronic messages from one system to another. The IDoc helps for
transferring data/information from the SAP system to other systems and vice versa.
The data transfer between two SAP systems is accomplished by using
ALE(Application Link Enabling) and data transfer from SAP system to non-SAP system
is accomplished using EDI(Electronic Data Interchange) subsystems.

29.   Explain different types of views in SAP ABAP.


A view is a virtual table that consists of fields from one or more tables. There are 4
types of views in SAP ABAP. They are:

Page 24 © Copyright by Interviewbit


SAP ABAP Interview Questions

Projection View: It is used to hide specific fields in a given table and can also be
used to gain access to the cluster, pooled, and transparent tables. Selection
conditions are not available in a projection view. The projection view access will
be through an Open SQL, not Native SQL.
Help View: It is used in the search helps. The search help is able to select
database views, database tables, and special help views. For database views, the
search help is restricted to the inner joins and for database tables, it is restricted
to a single table. It is not possible to define a help view in the database.
Database View: It is a general view used for single or multiple basis tables. Once
the database view is activated, multiple basis tables can be joined with an inner
join by creating a matching SQL view. It is possible to access database views
using both Open SQL and Native SQL.
Maintenance View: It performs writes on different tables using extended table
maintenance. One maintenance view is capable of changing the contents of
many related database tables unfailingly. The maintenance view cannot be
accessed using Open SQL.

30.   Differentiate between ALE and EDI.

Page 25 © Copyright by Interviewbit


SAP ABAP Interview Questions

ALE(Application Link Enabling) EDI(Electronic Data Interchange)

It is an independent technology
It is an SAP technology used for
used for transferring data between
transferring data between SAP
two systems, either between SAP
systems
systems or non SAP systems

Useful in internal Useful in external


communications communications

It is used for distributing the


master data(such as Vendor It is used for exchanging
Master, Material Master) within transaction data(such as Delivery,
a company when a distributed Purchase order) among two
environment has been different business partners
maintained

Technically, data transfer is Technically, data transfer is done


done using memory buffer using a file port

Translator is required for


converting the X12 to
A translator is not required here
IDoc(Inbound) and IDoc to
X12(Outbound)

31.   Explain about Enhancement framework in SAP ABAP.

Page 26 © Copyright by Interviewbit


SAP ABAP Interview Questions

Enhancement framework in SAP ABAP is the new modification-free enhancement


concept that allows you for adding functionalities to standard SAP so ware without
modification of original repository objects. It also helps the consultants, customers,
and third parties by providing an option of enhancing the standard code with custom
code that they wish to add.
The below diagram shows the enhancement framework options.

The enhancement framework is divided into two parts. They are:

Page 27 © Copyright by Interviewbit


SAP ABAP Interview Questions

IMPLICIT Enhancements: In the ABAP report, enhancements are possible by


default at two places, the start of the report and the end of the report. So,
customers are able to do enhancements at the beginning and end by creating
enhancement implementations by default in all the reports.
EXPLICIT Enhancements: The places in the report will be explicitly provided by
the SAP where exactly it can be enhanced. There are three options available
under these explicit enhancements:
Enhancement Point: It will be created in the report where exactly the
customer can enhance so that the expected results at that point can be
modified using enhancement implementations.
Enhancement Section: It will be created in the report by selecting the code
section that can be enhanced using customer implementation.
BAdi: It is mainly used for ABAP Objects where a BAdi definition creation
can be done using an interface with a fixed signature which can be
implemented by the customer using the BAdi implementation.

32.   How many functional modules will be used in sequence in


BDC(Batch Data Communication)?
There are 3 functional modules used in a sequence for successfully performing the
transfer of data in BDC(Batch Data Communication) programming. They are:
BDC_OPEN_GROUP : Parameters such as client name, user name, sessions, etc.,
will be specified in this functional module.
BDC_INSERT : It is used for inserting the data for a single transaction into a
session.
BDC_CLOSE_GROUP : It is used for closing the batch input session.

33.   Give some SAP ABAP real-time scenarios.


SCENARIO 1:

Page 28 © Copyright by Interviewbit


SAP ABAP Interview Questions

Consider that you have got a Business Requirement that says, “It requires a control at
the Production Order level”, which implies that when a sales order has been created,
the creation of a production order will also take place based on the sales order
values. This needs to be stopped for various business reasons. There is no standard
functionality available where the functional user will be able to configure this in SAP.
The current open sales order at the production level should not be hot by the
process. ABAPer has to make a checkpoint creation for the business where the
quantity will be approved by the Manager, which needs to be produced based on the
sales order.
You need to code at numerous user exits and a custom table should be created that
populates all the details of sales orders and restricts the user authority only for the
approval authority like Manager. It has to perform the quality checks multiple times
before we finally decide for moving the code into production.
SCENARIO 2:
Generally, when the creation of a sales order takes place, the sales order gets blocked
based on the credit check or credit limit(if activation was done by the functional
consultants) of the customer. So, you need to ‘unblock’ the sales order even if the
customer has been exceeded the credit limit depending on certain conditions.
For this scenario, you need to write code at numerous places, during the time of the
creation of sales orders and also during the delivery time. This process is known as
enhancements.
So, for ABAPers the constant evolution of SAP coding standards for core ABAP must
be the same, but the methodologies and techniques of implementation or
workarounds will be evolving.

ABAP Programming Examples


34.   Write an ABAP program to display username, date, time, and
sum by providing two inputs.

Page 29 © Copyright by Interviewbit


SAP ABAP Interview Questions

DATA: lv_result TYPE i.


SELECTION-SCREEN BEGIN OF BLOCK bl WITH FRAME TITLE TEXT-001. "Please enter two numbers
PARAMETERS: p_num1 TYPE i,
p_num2 TYPE i. "Variable declaration
SELECTION-SCREEN END OF BLOCK b1.
INITIALIZATION.
CLEAR: lv_result. "To clear variables
START-OF-SELECTION. "To perform business logic
IF p_num1 IS NOT INITIAL AND p_num2 IS NOT INITIAL. "Checking whether values for the v
lv_result= p_num1+p_num2.
ELSE.
MESSAGE 'Please enter two numbers to perform addition' TYPE 'E'.
END IF.

END-OF-SELECTION. "To display the output


WRITE :/ 'Hello', sy-uname.
WRITE :/ 'Date :', sy-datnum, 'Time :', sy-uzeit.
WRITE :/ 'Result : Sum of two numbers is :', lv_result.

In the above program code, you need to enter values for two numbers using
SELECTION_SCREEN. In START-OF-SELECTION by using the if condition, it will check
whether variables are having the values, if it returns true then it will perform the sum,
else it will display a message for entering the numbers.

In END-OF-SELECTION, the user name, date, time, and sum values are displayed.

Page 30 © Copyright by Interviewbit


SAP ABAP Interview Questions

35.   Write an ABAP sample program for ALV display.

Page 31 © Copyright by Interviewbit


SAP ABAP Interview Questions

TABLES: pa002.
*Type Declarartion
TYPES : BEGIN OF ty_employee, "Structure declaration
pernr TYPE pa0002-pernr,
subty TYPE pa0002-subty,
nachn TYPE pa0002-nachn,
vorna TYPE pa0002-vorna,
gesch TYPE pa0002-gesch,
END OF ty_employee.

*--Data Declaration
DATA : lt_employee TYPE STANDARD TABLE OF ty_employee, "Internal table
ls_employee TYPE ty_employee, "Work area
lt_fieldcat TYPE slis_t_fieldcat_alv, "Internal table for ALV display
ls_fieldcat TYPE slis_fieldcat_alv,
lv_repid LIKE sy_repid. "Local variable for the program name

*Selection Screen
SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE TEXT-001. "Please enter employee nu
SELECTION-OPTIONS: so_pernr FOR pa002-pernr. "Selection screen field to enter empl
SELECTION-SCREEN END OF BLOCK b1.
START-OF-SELECTION.
*Data Fetching "To get the employee details from database
SELECT pernr subty nachn vorna gesch
FROM pa0002
INTO TABLE lt_employee
WHERE pernr IN so_pernr.
IF sy-subrc=0.
SORT lt_employee BY pernr.
ENDIF.

END-OF-SELECTION.
*Field Catalog "Inserting records for ALV display
CLEAR ls_fieldcat.
ls_fieldcat-col_pos = 1. "Column position in output
ls_fieldcat-fieldname = 'PERNR'. "Field name in the output
ls_fieldcat-tabname = 'LT_EMPLOYEE'.
ls_fieldcat-seltext_m = 'Employee number'. "Field description
APPEND ls_fieldcat TO lt_fieldcat.

CLEAR ls_fieldcat.
ls_fieldcat-col_pos = 2.
ls_fieldcat-fieldname = 'SUBTY'.
ls_fieldcat-tabname = 'LT_EMPLOYEE'.
ls_fieldcat-seltext_m = 'Sub type'.
APPEND ls_fieldcat TO lt_fieldcat.

CLEAR ls_fieldcat.
ls_fieldcat-col_pos = 3.
ls_fieldcat-fieldname = 'NACHN'.
ls_fieldcat-tabname = 'LT_EMPLOYEE'.
ls_fieldcat-seltext_m = 'Last name'.
APPEND ls_fieldcat TO lt_fieldcat.

CLEAR ls_fieldcat.
ls_fieldcat-col_pos = 4.
ls_fieldcat-fieldname = 'VORNA'.
l fi ld b ' '
Page 32 © Copyright by Interviewbit
SAP ABAP Interview Questions

The below snapshot represents the selection screen.

Output in an ALV grid:

Conclusion

Page 33 © Copyright by Interviewbit


SAP ABAP Interview Questions

To obtain any technical position, theory and basic concepts are necessary for any
fresher who is applying for the SAP ABAP job role, but for an experienced candidate
both practical and applied concepts are mandatory. Usually, for an experienced
candidate, a lot of SAP ABAP interview questions will be related to your previous
project and roles.
This article essentially covered a list of frequently asked SAP ABAP related questions
that fits the interview requirements. A candidate who wants to get a job in an SAP
ABAP role should glance through these questions once before heading towards the
SAP ABAP Interview round. You can prepare well and give your best in the next
interview.

References

“Complete ABAP: The Comprehensive Guide” by Brian O’Neill


“SAP ABAP/4 Black Book” by Dreamtech Press

Frequently Asked Questions


36.   Is SAP ABAP tough?
SAP ABAP is not a so tough language to learn compared to C++, C#, Java. The
difficulty level lies more in being able to convert a business requirement to a
technical solution– it is more in the nature of the program/application you are
writing rather than in the programming language itself.

37.   Is SAP ABAP a good career choice in 2022?


Actually, compared to SAP BI, FICO, Sales and distribution, Material management,
Production and planning, Quality Management, and Human Capital Management,
SAP ABAP is highly in demand with several job opportunities along with high salary
packages. You can excel as an SAP ABAP developer, ABAP Consultant, Business
Analyst and you can also move into a management role a er a few years of
experience in SAP ABAP. So, SAP ABAP is definitely a good career choice in 2022.

38.   How do I become an SAP ABAP Developer?

Page 34 © Copyright by Interviewbit


SAP ABAP Interview Questions

Generally, you can follow the following steps to become an SAP ABAP developer:
Earn a bachelors degree: You can start by completing a bachelor’s degree in
computer science, computer engineering, so ware engineering or a related
field. These degree programs will give you a basic knowledge of SAP ABAP
programming concepts.
Undergo an internship: During the college study, seek an SAP ABAP developer
internship. Finishing an internship allows you to apply for a relevant job role.
Take SAP ABAP courses: You can continue the professional training by taking
SAP ABAP programming courses from certified SAP training institutes online.
This assists you learn more about ABAP since many college degrees give a basic
overview of a variety of languages.
Pursue a masters degree: Enhance your efficiency and effectiveness by earning
a master’s degree in computer science. In order to become a manager or IT
director, you may need to get an MBA degree.

39.   What is the salary of SAP ABAP Developer?


SAP ABAP developers are usually paid well, that too in some of the reputed
organisations their payscale is really in the higher range. As per the data from
Ambitionbox, SAP ABAP developer salary in India for a fresher candidate ranges
between ₹2.5 Lakhs to ₹10.8 Lakhs with an average annual salary of ₹4.7 Lakhs.

40.   What are the skills required for SAP ABAP?


The below mentioned are the skills an SAP ABAP developer should have to work
effectively in his role:
Robust command over SAP SD
Knowledge of SAP systems like FICO and HR
Analytical & Problem-solving skills
Communication & Interpersonal skills
Leadership & Teamwork
Research skills.

Page 35 © Copyright by Interviewbit


Links to More Interview
Questions

C Interview Questions Php Interview Questions C Sharp Interview Questions

Web Api Interview Hibernate Interview Node Js Interview Questions


Questions Questions

Cpp Interview Questions Oops Interview Questions Devops Interview Questions

Machine Learning Interview Docker Interview Questions Mysql Interview Questions


Questions

Css Interview Questions Laravel Interview Questions Asp Net Interview Questions

Django Interview Questions Dot Net Interview Questions Kubernetes Interview


Questions

Operating System Interview React Native Interview Aws Interview Questions


Questions Questions

Git Interview Questions Java 8 Interview Questions Mongodb Interview


Questions

Dbms Interview Questions Spring Boot Interview Power Bi Interview Questions


Questions

Pl Sql Interview Questions Tableau Interview Linux Interview Questions


Questions

Ansible Interview Questions Java Interview Questions Jenkins Interview Questions

Page 36 © Copyright by Interviewbit

You might also like