SAP ABAP Interview Questions & Answers

SAP is a type of software known as ERP (Enterprise Resource Planning) that large company use to manage their day to day affairs. ABAP (Advanced Business Application Programming) is the coding language for SAP to develop RICEFW objects. (Reports, Interfaces, Extensions, Forms and Workflows).

To describe the logical structures of the objects that are used in application development ABAP 4 data dictionary is used. It is also used to show the underlying relational database in tables.

Transparent tables: It has one to one relation with the table in the database. Its structure corresponds to single database field.

Pooled tables: It has many to one relation with the table in the database. Pooled tables are stored at the database level.

a) Basic List: For simple reports

b) Statistics: For Percentage, Average etc.

c) Ranked List : For analytical reports

It is an automatic procedure to transfer large or external data into SAP system. ‘Queue file’ is the central component of the transfer, which receives the data through batch input programs and groups that are associated into ‘sessions’.

The data classes are classified into following classes

Master Data: The data in this class seldom change

Transaction Data: The data can be changed often in this class

Organization Data: This data is a customized data and is entered in the system when the system is configured. It is rarely changed.

System Data: This data is used by R/3 system itself

Internal table exists only when the program is run. It is used for performing table calculations on subset of database tables and also for re-organizing the content of database tables as per the users need.

There are 3 functional modules which are used in sequence to perform data transfer successfully using BDC programming. They are

a) BDC_OPEN_GROUP

b) BDC_INSERT

c) BDC_CLOSE_GROUP

To ensure the consistency of data, foreign keys are used. The relationship established between the tables and must be explicitly defined at field level. Data entered should be checked against the existing data to ensure that there is no contradiction. Cardinality has to be specified while defining foreign key relationship.

The difference between structure and table is

a) Data can be stored physically in Table, but a structure cannot

b) Structure does not have primary key but table can have

c) Table can have the technical attribute but the structure does not have

Smart forms allow you to create forms using a graphical design tool.

For SAP, SAP scripts are a word processing tool. It has a function like standard text and layout sets. Its layout set consists of: Windows and pages, Character formats, Paragraph formats etc.

a) In ABAP dictionary, select object type Table, enter a table name and choose create

b) A field maintenance screen for the table is displayed. Table type Transparent table, set it as a default

c) Make the necessary entries in the short description and delivery classified on the Attributes page. Then define the fields of the table.

d) Proceed as when creating a transparent table. Now save your entries

e) Now choose EXTRASàChange table category

f) When a dialogue box appears you have to select the table type ‘Pooled table’ or ‘Cluster table’

g) After selecting the table, return to the field maintenance screen for the table. Field pool or cluster name is displayed on the Attributes tab page in addition to the standard fields.

h) Now enter the name of the table cluster or table pool to which you want to assign the cluster table.

By using the loop event the reports output can be formatted

a) .at first

b) .at new

c) .at last

The difference between the table and template is that, table is a dynamic and template is a static.

ALV stands for Application List Viewer. To enhance the output of the report, SAP provides a set of ALV function modules which can be used, and it also improves the functionality and readability of any report output. It is an efficient tool used for arranging the columns in a report output.

End of the selection event is mostly used when we are writing HR-ABAP code. In the HR-ABAP code, data is retrieved in the start of selection event and printing on the list and all will be done at the end of the selection event.

a) Semantic Integrity

b) Relational Integrity

c) Primary Key Integrity

d) Value Set Integrity

e) Foreign Key Integrity

f) Operational Integrity

ABAP is used to develop traditional programs in R/3, while OOABAP is used to develop BSP/ PCUI applications and also anything that an involved object oriented like BADI’s and SmartForms etc.

Over here, buffer means memory area, table buffer means the table information is available on the application server. When you call data from database table, it will come from application server. Transparent tables and pool tables are buffered, while cluster table cannot be buffered.

To format the ABAP code ‘pretty printer’ is used.

‘Type’: You assign data type directly to the data object while declaring.

‘Like’: You assign the data type of another object to the declaring data object.

‘Type’ refers the existing data type while ‘Like’ refers to the existing data object.

The 2 editors are SE38 and SE80 and both have the ABAP editor in place. In SE38 , you can create programs and view online reports and basically do all the development of objects in this editor. In SE80, there are additional features such as creating packages, function group, module pool, classes, programs and BSP applications.

A report is an executable program; dialog is a module pool program. It has to be executed via a transaction only. Dialog programming is used for customizations of screens.

To synchronize access of several users using same data Lock objects are used.

A cluster table contains data from multiple DDIC tables. It stores data as name value pair.

To debug a script form, you have to follow

SE71–>give the form name->utilities->activate debugger

The different types of data dictionary objects are:

a) Tables

b) Views

c) Domain

d) Data Element

e) Type Groups

f) Search Helps/Matchcode Objects

g) Lock Objects

h) Structures

i) Table Types

Tunning can be done in three ways disk i/o, SQL tunning and memory tunning. Before tunning, you have to get the status of your database using oracle utility called statpack and tkprof .

To fetch the data from the table by the specified field Group by Clause is used.

A control agent referred as SAP dispatcher, manages resources for the R/3 applications.

There are two methods for modifying SAP standard tables

a) Append structures

b) Customizing includes

‘Database Index’ contains fields from one table while ‘Match Code’ contain fields from several tables. Match code objects can be built on cluster tables, transparent tables and pooled tables.

By using modularization techniques, you can avoid redundancy if the program contains the same or similar blocks of statements or it is required to process the same function several times. By modularizing the ABAP/4 programs, we make them easy to read and improve their structure. Modularized programs are also easier to maintain and update.

a) By defining Macros

b) By creating include programs in the library.

The different types of parameters are

a) Formal Parameters: It is defined during the definition of subroutine with the ‘FORM’ statement

b) Actual Parameters: It is specified during the call of a subroutine with the ‘PERFORM’ statement

You can distinguish different kind of parameters by their functionality. Input parameters are used to pass data to subroutines, while output parameters are used to pass data from subroutines.