1) Which interface converts SQL requirements in the SAP development system to those of the database?
2) What do you mean by an ABAP data dictionary?
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.
3) Explain the difference between pool tables and transparent 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
4) What do you mean by BDC (Batch Data Communications) programming?
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’.
5) Describe the data classes?
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
6) What are the internal tables?
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.
7) List down the functional modules used in sequence in BDC?
There are 3 functional modules which are used in sequence to perform data transfer successfully using BDC programming. They are
8) What is a foreign key relationship?
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.
9) In ABAP what are the differences between table and structure in data dictionary?
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
10) What is Smart Forms?
Smart forms allow you to create forms using a graphical design tool.
11) What are the components of SAP scripts?
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.
12) How to create ‘table cluster’?
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.
13) How can you format the data before write statement in the report?
By using the loop event the reports output can be formatted
a) .at first
b) .at new
c) .at last
14) Explain the difference between Template and Table?
The difference between the table and template is that, table is a dynamic and template is a static.
15) Mention what is ALV programming in ABAP? When is this grid used in ABAP?
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.
16) When do we use End-of-selection?
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.
17) Mention the difference between ABAP and OOABAP? In what situation do you use OOABAP?
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.
18) What is table buffer? Which type of tables used this buffer?
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.
19) What is the use of ‘pretty printer’?
To format the ABAP code ‘pretty printer’ is used.
20) What is the difference between ‘Type’ and ‘Like’?
‘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.
21) What are the different ABAP/4 editors? What are the differences?
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.
22) Explain the difference between dialog program and a report?
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.
23) What is lock object?
To synchronize access of several users using same data Lock objects are used.
24) How data is stored in cluster table?
A cluster table contains data from multiple DDIC tables. It stores data as name value pair.
25) How can you debug a script form?
To debug a script form, you have to follow
SE71–>give the form name->utilities->activate debugger
26) What are different types of data dictionary objects?
The different types of data dictionary objects are:
d) Data Element
e) Type Groups
f) Search Helps/Matchcode Objects
g) Lock Objects
i) Table Types
27) What are the ways you can do the tuning? What are the major steps will you use for these?
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 .
28) In the ‘select’ statement what is ‘group by’?
To fetch the data from the table by the specified field Group by Clause is used.
29) What is dispatcher?
A control agent referred as SAP dispatcher, manages resources for the R/3 applications.
30) Mention what are the two methods of modifying SAP standard tables?
There are two methods for modifying SAP standard tables
a) Append structures
b) Customizing includes
31) What is the difference between a ‘Database index’ and a ‘Match code’?
‘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.
32) Explain the benefits of modularization technique?
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.
33) How can you create callable modules of program code within one ABAP/4 program?
a) By defining Macros
b) By creating include programs in the library.
34) What are different types of parameters? How can you distinguish between different kinds of parameters?
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.
35) What are the different databases Integrities?
a) Semantic Integrity
b) Relational Integrity
c) Primary Key Integrity
d) Value Set Integrity
e) Foreign Key Integrity
f) Operational Integrity
36) How many types of size categories and data classes are there?
There are five size categories (0-4) and 11 data classes only three of which are appropriate for application tables:
– APPL0- Master data (data frequently accessed but rarely updated).
– APPL1- Transaction data (data that is changed frequently).
– APPL2- Organizational data (customizing data that is entered when system is configured and then rarely changed).
The other two types are:
– USR1 – Intended for customer’s own developments.
37) What is the function of the transport system and workbench organizer?
The function of the transport system and the Workbench Organizer is to manage any changes made to objects of the ABAP/4 Development Workbench and to transport these changes between different SAP systems.
38) What are the Data types of the ABAP/4 layer?
Possible ABAP/4 data types:
D: Date, format YYYYMMDD.
F: Floating-point number in DOUBLE PRECISION (8 bytes).
N: Numerical character string of arbitrary length.
P: Amount of counter field (packed; implementation depends on h/w platform).
S: Time Stamp YYYYMMDDHHMMSS.
V: Character string of variable length, length is given in the first two bytes.
X: Hexadecimal (binary) storage.
39) What are the features of ABAP/4 Dictionary?
The most important features are:
– Integrated to aABAP/4 Development Workbench.
– Active in the runtime environment.
40) Name the ABAP/4 Modularization techniques?
– Source code module.
41) Is it possible to pass data to and from include programs explicitly?
No. If it is required to pass data to and from modules it is required to use subroutines or function modules.
42) What are subroutines?
Subroutines are program modules, which can be called from other ABAP/4 programs or within the same program.
43) What are the types of Subroutines?
– Internal Subroutines: The source code of the internal subroutines will be in the same ABAP/4 program as the calling procedure (internal call).
– External Subroutines: The source code of the external subroutines will be in an ABAP/4 program other than the calling procedure.
44) It is not possible to create an ABAP/4 program, which contains only Subroutines (T/F).
45) A subroutine can contain nested form and endform blocks. (T/F)
46) What are the different types of parameters?
Formal Parameters: Parameters, which are defined during the definition of subroutine with the FORM statement.
Actual Parameters: Parameters which are specified during the call of a subroutine with the PERFORM statement.
47) How can one distinguish between different kinds of parameters?
– Input parameters are used to pass data to subroutines.
– Output parameters are used to pass data from subroutines.
48) What are the different methods of passing data?
– Calling by reference: During a subroutine call, only the address of the actual parameter is transferred to the formal parameters. The formal parameter has no memory of its own, and we work with the field of the calling program within the subroutine. If we change the formal parameter, the field contents in the calling program also changes.
– Calling by value: During a subroutine call, the formal parameters are created as copies of the actual parameters. The formal parameters have memory of their own. Changes to the formal parameters have no effect on the actual parameters.
– Calling by value and result: During a subroutine call, the formal parameters are created as copies of the actual parameters. The formal parameters have their own memory space. Changes to the formal parameters are copied to the actual parameters at the end of the subroutine.