Sei sulla pagina 1di 8

ABAP interview

questions and answers


1. 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 t

o
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
2

.
16. What are the events in ABAP/4 language?- Initialization, At selection-screen, Startofselection, end-of-selection, top-of-page, end-of-page, At line-selection, At usercommand, 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. Is there any standard SAP report which gives a count of the number of times a program is
executed ?
25. A: Try transaction STAT 26. 27. Q: When we create a customer the information is updated
in structure RF02D and the
some tables like KNA1 are updated. How can we find the tables for master data tr
ansactions? A: Go to ABAP Workbench -> Overview -> application hierarchy - SAP ->
follow the customizing based tree for your application. Double click on a lowest hierarchy
level to get for the correct marked development class. Here you can find all the tables, views,
logical databases etc. used for a system operation.
28. 29. 30. Q: How can we use CAD with
SAP ?
A: Third party tools from Eigner + Partner provide interfaces to SAP. Another third party
software - Fastlook Plus from Kamel Software enables you to view all of the Autocad formats.
31. 32. Q: How can I access SAP through Internet?
A: SAP has its own Internet transaction Server (ITS) . Other products include Haht,
WebObjects, NetDynamics etc. Each product has its' own architecture. However to access the
database, access paths SAP GUI or RFC Channel have to be used.
33. 34. Q: How can we transport the standard text?
A: Refer note 3355 in OSS for a complete explanation. The SAPscript objects that should be tr
ansported must be written in a transport reQuest. The entries are as follows: R3TR FORM
NAME (NAME = Name of the layout set) R3TR STYL NAME (NAME = Name of the style)
R3TR TEXT OBJECT,NAME,ID,L (OBJECT = Text object, NAME = Text name, ID = Text
ID, L = Text language) If you want to tr ansport a number of texts, you can use report
RSTXTRAN to insert the individual text keys into a correction. The tr ansport reQuest must be
entered and released via the tr ansport system.
35. 36. Q: How to find what transactions a particular user was running for a given period in the
stpast

(Eg: from 1of a month ) A: You may


use the transaction - STAT.
37. 38. Q: We want protect/lock a field so that only selected people can change the value while
others can only read. How to set the authorizations? A: Create an authorization object for change
mode. Loop at screen in the user exit and set input to 0. Check the user based on sy-uname and
the authorization. Decide whether input should be 0 or 1

.
39. 40. Q: How to lock an user defined transaction for some time during which no user can
access the same? A: Use transaction SM01. Scroll through the transactions and check
against the tr ansaction to be locked. And after the maintenance is over, go back to
SM01 and uncheck the same to unlock.
41. 42. B D C 43. Q: Our ABAP program is working properly in Foreground. Can I
schedule it for
background processing on the weekend? A: SAP standard program RSBDCSUB helps you to
schedule the job. Create a variant for RSBDCSUB with the BDC session name.
44. 45. Q: How can we send a mail to the user intimating him that his report/BDC is completed
in background? A: You can use FUNCTION RS_SEND_MAIL_FOR_SPOOLLIST If
Unix is being used, you may send a report to any internet mail with the following:
46. REPORT ZSNDMAIL . 47. DATA: COMND(200) type c. 48. DATA: RESULT(200) type c
occurs 100 with header line. 49. PARAMETERS: FILE(60) type c lower case default
'/sapdata/sd_outbound/testmail.dat'. 50. PARAMETERS: SUBJECT(60) type c lower case. 51.
PARAMETERS: EMAIL(60) type c lower case. 52. INITIALIZATION. 53. TR ansLATE EMAIL
TO LOWER CASE. 54. START-OF-SELECTION. 55. TR ansLATE EMAIL TO LOWER CASE.
56. CONCATENATE 'cat' FILE '| elm -s & Quot;' subject '&Quot;' email into comnd
seperated by space. 57. CALL 'SYSTEM' ID 'COMMAND' FIELD comnd 'TAB' FIELD
UNIX_RESULTS*SYS*. 58. Loop at Results. 59. write: /1 results. 60. endloop 61. end-of-selection. 62. 63.
SAPScript 64. Q: We get the total number of pages as expected by using 'SAPSCRIPTFORMPAGES'
in a duplex layout. In our case duplex case is always 'Terms & Conditions'. We do not want the
number of pages as in duplex printing. What is the best possible solution? A: On the Terms &
Conditions page, Change the Page counter mode to 'HOLD' to keep the page counter from
incrementing when you print the Term & Conditions.
65. 66. Q: Can I Print a logo on an Invoice?
A: Save a Logo using Paintshop Pro or Corel Draw as Tiff file. Use RSTXLDMC to convert the
logo to standard text in SapScript. When the program is executed, the path

