SAP ABAP Interview Questions & Answers

       SAP ABAP Interview Questions

 

 

Explain SAP ABAP 3-tier architecture?

Answer

The Presentation layer consists of any input device that can be used to control the SAP system. This could be a web browser, a mobile device and so on. All the central processing takes place in the 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?

Answer

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

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

Answer

The 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?

Answer

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

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

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

Answer

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

Why do we use TYPES statement in ABAP programming?

Answer

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?

Answer

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 cancelled 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?

Answer

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

What is a lock mechanism? How do w create lock objects in ABAP?

Answer

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 the ABAP program?

Answer

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?

Answer

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?

Answer

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 difference between a template and a table?

Answer

You can define a table as dynamic and template are static.

What are the data classes in ABAP?

Answer

Below data classes exist 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 the R/3 system needs for itself.

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

Answer

  • BDC_OPEN_GROUP
  • BDC_INSERT
  • BDC_CLOSE_GROUP

 

What is the use of ABAP data dictionary?

Answer

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?

Answer

OOABAP involves object-oriented 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 use f different editors in ABAP?

Answer

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.

 

What is a pretty printer?

Answer

It is used to format the ABAP code.

Explain the difference between clusters tables and Pool table?

Answer

The data of several cluster tables are 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.

 

What are smart forms in SAP?

Answer

SAP Smart Forms tool can be used to print and send documents. This tool is useful in developing forms, PDF files, e-mails and documents for the Internet. The tool provides an interface to build and maintain the layout and logic of a form. SAP also delivers a selection of forms for business processes such as those used in Customer Relationship Management (CRM), Sales and Distribution (SD), Financial Accounting (FI) and Human Resources (HR).

The tool allows you to modify forms by using simple graphical tools instead of using any programming tool. It means that a user with no programming knowledge can configure these forms with data for a business process effortlessly.

 

What is the match code? How it is different from the database index?

Answer

Match code objects can be built on cluster tables, transparent tables and pooled tables however a Database Index contains fields only from one table.

What is Change and Transport management system in SAP?

Answer

The Change and Transport System (CTS) is a tool that helps you to organize development projects in ABAP Workbench and in Customizing, and then transport the changes between SAP Systems and clients in your system landscape.

What is SAP memory and ABAP memory?

Answer

SAP memory is a global memory whereas ABAP memory is local memory.

What is Web Dynpro and why it is used?

Answer

Web Dynpro (WD) for ABAP is the SAP standard user interface technology developed by SAP AG. It can be used in the development of web-based applications in the SAP ABAP environment that utilizes SAP development tools and concepts. It provides a front-end web user interface to connect directly to backend SAP R/3 systems to access data and functions for reporting.

Web Dynpro for ABAP consists of a run-time environment and a graphical development environment with specific development tools that are integrated with the ABAP Workbench (transaction: SE80).

What are the benefits of using Web Dynpro?

Answer

The use of graphical tools significantly reduces the implementation effort.

Reuse and better maintainability by using components.

The layout and navigation are easily changed using the Web Dynpro tools.

User interface accessibility is supported.

Full integration in the ABAP development environment.

In an ABAP program to leave a program that you call?

Answer

LEAVE PROGRAM

What are the different dictionary objects?

Answer

  • TABLES
  • VIEWS
  • DATA
  • TYPES of DOMAINS
  • TYPE GROUPS
  • SEARCH HELPS
  • LOCK OBJECTS

Where do you find a dictionary in the SAP menu tree?

Answer

With the SAP GUI open, you will be able to find the Data Dictionary in the SAP menu tree. This is done via the Tools menu. Open the ABAP Workbench and click the ‘Development’ folder, where the ABAP Dictionary can be found and double-clicked. Alternatively, use the transaction code SE11.

To create a transparent table, which data dictionary object is selected?

Answer

You can use the concept of chaining statements

When you declare a variable in an ABAP program, what are the key points you should consider?

Answer

They must begin with a letter.

Can be a maximum size of 30 characters.

Cannot include + , : or ( ) in the name.

Cannot use a reserved word.

 

You want to insert an integer field containing value 1 to a character field, how this can be done?

Answer

