SAP ABAP

  Home  Systems, Applications, and Products (SAP)  SAP ABAP


“SAP ABAP Interview Questions and Answers will guide you that ABAP is a very high level programming language created by the German software company SAP. It is currently positioned, alongside the more recently introduced Java, so learn more about the SAP ABAP with the help of this SAP ABAP Interview Questions with Answers guide”



161 SAP ABAP Questions And Answers

1⟩ What is an ABAP instance?

When you call a function module, an instance of its function group plus its data, is loaded into the memory area of the internal session. An ABAP program can load several instances by calling function modules from different function groups.

 163 views

3⟩ What is Function group? Difference between function group and function module?

Function Groups act as containers for Function Modules that logically belong together.

Function Groups

1) These cannot be defined in a Function Module.

2) It cannot be called.

3) They are containers for Function Module.

Function Modules

1) These must be defined in a Function Group.

2) It can be called from any program.

3) They are not containers for Function Group.

 155 views

4⟩ What Function does data dictionary perform?

Central information repository for application and system data. The ABAP Dictionary contains data definitions (metadata) that allow you to describe all of the data structures in the system (like tables, views, and data types) in one place. This eliminates redundancy.

 138 views

5⟩ Difference between domain and data element? What are aggregate object?

Domain - Specifies the technical attributes of a data element - its data type, length, possible values, and appearance on the screen. Each data element has an underlying domain. A single domain can be the basis for several data elements. Domains are objects in the ABAP Dictionary.

Data Element - Describes the business function of a table field. Its technical attributes are based on a domain, and its business function is described by its field labels and documentation.

Aggregate Object – Views, Match Code and Lock objects are called aggregate objects because they are formed from several related table.

 171 views

6⟩ What is view? Different types of view. Explain?

View - A view is a virtual table containing fields from one or more tables. A virtual table that does not contain any data, but instead provides an application-oriented view of one or more ABAP Dictionary tables.

Different Types of View:

1) Maintenance

2) Database – It is on more than two tables.

3) Projection – It is only on one table.

4) Help

 165 views

7⟩ What is SAP R/3?

SAP R/3 refers to Systems Application and Product for data processing Real-time having a 3 tier architecture i.e. Presentation layer, Application layer and Database layer.

 169 views

8⟩ Can you print decimals in type N? What is difference between float and packed data type?

No, we cannot print decimals in type N because decimal places are not permitted with N

data type.

Float Data Type: It cannot be declared in Parameters.

Packed Number: It can be declared in Parameters. For e.g.

PARAMETERS : A(4) TYPE P DECIMALS 2,

B(4) TYPE P DECIMALS 2.

DATA : C(4) TYPE P DECIMALS 2.

C = A + B.

WRITE : / ‘THE SUM IS’ , C.

 178 views

9⟩ What is step-loop? Explain all the steps?

A step loop is a repeated series of field-blocks in a screen. Each block can contain one or more fields, and can extend over more than one line on the screen.

Step loops as structures in a screen do not have individual names. The screen can contain more than one step-loop, but if so, you must program the LOOP...ENDLOOPs in the flow logic accordingly. The ordering of the LOOP...ENDLOOPs must exactly parallel the order of the step loops in the screen. The ordering tells the system which loop processing to apply to which loop. Step loops in a screen are ordered primarily by screen row, and secondarily by screen column.

Transaction TZ61 (development class SDWA) implements a step loop version of the table you saw in transaction TZ60.

Static and Dynamic Step Loops

Step loops fall into two classes: static and dynamic. Static step loops have a fixed size that cannot be changed at runtime. Dynamic step loops are variable in size. If the user re-sizes the window, the system automatically increases or decreases the number of step loop blocks displayed. In any given screen, you can define any number of static step loops, but only a single dynamic one.

You specify the class for a step loop in the Screen Painter. Each loop in a screen has the attributes Looptype (fixed=static, variable=dynamic) and Loopcount. If a loop is fixed, the Loopcount tells the number of loop-blocks displayed for the loop. This number can never change.

Programming with static and dynamic step loops is essentially the same. You can use both the LOOP and LOOP AT statements for both types.

Looping in a Step Loop

When you use LOOP AT <internal-table> with a step loop, the system automatically displays the step loop with vertical scroll bars. The scroll bars, and the updated (scrolled) table display, are managed by the system.

Use the following additional parameters if desired:

* FROM <line1> and TO <line2>

* CURSOR <scroll-var>

 174 views

11⟩ What is sequence of event triggered in report?

There are 6 events in report:

1) Initialization

2) At Selection-Screen

3) Start-of-Selection

4) Get

5) Get Late

6) End-of-Selection

7) Top-of-Page

8) End-of-Page

9) At Line Selection

10) At User Command

11) At PF (nn)

 154 views

14⟩ What are the system fields? Explain?

The ABAP system fields are active in all ABAP programs. They are filled by the runtime environment, and you can query their values in a program to find out particular states of the system. Although they are variables, you should not assign your own values to them, since this may overwrite information that is important for the normal running of the program. However, there are some isolated cases in which you may need to overwrite a system variable. For example, by assigning a new value to the field SY-LSIND, you can control navigation within details lists.

 155 views

16⟩ Difference between SY-TABIX and SY-INDEX? Where it is used? Can you check SY-SUBRC after perform?

SY-TABIX - Current line of an internal table. SY-TABIX is set by the statements below, but only for index tables. The field is either not set or is set to 0 for hashed tables.

* APPEND sets SY-TABIX to the index of the last line of the table, that is, it contains the overall number of entries in the table.

* COLLECT sets SY-TABIX to the index of the existing or inserted line in the table. If the table has the type HASHED TABLE, SY-TABIX is set to 0.

* LOOP AT sets SY-TABIX to the index of the current line at the beginning of each loop lass. At the end of the loop, SY-TABIX is reset to the value that it had before entering the loop. It is set to 0 if the table has the type HASHED TABLE.

* READ TABLE sets SY-TABIX to the index of the table line read. If you use a binary search, and the system does not find a line, SY-TABIX contains the total number of lines, or one more than the total number of lines. SY-INDEX is undefined if a linear search fails to return an entry.

* SEARCH <itab> FOR sets SY-TABIX to the index of the table line in which the search string is found.

SY_INDEX - In a DO or WHILE loop, SY-INDEX contains the number of loop passes including the current pass.

 188 views

17⟩ Explain What is a Logical Database?

Logical Databases are special ABAP programs that retrieve data and make it available to application programs.

Use of LDB – is used to read data from database tables by linking them to executable ABAP programs

 181 views

18⟩ Explain What are the events used for Logical Database?

Two Events –

1) GET - This is the most important event for executable programs that use a logical database. It occurs when the logical database has read a line from the node <table> and made it available to the program in the work area declared using the statement NODES table Tag. The depth to which the logical database is read is determined by the GET statements

2) PUT - The PUT statement directs the program flow according to the structure of the logical database.

 149 views

19⟩ What is the difference between Get and Get Late?

GET - After the logical database has read an entry from the node table Tag.

GET LATE - After all of the nodes of the logical database have been processed that are below <table> in the database hierarchy.

 147 views