and file name have to be correctly specified. Process could be like the following: Run
RSTXLDMC Enter file name C:\MAIL\COMPLOGO.TIF Resolution for Tiff file Absolute Xposition Absolute Y-position Absolute positioning Reserved height Shift to right UOM = CM
Text title Line width for text = 132 Text name ZHEX-MACRO-COMPLOGO Text ID ST Text
language = E Postscript scaling Width & Height according to PS scaling Number of Tiff gray
levels (2,4,9) 2 Then Create a new window 'COMP' with attributes; Window COMP description
Company Logo Window type CONST Left margin 7.00 CH window width 10.00 CH Upper
margin LN window height 8.00 LN Finally in the text element , mention /: INCLUDE 'ZHEXMACRO-COMPLOGO' OBJECT TEXT ID ST LANGUAGE 'E'. Please note that if object
name is not indicated as 'ZHEX...', the logo may not be printed! You will not be able to see the
logo in a test print. The same will be printed in actual printout. If you are using two logos in the
same layout, the names of the logos should be uni Que. Say 'ZHEX-MACRO-LOGO1' and
'ZHEX-MACRO-LOGO2'. Else all the information will be overwritten. If the logo is not
EXACTLY TIFF 6.0 , the same will not be printed. See OSS notes 5995, 18045, 39031 for
some inputs.
67. 68. RFC 69. Q: We want to move a SAP table to an Access table
using
TABLE_EXPORT_TO_MSACCESS_RFC Importing parameters are DBNAME DEST
FLG_APPEND FLG_POPUP LANGU The table has three columns: TABNA

M
MANDT SDATA We have no Exporting parameters. How shall we set the parameters? A:
Install the PS utilities, which are part of SAPGUI install CD. You may run report RIACCESS
from SE38. Go to SALE -> Communication -> Define RFC Destination. Setup two RFC
destinations PS_ACCESS_1 and PS_ACCESS_2 and will have to get them to point to
wdpsastr.exe and wdpsatab.exe respectively. Then execute RIACCESS and choose
PS_ACCESS_1 to generate access tables. Please note that Access only supports tables with
up 255 fields.
70. 71. Q: We want an RFC do the following transactions - MB1A, MB1C,>MB01 (goods
receipt/issue). A: Call the RFC INBOUND_IDOC_PROCESS with IDOC_CONTROL
and IDOC_DATA. The structure in the field sdata in the IDOC_DATA are e1mbxyh and
e1mbxyi.
72. 73. Tr ansports 74. Q: In a Dev instance, we want to transport a modification to a layout set
from one client
to another. What is the best way? A: use transaction SE71. Choose Utilities->Copy from
Client. Layout sets need not be tr ansported between clients , via transport reQuests
DEVKxxxxxx.
75. 76. Q: We need to keep track of the transports that need to flow through to other systems (ie,
DEV, TST, TRN, PRD etc). Is there a way do this? A: SAPCRAFT enables you to control the
CTS from DEV system. This keeps track of all tr ansports at all stages and enables you to
allocate Import, export and Authorization functions to specific user.
77. 78. Tables 79. Q: We specify the logical database. And we want a field that is not present in
any of the
tables defaulted in logical database. How can we want to add this additional field from a
different table? A: . Presume you have a
80. logical database 81. table 1 82. table 2 83. table 3 84. Define the re Quired field as
additional field say fld of table 1, table 2 or table 3 85. and then in the code section
define. 86. Perform get_f1d(zxxxxxxx) using f1d. 87. Form zxxxxxxx could be like; 88.
Form get_f1d using f. 89. Select * from where 'conditions' 90. f = table4 - f1d.
91

.
Q:We need to download an internal table to the Presentation Server(local workstation). Whenever
we run the program, the same file has to be saved as a separate file in se Quential order. Ex:
0001.txt, 0002.txt etc. Where can we store the last file number? A: SAP has a table TVARV for
storing the variants. A record may be created in TVARV for all the programs that re Quire this kind
of incremental records. For Ex: the record could be 100Zmm10001 MM seQuence rec where first
part consists of client code and the program being run. Client code is re Quired because TVARV
does not has a field for client code. The second part is the description indicating the purpose what
the record is created. This entire string may be posted in the Name field (char - 30). The Type field
( char- 1) may be populated with P or S (Parameter or Selection) Low field (char- 45) may be
populated with '0001' when run first time and increment it by one in your program for downloading
of the internal table.
Batch input / Direct input

Q: We are calling transaction VL01 in batch input to create deliveries using a program for
delivery due list. How ever we are unable to create deliveries for tr ansport stock orders. Why?
A: Batch-inputs can not be used to fill the &Quot;delivery due list&Quot; screen because it is
not a dynpro. This is a standard SAP report. A SAP report (check with & Quot;System ->
Status& Quot;) may be called using SUBMIT sentence with the appropriate options . It is
preferred to call a report than create a Batch-input program.
Q: What are some sample Direct input data transfer programs? A: In MM for Material Master
data - RMDATIND FI - for Accounting Documents - RFBIBL00 PP - for Independent re
Quirements - RM06IN00 CA - for Classification data - RCCLBI03

Potrebbero piacerti anche