Conversion rules are predefined logic that determines how the contents of the source field can be entered into a target field. If one attempts to insert an integer field containing the value of 1 to a character string. The built-in conversion rules will determine exactly how this should be done without any syntax or runtime errors.

What is the use of data type C?

Answer

Data type C variables are used for holding alphanumeric characters, with a minimum of 1 character and a maximum of 65,535 characters. By default, these are aligned to the left.

What is the use of CONDENSE statement in ABAP programming?

Answer

CONDENSE statement is used to remove blank characters.

What is the use of breakpoints table in ABAP programming?

Answer

This breakpoint table can be very useful when one is in a large program with many breakpoints set. It allows one to review the breakpoint and allows for the removal of breakpoints which are no longer desired.

What is ABAP Web Dynpro? What it is used?

Answer

Web Dynpro is standard SAP UI technology that allows you to develop web applications using graphical tools and development environment integrated with ABAP workbench. Using graphical tools reduce the implementation effort and you can better reuse and maintain components in ABAP workbench.

How do you access ABAP Web Dynpro workbench? What are the object and its component?

Answer

To access Web Dynpro runtime environment and graphical tools in ABAP workbench, you can use Transaction code: SE80

Object list contains −

  • Dynpro Component
  • Controller
  • Interface
  • View
  • Web Dynpro application

 

What are the benefits of using Web Dynpro?

Answer

You can easily maintain and reuse components for development.

Less implementation time as the use of graphical tools.

You can easily change layout and navigation using graphical tools.

Easy structure changes.

With the use of data binding, you can use automatic data transport.

Ease of integration in ABAP environment.

 

What is MVC programming model in Web Dynpro?

Answer

Web Dynpro applications are based on the MVC model, whereas −

Model

This allows access to back end data in a Web Dynpro application.

View

This is used to ensure the representation of data in a web browser.

Controller

This is used to control communication between Model and view where it takes input from users and get the processes data from the model and displays the data in the browser.

 

What is a view in Web Dynpro component?

Answer

Each Web Dynpro application contains at least one view and it is used to define the layout of a user interface. Each view consists of multiple user element and a controller and context.

The controller is used to process user request and processing of data and context contains data to which elements of view are bound.

What is the use of inbound and outbound plugin Dynpro component?

Answer

The inbound and outbound plugs are part of the view controller and inbound plug defines the starting point of view and outbound plug tells the subsequent view to be called.

Why do we use a window in Web Dynpro application development?

Answer

In Web Dynpro, a window is used to use multiple views or view sets. A view can only be displayed when it is embedded in a view and a window always contain one or more views which are connected by navigation links.

Why do we use events and actions in Web Dynpro?

Answer

You can create events to enable communication between controllers. You can allow one controller to trigger events in a different controller. All events that you create in component controller they are available in component.

What is the URL of Web Dynpro application? How it is generated?

Answer

In a Web Dynpro application, url is automatically generate. You can find the URL of application in Properties tab. URL structure can be of two types −

SAP namespace

<schema>://<host>.<domain>.<extension>:<port>/sap/bc/webdynpro/<namespace>/<application name>

Custom namespace

<schema>://<host>.<domain>.<extension>:<port>/abc/klm/xyz/<namespace>/webdynpro/<application name>

 

How do you manage different object version in a Web Dynpro application?

Answer

You can use version management to manage older version of an object, compare versions or you can also reset them. In version management, you can store different versions of ABAP development objects.

In an ABAP workbench, you can compare different versions of −

  • Views
  • Windows
  • Controllers

 

Can we store a version of abject without releasing it?

Answer

Yes

What is the use of messages in Web Dynpro?

Answer

In ABAP Workbench, you can also create and show messages that contain information for end-users of Dynpro application. These messages are displayed on the screen. These are user interactive messages that display important information about Web Dynpro application.

What are the different scenarios that can be used to create interactive forms in Web Dynpro?

Answer

  • Interactive Scenario
  • Print Scenario
  • Offline Scenario
  • Using digital signature

 

What is SAP list viewer in Web Dynpro applications development?

Answer

SAP List viewer is used to add ALV component and provides a flexible environment to display lists and tabular structure. A standard output consists of a header, toolbar and an output table and user can make the settings to add column display, aggregations, sorting options using additional dialog boxes.