ABAP Interview Questions and Answers
ABAP Interview Questions and Answers
What is an ABAP data dictionary?- ABAP 4 data dictionary describes the logical structures of the objects used in
application development and shows how they are mapped to the underlying relational database in tables/views.
2.
What are domains and data element?- Domains:Domain is the central object for describing the technical
characteristics of an attribute of an business objects. It describes the value range of the field. Data Element: It is used
to describe the semantic definition of the table fields like description the field. Data element describes how a field can
be displayed to end-user.
3.
What is foreign key relationship?- A relationship which can be defined between tables and must be explicitly
defined at field level. Foreign keys are used to ensure the consistency of data. Data entered should be checked against
existing data to ensure that there are now contradiction. While defining foreign key relationship cardinality has to be
specified. Cardinality mentions how many dependent records or how referenced records are possible.
4.
Describe data classes.- Master data: It is the data which is seldomly 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 R/3 system needs for itself.
5.
What are indexes?- Indexes are described as a copy of a database table reduced to specific fields. This data exists
in sorted form. This sorting form ease fast access to the field of the tables. In order that other fields are also read, a
pointer to the associated record of the actual table are included in the index. Yhe indexes are activated along with the
table and are created automatically with it in the database.
6.
Difference between transparent tables and pooled tables.- Transparent tables: Transparent tables in the
dictionary has a one-to-one relation with the table in database. Its structure corresponds to single database field.
Table in the database has the same name as in the dictionary. Transparent table holds application data. Pooled tables.
Pooled tables in the dictionary has a many-to-one relation with the table in database. Table in the database has the
different name as in the dictionary. Pooled table are stored in table pool at the database level.
7.
What is an ABAP/4 Query?- ABAP/4 Query is a powerful tool to generate simple reports without any coding.
ABAP/4 Query can generate the following 3 simple reports: Basic List: It is the simple reports. Statistics: Reports
with statistical functions like Average, Percentages. Ranked Lists: For analytical reports. - For creating a ABAP/4
Query, programmer has to create user group and a functional group. Functional group can be created using with or
without logical database table. Finally, assign user group to functional group. Finally, create a query on the functional
group generated.
8.
What is BDC programming?- Transferring of large/external/legacy data into SAP system using Batch Input
programming. Batch input is a automatic procedure referred to as BDC(Batch Data Communications).The central
component of the transfer is a queue file which receives the data vie a batch input programs and groups associated
data into sessions.
9.
What are the functional modules used in sequence in BDC?- These are the 3 functional modules which are
used in a sequence to perform a data transfer successfully using BDC programming: BDC_OPEN_GROUP Parameters like Name of the client, sessions and user name are specified in this functional modules. BDC_INSERT It is used to insert the data for one transaction into a session. BDC_CLOSE_GROUP - This is used to close the batch
input session.
10. What are internal tables?- Internal tables are a standard data type object which exists only during the runtime of
the program. They are used to perform table calculations on subsets of database tables and for re-organising the
contents of database tables according to users need.
11.
What is ITS? What are the merits of ITS?- ITS is a Internet Transaction Server. ITS forms an interface between
HTTP server and R/3 system, which converts screen provided data by the R/3 system into HTML documents and
vice-versa. Merits of ITS: A complete web transaction can be developed and tested in R/3 system. All transaction
components, including those used by the ITS outside the R/3 system at runtime, can be stored in the R/3 system. The
advantage of automatic language processing in the R/3 system can be utilized to language-dependent HTML
documents at runtime.
12. What is DynPro?- DynPro is a Dynamic Programming which is a combination of screen and the associated flow
logic Screen is also called as DynPro.
13.
What are screen painter and menu painter?- Screen painter: Screen painter is a tool to design and maintain
screen and its elements. It allows user to create GUI screens for the transactions. Attributes, layout, filed attributes
and flow logic are the elements of Screen painter. Menu painter: Menu painter is a tool to design the interface
components. Status, menu bars, menu lists, F-key settings, functions and titles are the components of Menu painters.
Screen painter and menu painter both are the graphical interface of an ABAP/4 applications.
14. What are the components of SAP scripts?- SAP scripts is a word processing tool of SAP which has the following
components: Standard text. It is like a standard normal documents. Layout sets. - Layout set consists of the following
components: Windows and pages, Paragraph formats, Character formats. Creating forms in the R/3 system. Every
layout set consists of Header, paragraph, and character string. ABAP/4 program.
15.
What is ALV programming in ABAP? When is this grid used in ABAP?- ALV is Application List viewer. Sap
provides a set of ALV (ABAP LIST VIEWER) function modules which can be put into use to embellish the output of a
report. This set of ALV functions is used to enhance the readability and functionality of any report output. Cases arise
in sap when the output of a report contains columns extending more than 255 characters in length. In such cases, this
set of ALV functions can help choose selected columns and arrange the different columns from a report output and
also save different variants for report display. This is a very efficient tool for dynamically sorting and arranging the
columns from a report output. The report output can contain up to 90 columns in the display with the wide array of
display options.
16. What are the events in ABAP/4 language?- Initialization, At selection-screen, Start-of-selection, end-ofselection, top-of-page, end-of-page, At line-selection, At user-command, At PF, Get, At New, At LAST, AT END, AT
FIRST.
17.
What is CTS and what do you know about it?- The Change and Transport System (CTS) is a tool that helps you
to organize development projects in the ABAP Workbench and in Customizing, and then transport the changes
between the SAP Systems and clients in your system landscape. This documentation provides you with an overview of
how to manage changes with the CTS and essential information on setting up your system and client landscape and
deciding on a transport strategy. Read and follow this documentation when planning your development project.
18. What are logical databases? What are the advantages/ dis-advantages of logical databases?- To read
data from a database tables we use logical database. A logical database provides read-only access to a group of related
tables to an ABAP/4 program. Advantages: i)check functions which check that user input is complete, correct,and
plausible. ii)Meaningful data selection. iii)central authorization checks for database accesses. iv)good read access
performance while retaining the hierarchical data view determined by the application logic. dis advantages: i)If you
donot specify a logical database in the program attributes,the GET events never occur. ii)There is no ENDGET
command,so the code block associated with an event ends with the next event statement (such as another GET or an
END-OF-SELECTION).
19. What is a batch input session?- BATCH INPUT SESSION is an intermediate step between internal table and
database table. Data along with the action is stored in session ie data for screen fields, to which screen it is passed,
program name behind it, and how next screen is processed.
20. How to upload data using CATT ?- These are the steps to be followed to Upload data through CATT: Creation of
the CATT test case & recording the sample data input. Download of the source file template. Modification of the
source file. Upload of the data from the source file.
21. What is Smart Forms?- Smart Forms allows you to create forms using a graphical design tool with robust
functionality, color, and more. Additionally, all new forms developed at SAP will be created with the new Smart Form
solution.
22. How can I make a differentiation between dependent and independent data?- Client dependent or
independent transfer requirements include client specific or cross client objects in the change requests. Workbench
objects like SAPscripts are client specific, some entries in customizing are client independent. If you display the object
list for one change request, and then for each object the object attributes, you will find the flag client specific. If one
object in the task list has this flag on, then that transport will be client dependent.
23. What is the difference between macro and subroutine?- Macros can only be used in the program the are
defined in and only after the definition are expanded at compilation / generation. Subroutines (FORM) can be called
from both the program the are defined in and other programs . A MACRO is more or less an abbreviation for some
lines of code that are used more than once or twice. A FORM is a local subroutine (which can be called external). A
FUNCTION is (more or less) a subroutine that is called external. Since debugging a MACRO is not really possible,
prevent the use of them (Ive never used them, but seen them in action). If the subroutine is used only local (called
internal) use a FORM. If the subroutine is called external (used by more than one program) use a FUNCTION.
24. About Infotype 0302
The Situation: SAP do not allow storing two infotypes of Time Constraint 1 with the same subtype on the same day,
because it would be mean the delimitation date for both will be the same, in which case first Infotype would be
overwritten by the latter one.
Under What circumsatances: Why would one want to Run Two Action on SAME DAY?
Many occasions when an employee may experience multiple personnel actions on the same day.
EX.1: There are occasions where a person could be ending maternity leave and starting a career break on the same
day
EX 2: You hired an employee on a certain day and then for some reason you need to perform, Transfer Action to other
location or Country Reassignment etc
So can We do it?: The answer is YES, you can!
To handle similar situations SAP created Additional Actions (Infotype 0302) to capture these additional/multiple
actions on same day.
Tell me more about this Infotype 0302: This infotype cannot be maintained directly, but it is located for viewing at
the bottom of the Actions infotype (0000).
To make use of this functionality, you need to set it up using the following IMG path:Personnel Management ->
Personnel Administration -> Customizing Procedures -> Actions ->Set up personnel actions
To activate Additional actions, run report RPUEVSUP.
This sets the the value of the semantic code EVSUP to 1 for the group ADMIN in table T77S0
In table T529A, it sets the indicator U0302 for all personnel action types.
Additional Actions should be activated for all personnel number ranges.
If we do the same action again (i.e. we hire the same employee twice), the actions infotype (IT000) stores the latest of
the two actions. When we activate additional actions, we can do 2 different actions on the same day.
Features of Infotype 0302 Addiitonal Actions:Infotype 0302 Additional Actions allows you to automatically log all of
the personnel action types that are performed for an employee on a specific date. It allows you to perform and
document several personnel action types for an employee in the R/3 System on the same day.
You can display and edit the data records logged in the infotype Additional Actions (0302) on the list screen of the
infotype Actions (0000),whether you want to use the automatic logging of personnel action types in the infotype
Additional Actions (0302)which personnel action type should be saved, that is preserved, in the infotype Actions
(0000) if you perform another personnel action type for the employee on the same day
The system then logs all personnel action types that are executed for an employee and their related reasons in the
Additional Actions infotype (0302). - It creates an Additional Actions record (0302) on the specified key date for each
record in the Actions infotype (0000).
Check the STAT2 field entries youhave in Table T529A. This is how SAP determines if an action is a statuschanging
one and only allows one of these each day. IF field STAT2 isblank, not a status change. Otherwise, a change. If a
second statuschanging action is done, it will replace the first. Also, if actioncode/reason code combination is already
there, it will overwrite.