SAP ABAP Interview Questions Top 50
SAP ABAP Interview Questions Top 50
These are very very top sap abap interview questions for interviwers..
Q1: What is the way to combine SAP and CAD?
A1: SAP interfaces are given by third party tools like those from Eigner or Fastlook Plus (from Kamel Software) which
can allow us to display every format from Autocad.
Q2:Is it possible to have a standard SAP report that will count how many times a program is running?
A2: There is one report like that, transaction STAT.
Q3: We use ‘SAPSCRIPT-FORMATPAGES’ for receiving the total page count that we expect, since our duplex
case is every time ‘Terms and Conditions’, what should we do if we don’t need the same page count like in
duplex printing?
A3: We have make modifications on the Page counter mode, putting it to ‘HOLD’ to avoid the incrementation when
printing the Terms and Conditions.
Q4: At client creation the details get updated in the RF02d structure and also KNA1 tables get updated (some of
them), where are the master data transaction tables to be found?
A4: We have to hit Overview from the ABAP Workbench then application hierarchy then SAP and see the customizing
tree of our program; we must choose the lowest hierarchy level in order to receive the right development class marking.
Every table is found here, every view and every logical database of a system operation.
Q5: How do we get an RFC to perform these transaction: MB1A, MB1C, >MB01?
A5: We will need to invoke RFC INBOUND_IDOC_PROCESS using IDOC_CONTROL and IDOC_DATA. The
IDOC_DATA structure fields are e1mbxyi e1mbxyh.
Q6: When we state the logical database and we require a field that will not be found in the normal tables of the
logical database , how do we do this, how do we add a field that is from a separate table?
A6: Let’s think that we poses this logical database:
Table 1
Table 2
Table 3
We then will define fld as the supplementary field (initially it is the required field) of tables 1, 2 and 3, then: Perform
get_fld(zxxxxxxx) with fld where form zxxxxxxx can be Form get_fld with f=table4-fld.
Q7: We see that the ABAP program is running well in background, is it possible to schedule it to run this
weekend in background?
A7: We can do this, it is possible with the aid of RSBDCSUB, a normal SAP program but we have to make a version
of RSBDCSUB using the name of the BDC session.
Q8: How do we transport a change to a layout set in a Dev instance between two clients in a better way?
A8: This can be done using transaction SE 71 from Utilities then Copy from Client and the transport will be made from
client to client through the DEVKxxxxxx requests.
Q11: Why can’t we make stock order transports , even if we can make transports for delivery due list by
invoking transaction VL01 in batch input?
A11: Filling delivery due list can’t be made as is not a dynpro, but a normal SAP report, which can be invoked with the
use of the corresponding options, it is better to invoke a report instead of making a batch-input program.
Q13: What is the way for locking user defined transactions temporarily so that nobody has access to the same?
A13: They way is by using the SM01 transaction. We have to look for transaction and make sure it is locked by
checking, then when the maintenance is done we can uncheck SM01 for unlocking.
Q14: What is the way to see which transactions were running for specific time for a specific user?
A14: For this the way is using STAT.
Q15: How can we announce a user for the completion in background of a BDC or report?
A15: We can do this by using FUNCTIONS RS_SEND_MAILFOR_SPOOLLIST. In Unix a report has to be sent to
the e-mail with this:
REPORT ZSNDMAIL.
DATA:COMND(299) type c.
DATA:RESULT(200) type c occurs 100 with header line.
PARAMETERS: FILE(60) type c lower case default '/sapdata/sd_outbound/testmail.dat'.
PARAMETERS: SUBJECT(60) type c lower case.
PARAMETERS: EMAIL(60) type c lower case.
INITIALIZATION.
TRANSLATE EMAIL TO LOWER CASE.
START-OF-SELECTION.
TRANSLATE EMAIL TO LOWER CASE.
CONCATENATE 'cat' FILE '| elm -s "' subject '"' email into comnd seperated by space.
CALL 'SYSTEM' ID 'COMMAND' FIELD comnd 'TAB' FIELD UNIX_RESULTS-*SYS*.
Loop at Results.
write: /1 results.
endloop
end-of-selection.
Q17: Can we monitor the transports which will go in other systems like DEV, TST, PRD or TRN?
A17: For the management of the DEV and CTS systems we have SAPCRAFT, it monitors every transport at every
level and we can allocate the import, authorization and export functions to a particular user.
Q18: In what place can we deposit the last file number in the case when we have to download internal tables on
the local workstation or Presentation Server, as we have to save each file in order like 0001.txt, 0002.text,
0003.text and so on?
A18: For depositing these files in SAP we have the TVARV table in which we can make records for each program that
needs this type of records. Example: we have this record 100Zmm10001 MM, the first part of the record is the code of
the client and the current working record, the second part describes the role that the record will have, the whole string
can be put in the Name field. We can have Parameter and Selection in the Type field (P and S) and we can have ‘0001’
on first run in the Low field.
Q21: Which are the main standard programs that everyone who uses ABAP have to use and learn?
A21: RSAVGL00 the configuration of tables between clients, RSBDCSUB makes the release of batch-input sessions
automated, RSCLTCOP is copying tables between clients, RSINCL00 ExtendedProgramlist ,
RSORARELGettheOracleRelease, RSPARAM Displayallinstanceparameters ,RSTXSCRP
TransportSAPscriptfilesacrosssystems,
RGUGBR00 Substitution/Validationutility, RSUSR003
CheckthepasswordsofusersSAP*andDDICinallclients, RSUSR006 makes a list of last logins and RSTXLDMC is
loading LOGO’s on the application server.
Q22: What is the way for using a grid list?
A22: For using grid lists we will use Function Module Display_*LIST.We will put all the required data for output in
the last format and then transport the internal table on the function module. There are 2 types of grid lists:
a)in version 4.0b we have DISPLAY_GRID_LIST
b)in version 4.6b we have DISPLAY_BASIC _LIST.
Q23: What database integrities do we know?
A23: The database integrities are classified like this: relational, foreign key, semantic, primary key, value set and
operational.
Q25: When do we have to use GPA an SPA and what is their meaning?
A25: To insert report data in the fields of the invoked transaction we have to use the SPA/GPA technique. SPA and
GPA are parameters or values that are deposited in the global memory by the system. The memory of SAP is actually
good for moving the values from a program to another. The values that are deposited can be accessed by the user in the
SAP memory in the time of a single terminal session for every mode together in the same time.
Q26: What message types exist and what is the way of displaying them?
A26: The system is announced about errors that appear by the ABAP/4 module in the form of information, messages
of warning or error, it can also issue messages of success when some action that have been made is a success. By
pressing the ENTER key the process currently running will be terminated. The SAP main menu can be reached with the
aid of the Abend message.
Q27: Where is the Message class generated and how is this made?
A27: 2 locations in the system can generate a Message class:
a) The Object Broweser, where we will have an object list- Object class.
b) The ABAP/4 Editor, where there is the ABAP/4 module.
Q28: What is the meaning of interactive reports and what separates them from HTML reports?
A28: With interactive reporting users can be have an interactive participation at data presentations and recovery in the
time of a session, interactive reporting is not making a very detailed list but a concentrated and simple list from where
we can invoke more information and details by moving the cursor over it and inserting commands. It also lowers the
recovery of information of the needed data. The secondary list contains the details, this list can be as a full overlay of
the main list or it can be displayed on a supplementary dialog window from the main screen. We can also make the
secondary list to be interactive as well.
Q29: What do we have to define for Domain and for Data element?
A29: For Domain we define the Field Length, the Data Type and the data values that are permitted. For Data Element
we define the FIELD TEXTS and COLUMN CAPTIONS represented as fields on the display. They the table contents
output.
Q30: What phases exist for generating tables in the data dictionary?
A30: The first phase is choosing the table fields, second is keeping the foreign keys, third is making secondary indexes(
is not mandatory), the fourth is keeping the technical settings and fifth is enabling the table.
A31: What separates transparent tables from pool tables?
A31: Pool tables is related multiple to single to the database table, this means that for a single database tables there are
multiple tables corresponding to it in the dictionary. The dictionary table is named separately from the database table,
also the field count and field names are different. The storage of pool tables is made at the stage of the database. A table
pool is the same thing with a table in the database and its construction is specific for activating the data of multiple R3
tables for storage.
Q32: What benefits do we get from structures and what is the way for using them in the applications of
ABAP/4?
A32: Structure can be defined like tables in the dictionary and the access to them is made from the applications of
ABAP/4, when modifications are made in this structure every program receives the change in an automated way. The
data in a structure is valid just in the time of the application runtime, unlike the data from tables which is deployed in
the database forever. Structures are meant for moving the data from program to program at a global level in ABAP/4, at
a private level they are good at defining the data from module pools to screens and for function module case in which
they generate standard parameters.
Q33: What is the role of the EXEC SQL statement and what are the weak points of it in ABAP/4?
A33: The EXEC SQL statement is used prior the Native SQL statement which will be finalized with ENDEXEC
statement.databases.
Q36: What is the description of the SAP Client concept and also the Client independent?
A36: When we speak in a technical, commercial or management language we can say that a client is a stand-alone full
unit in R3 that that has a particular group of Master data and its own Tables set. Every client from the system is
affected if a client gets modified, in this case we say that we have Client independent objects.
Q37: What is the meaning and usage of variants?
A37: When we have to start a report program with equal selections at some regular time intervals like for instance
monthly or weekly statistics we will have to insert each time tha same values. There is an option in ABAP/4 that gives
us the possibility to bring together all the selections and make one single selection group. These groups can be as many
as we want each one for a particular report program( they will remain linked on that report). A group like that is named
a variant.
Q42: What is the best way to validate a report’s selection criteria and how can we display on the selection screen
the default values?
A42: In the processing block of the event named AT SELECTION SCREEN The criteria will become validated and the
default values on the selection screen can be showed using:
a) INITIALIZATION EVENT
b) DEFAULT VALUE option of the PARAMETERS Statement
c) SPA/GPA Parameters or PIDs.
Q47: What is the difference between Native SQL and Open SQL?
A47: With Open SQL we can enter in every database table from the SAP system no matter what manufacturer the
database has. Many times we have to make use of Native SQL statements which are particular to databases in ABAP/4
programs. For having independent programs( regarding the current database system) in ABAP and for not having
compatibility issues amongst tables in Sap we can find a group of differentiated SQL statements named Open SQL.
Open SQL has standard SQL statements and many improvements that are found only in SAP. Open SQL statements
can be converted in SQL commands by the database interface and they are particular o the current database. Native
SQL statements are having the advantage of direct access to the database.
Q48: How can we describe SAP locking and what is a lock object having?
A48: Through Sap locking we understand implementing or defining logical locks on the objects of the database. The
lock object can have a lock argument and tables.
Q52: What is the way for, instead of displaying a report to print it?
A52: We can print the report with the aid of the keywords TO SAP-SPOOL:
SUBMIT RSFLIND…TO SAP-SPOOL DESTINATION ‘LT50’.
Q55: What is the meaning of filed symbols and field groups and what is the usage of an idx structure component
in relation to field groups?
A55: Field symbols are not providing physical memory spaces for fields, instead they show a field that become known
only at the program runtime. They can be compared to pointers at the level of concept (like in the C language). Extract
datasets are made of record sequences, the records can be of various structures. The records that have an equal
structure can be categorized together as a record type and every record type has to be defined as a filed group with the
aid of this statement: FIELD-GROUPS.
Q56: What is the meaning of the collect statement and in what way can we separate it from an append
statement?
A56: Inserting lines in internal tables that have independent standard keys, the statement COLLECT is used. When we
already have an entry with that key the COLLECT statement brings the numeric field contents from the place of work
to the numeric field contents from the current entry instead of appending a new line (thing that is made by the
APPEND statement).