0% found this document useful (0 votes)
116 views

Interview Questions II - RICEF PDF

ricef easy qs

Uploaded by

akhila9988k
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
116 views

Interview Questions II - RICEF PDF

ricef easy qs

Uploaded by

akhila9988k
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 29

Interview Questions - II

RICEF

By Irfan
RICEF Interview Questions

1) What is RICEF?
RICEF full form:
o R – Reports.
o I – Interfaces (Bapi’s, Rfc’s, Webservices).
o C – Conversions (BDC, LSMW, etc).
o E – Enhancements (Customer, exits, Badi’s, Enhancement Frame Work).
o F – Smartforms, Adobe forms.

2) What is Report?
Report: It is used to retrieve or fetch data from database tables and display it to
the user in user understandable format.
There are different types of Reports:
1) Classical ALV Report.
2) Interactive ALV Report or Drill Down Report.
3) Group Report.
4) Report with Logical database.

3) What is Classical Report?


Classical ALV report: It is an abap program which generates a single output
screen called as ALV grid with complete detailed information is called as Classical
ALV report.

4) What is the sequence of Report?


Report program is an executable Program and it is a program type 1.
Reports has following events in sequence:
* Load Program.
1) Initialization.
2) At selection-screen output.
3) At selection-screen.
4) At selection-screen on <f>.
5) At selection-screen on value-request for <f>.
6) At selection-screen on help-request for <f>.
7) Start-of-selection.
8) End-of-selection.
9) Top-of-page.
10) End-of-page.
1) Initialization: This event is triggered before the selection-screen is
displayed and it is used to initialize the values of selection-screen fields.

P a g e 1 | 28

Abap S4 Hana Faculty: Irfan, VersionIT, www.versionit.org, Ph.no: 9014629911, Ameerpet.


RICEF Interview Questions

2) At selection-screen output: This event is triggered whenever you change


the properties of the selection-screen elements such as disable, invisible,
mandatory, etc.
3) At selection-screen: This event is triggered when the user enters data onto
selection-screen fields and click on pushbutton. This event is generally used
to validate the data entered onto selection-screen fields.
4) At selection-screen on <f>: This event is triggered when the user enters
data onto a particular selection-screen field and used to validate that
particular field.
5) At selection-screen on value-request for <f>: This event is triggered when
user press F4 function key on selection-screen field which is used to display
custom list of values by avoiding standard list of values.
6) At selection-screen on help-request for <f>: This event is triggered when
user press F1 function key on selection-screen field which is used to display
custom help documentation by avoiding standard help documentation.
7) Start-of-selection: This event is triggered when the user starts fetching or
selecting data from database tables. This is first event triggered for output
screen(list).
8) End-of-selection: This event is triggered when fetching of data from
database tables is ended and it helps the user to display the fetched data
onto output screen(list).
9) Top-of-page: This event is triggered when top of the page is reached and
it is used to display page and column headings.
10) End-of-page: This event is triggered when end of page is reached and it
is used to display footer data.

5) What is Load Program?


Load Program: First event triggered by the system to load the program into
memory.

6) What is screen?
Screen: It is a standard structure in abap dictionary which contains group of
fields but acts as an internal table with the statement loop at screen in the event
‘At selection-screen output’ (PBO).

7) What is Reuse ALV_grid_display?


Reuse ALV_grid_display: This is a standard function module used to display data
in tabular format onto output screen ALV grid with different options such as sort,
filter, sum, etc.

P a g e 2 | 28

Abap S4 Hana Faculty: Irfan, VersionIT, www.versionit.org, Ph.no: 9014629911, Ameerpet.


RICEF Interview Questions

8) What is Field catalog?


Field catalog: It is used to design the columns or output fields of output screen
(alv grid) by providing the properties for each column or field such as column
position, column name, column as sum, column without leading zero's,
column as left or right or centred, etc.

9) What is SLIS?
SLIS: It is a built-in type group which contains group of data types and constants.
Such as:
types: slis_t_fieldcat_alv type slis_fieldcat_alv occurs 1.

10)
As of release 6.40, you can avoid ‘SLIS’ ALV library to be included in abap ALV
Reporting, directly you can access data types and constants of type group: Slis
without including it with type-pools slis.

11) What is Reuse_alv_fieldcatalog_merge?


Reuse_alv_fieldcatalog_merge:
This function module is used to build fieldcatalog(fields of output screen) auto
matically with the help of abap dictionary structure or internal table.

12) What is runtime error?


When you use FM: ‘Reuse_alv_fieldcatalog_merge’ then you will get 2 errors as
the following runtime errors(dump), so to void that dump, do the following
settings:
1) First dump or runtime error:

P a g e 3 | 28

Abap S4 Hana Faculty: Irfan, VersionIT, www.versionit.org, Ph.no: 9014629911, Ameerpet.


RICEF Interview Questions

Solution:
➢ Go with Tcode: SE38.
➢ Provide an existing report program name: ZCLASICAL_ALV_REPORT2.
➢ Click on ‘change’ button.
➢ Go with menu option: Utilities->settings.

2) Second dump or runtime Error:

Solution:
The internal table (it_mara) you pass to this function module
‘reuse_alv_fieldcatalog_merge’ with which fieldcatalog is generated should
have its fields created with ‘Like’ keyword but not ‘type’ keyword.

P a g e 4 | 28

Abap S4 Hana Faculty: Irfan, VersionIT, www.versionit.org, Ph.no: 9014629911, Ameerpet.


RICEF Interview Questions

13) What are text elements?


Text Elements: It is used to provide text as labels for selection-screen elements
and also onto output screen list.
Different text elements are:
1) List heading.
2) Column heading.
3) Selection text.
4) Text symbols.
1) List Heading: It is used to provide headings for the output screen called as list.
2) Column heading: It is used to provide headings for the columns of output
screen(list).
3) Selection text: It is used to provide labels for the input fields, checkbox and
radio buttons of selection-screen.
4) Text symbols: It is a 3-character id which is maintained outside of an abap
program for the literals which are hard coded in an abap program, in order to
make an abap program language independent.

14) What is ALV Interactive report?


ALV Interactive Report: It is an abap program which generates a limited
information onto 1st ALV grid from where user calls further information onto
second ALV grid by double clicking or selecting pushbutton.
To handle Events in ALV Reports: When the user double clicks or selects
pushbutton or menu item onto ALV grid then the event triggered is
‘User_command’ and its respective subroutine is called and executed by the
system by passing two parameters to subroutine such as function code and work
area of structure slis_selfield which has group of fields such as tabindex,
fieldname, value, etc.
Note: when the user double clicks on output screen (ALV Grid) then its function
code is ‘&IC1’.

15) What is Menu Painter?


Tcode: SE41: MENU PAINTER: It is used to create GUI (Graphical user interface)
or Status which contains menu bar with different menu options, pushbuttons on
application toolbar, etc, so that user can more easily interact with the screen.
Some of the ALV events are: USER_COMMAND, PF_STATUS_SET,
TOP_OF_PAGE, ETC.
Note: To trigger events in ALV Reports, you need to activate them by passing
subroutine to the events in the function module ‘Reuse_alv_grid_display’ then

P a g e 5 | 28

Abap S4 Hana Faculty: Irfan, VersionIT, www.versionit.org, Ph.no: 9014629911, Ameerpet.


RICEF Interview Questions

whenever event is triggered their respective subroutine is automatically called


and executed.

16) What is USER_COMMAND and PF_STATUS_SET?


USER_COMMAND: It is an event triggered when the user double clicks or select
pushbutton on output screen ALV grid in order to get further data onto next ALV
grid.
PF_STATUS_SET: It is an event used to attach GUI or Status to the output screen
(ALV Grid). So that user can interact with the output screen. The statement to
attach GUI or Status to output screen (ALV grid) is
set pf-status <gui_name> [excluding <fcodes>]

17) What is TOP_OF_PAGE?


TOP_OF_PAGE: It is an event triggered by the system which is used to display
page heading and logo onto output screen (ALV Grid).
Whenever the events such as ‘USER_COMMAND’, ‘PF_STATUS_SET’ AND
‘TOP_OF_PAGE’ are triggered then their respective subroutines are
automatically called by the system and set of statements in that subroutine gets
executed.

18) What is Reuse_alv_commentary_write?


Reuse_alv_commentary_write: This function module is used to display list
heading and logo onto top of page of output screen (ALV grid).
Note: ‘Hotspot’ property if used in fieldcatalog makes user single click as double
click.
wa_fcat-hotspot = 'X'.
conversion routines: It is used to convert data from display format to internal
format and vice versa.

19) What is CONVERSION_EXIT_MATN1_OUTPUT?


CONVERSION_EXIT_MATN1_OUTPUT: This function module is used to convert
internal format data (here it is in leading zero's which are removed)
to display format.
CONVERSION_EXIT_MATN1_INPUT:
This function module is used to convert display format data
(here it adds leading zero's) to internal format.

P a g e 6 | 28

Abap S4 Hana Faculty: Irfan, VersionIT, www.versionit.org, Ph.no: 9014629911, Ameerpet.


RICEF Interview Questions

20) What is Variant?


Variant: It is used to store set of values of range of input fields of selection-
screen.
Note: Variant helps the user to schedule a report program in background.

21) What is Tcode to upload image in ALV Report?


Upload logo or image in order to include in ALV Report:
Tcode: OAER.

22) What is the Tcode to create a report program?


Create a Tcode for Report Program:
Tcode: SE93.

23) What is the Tcode to schedule report program in background?


Schedule Report program in Background:
Tcode: SM36.

24) What is the Tcode to view the status of background job?


To view/know the status of background job:
Tcode: SM37.

25) How to handle events in LAV Interactive Report?


To handle Events in ALV Interactive Report:
It_events
Name (Event) Form
PF_STATUS_SET HANDLE_GUI
USER_COMMAND HANDLE_DCLICK
TOP_OF_PAGE PAGE_HEADING

26) What is REUSE_ALVEVENTS_GET?


REUSE_ALV_EVENTS_GET: This function module is used to get all the events in
ALV.

27) How to call standard transaction from output screen -ALV grid?
To call standard transaction from output screen -ALV grid:
Syntax:
Call transaction ‘Tcode’ AND SKIP FIRST SCREEN.

P a g e 7 | 28

Abap S4 Hana Faculty: Irfan, VersionIT, www.versionit.org, Ph.no: 9014629911, Ameerpet.


RICEF Interview Questions

Example:
call TRANSaction 'MM03' AND SKIP FIRST SCREEN.

27) How to execute another report?


To execute another report:
Syntax:
Submit <report_name> and return.
Example:
submit ZREPORT_EXAMPLE1 and RETURN.

28) What is SAP memory?


SAP Memory: It is a global memory area where data is stored so that all the
programs of all the sessions can access it.
To store data in Sap Memory (SPA)
Syntax:
set parameter id <id_name> field <f>.

29) How to read data from SAP Memory?


To Read data from Sap Memory (GPA)
Syntax:
get parameter id <id_name> field <f>.

30) What is Group report and control break statements?


Group Report: It is an abap program which generates a basic list (output screen)
with the help of control break statements or internal table events.
Control break statements or internal table events: It defines set of statements
that process specific lines of internal table.
Control break statements or internal table events are:
1) At First.
2) At New <f>.
3) At end of <f>.
4) At Last.
1) At First: This event is triggered when you read the first record of internal table
and it is triggered only once within loop and endloop. This event is generally
used to display page and column headings.
2) At New <f>: This event is triggered whenever a new field value is read from
an internal table. This event can be written more than once but the field name
should be different.
3) At end of <f>: This event is triggered at the end of group of lines which has
the same field value. This event is generally used to calculate subtotals.
P a g e 8 | 28

Abap S4 Hana Faculty: Irfan, VersionIT, www.versionit.org, Ph.no: 9014629911, Ameerpet.


RICEF Interview Questions

4) At Last: This event is triggered when you read the last record of internal table
and is triggered only once within loop and endloop. This event is generally used
to calculate grand total.
o ‘SUM’ is the keyword used to add or calculate the numeric fields of internal
table to the numeric fields of work area.
Note: All these events are used within loop and endloop of internal table and
the internal table should be sorted.
Note: Whenever you use internal table events within loop and endloop, your
internal table should be created with header line.
o All the events will end with ‘Endat’ keyword.

31) What is ‘On change of’ Event?


On change of <f1> or <f2>: This event is similar to At New but the advantage of
‘On change of’ event is you can provide more than one field and if any of the
field value changes then this event is triggered.
Vbak: Contains sales document: Header data.
Vbap: Contains sales document: Item data.
Note: For each sale there will be one record in database table Vbak and multiple
records (item data) in the database table Vbap.

32) What is Logical database?


Logical database: It is a special abap program which fetches data from database
and makes it available to an executable program.
o Tcode to create Logical database is SE36.
Logical database has 3 main areas:
1) Structure.
2) Selection.
3) Database program or Source Code.
1) Structure: Each Logical database has root node and under root node we can
create number of child nodes. Each node has the same name and structure as
database table. Execution of nodes will be in the hierarchy provided in the
structure.
Mara->Marc->Mard.
2) Selection: It is used to provide range of input fields onto the selection-screen
based on which data is fetched from database table.
3) Database program or Source Code: It is the place where actual fetching logic
is written.

P a g e 9 | 28

Abap S4 Hana Faculty: Irfan, VersionIT, www.versionit.org, Ph.no: 9014629911, Ameerpet.


RICEF Interview Questions

33) What Get<node>, Put<node>, Get <node> Late?


Get <node>: This event will trigger Logical database where the data is fetched
from database table.
Put <node>: This event when triggered will transfer the work area data from
logical database to report program.
Get <node> Late: This event will trigger the specified node once all its previous
nodes get executed.

To Calculate Subtotal and Grand total in ALV Report:


➢ To achieve this, you need to consider 2 points:
1) In the fieldcatalog, you need to provide a property ‘do_sum = ‘X’ for the
following fields:
2) You need to create an internal table it_sort of structure slis_t_sortinfo_alv
and activate a field ‘subtot’ for the field ‘Vbeln’ in it and pass it_sort to
‘reuse_alv_grid_display’.

34) What is Layout?


Layout: This concept will help in ALV report to display checkbox, signal lights,
colors, etc row wise and of should be of structure slis_layout_alv and should be
passed to FM:reuse_alv_grid_display.

wa_layout-box_fieldname = 'BOX'. " To create checkbox on ALV layout


wa_layout-no_colhead = 'X'. "this will not display column heading
wa_layout-zebra = 'X'. "This will display striped pattern
wa_layout-no_vline = 'X'. "this will not display vertical lines
wa_layout-no_hline = 'X'. "this will not display horizontal lines
wa_layout-no_keyfix = 'X'. "This will make the key column to scroll
wa_layout-
colwidth_optimize = 'X'. "this will display complete text in the columns
wa_layout-lights_fieldname = 'LIGHTS'. "this will provide signal lights
wa_layout-info_fieldname = 'COLOR'. "this will color rows accordingly

Note: ALV Report which uses ‘Reuse_ALV_grid_display’ cannot be scheduled in


background, so to schedule ALV Report in background you need to use
‘Reuse_alv_list_display’.

35) What is Module pool program?


Module pool program (or) Dialog Program (or) Transaction:
It is a collection of screens which is used to update the data to database tables.
The Module pool program contains two main components:
P a g e 10 | 28

Abap S4 Hana Faculty: Irfan, VersionIT, www.versionit.org, Ph.no: 9014629911, Ameerpet.


RICEF Interview Questions

1) Screen (Dynpro).
2) Abap module pool program.
1) Screen (Dynpro): It is a graphical container where you can provide screen
elements such as input/output fields, pushbuttons, checkbox, radiobuttons, etc.
o Screen is designed with the help of Abap workbench tool called as Screen
painter. Tcode is SE51.
o Screen is identified by number which ranges from 0 to 9999.
A Screen contains 4 components
i) Screen Attributes.
ii) Screen flow logic.
iii) Screen layout.
iv) Field attributes.
i) Screen Attributes: It describes the properties of screen such as short
description, screen type which can be normal, subscreen or model dialog box.
ii) Screen flow logic: It is a code that process a screen with the help of events,
they are
a) PBO (Process Before Output).
b) PAI (Process After Input).
c) POH (Process on Help-request).
d) POV (Process on Value-request).
a) PBO (Process Before Output): It is triggered before the screen is displayed,
which is used to initialize the values for screen fields. It is also used to change
the properties of screen elements such as read only, mandatory, invisible, etc.
b) PAI (Process After Input): This event is triggered when the user enters data
onto screen fields and click on pushbutton or menu item then its respective PAI
modules are called and set of statements on those modules gets executed. Also,
the selected pushbutton or menu item function code is captured in the system
field sy-ucomm.
c) POH (Process on Help-request): This event is triggered when the user press
F1 function key, which is used to display custom help documentation.
d) POV (Process on Value-request): This event is triggered when the user press
F4 function key, which is used to display custom list of values by avoiding
standard list of values.

iii) Screen layout: It is used to design the layout of the screen with the help of
screen elements such as input/output fields, pushbuttons, check boxes,
radiobuttons, etc.
iv) Field attributes: It is used to define the properties of screen fields such as
read only, disable, required, invisible, etc.

P a g e 11 | 28

Abap S4 Hana Faculty: Irfan, VersionIT, www.versionit.org, Ph.no: 9014629911, Ameerpet.


RICEF Interview Questions

Note: Each screen is considered as a logical unit of work (LUW). Each LUW will
update the data to database table.

36) What is LUW?


LUW (Logical Unit of Work): It is a sequence of database operations which are
executed completely (commit work) or not at all (Rollback).

37) What is Abap module pool program?


Abap module pool program: It contains data declarations and set of modules
that are called by screen flow logic.
Module pool program is a program type ‘M’.

38) What are the ways to navigate screen?


There are 2 ways to navigate to the next screen:
1) Static Navigation.
2) Dynamic Navigation.
1) Static Navigation: In this method, the second screen is called from the first
screen based on the properties of the first screen i.e., the next screen number
provided in the field ‘Next screen’.
2) Dynamic Navigation: In this method multiple screens are called dynamically
with the help of following commands:
i) Set sceen <scrno>.
ii) Call screen <scrno> [starting at <row> <col>]
[ending at <row> <col>].
iii) Leave to screen <scrno>.
iv) Set screen <scrno>.
Leave screen.
i) Set screen <scrno>: This command is used to call the second screen from the
first screen by displaying some data onto it when the user click on pushbutton
of first screen. To go back to first screen from second screen, you need to
provide a pushbutton and its respective functionality onto second screen.
ii) Call screen <scrno>: This command is used to call second screen from the first
screen by displaying some data onto it. This second screen is a pop-up screen
and to make it a pop-up screen, you need to select screen type as model dialog
box and also the next screen field should be empty. To come back to the first
screen from the second screen (popup screen), you no need to provide
pushbutton onto second screen (popup screen) but just press enter button will
make you to go back to first screen.
iii) Leave to screen <scrno>: This command is used to call the second screen
from the first screen when the user clicks on pushbutton by displaying some
P a g e 12 | 28

Abap S4 Hana Faculty: Irfan, VersionIT, www.versionit.org, Ph.no: 9014629911, Ameerpet.


RICEF Interview Questions

data onto it. To come back to the first screen from the second screen, you need
to provide pushbutton and its functionality onto second screen.
iv) Set screen <scrno>. Leave screen: This is similar to the command ‘leave to
screen <scrno>’.

39) What is subscreen?


SUBSCREEN: Is a screen within a screen.
Steps to work with Subscreen:
➢ Create a main screen as normal screen and provide sub-screen area onto it,
then name it.
➢ Create another screen as type Sub-screen.
➢ Arrange fields onto the Sub-screen such that they should fit the sub-screen
area.
➢ Call the sub-screen in the Screen flow logic.

40) What is TabStrip and Table Control?


TabStrip:
A TabStrip is a control that contains a collection of one or more tabs.
Table Control: It is a screen table which displays multiple records onto it.
Note: LOOP at itab WITH CONTROL TCL CURSOR tcl-top_line.
MODULE STATUS_0100.
endloop.
This loop statement reads a record from internal table itab and puts in a header
line, parallelly positioning the cursor at the top of line of table control-Tcl and
immediately a module ‘status_0100’ is called where header line (itab) data is
moved to implicit work area vbap. As program field names of implicit work area
vbap and table control-tcl screen fields which are also designed with vbap are
same, therefore system automatically transfers the data from implicit work area
vbap to table control-tcl. This continues till all records of internal table itab are
fetched.

41) How to update records of database table?


To update or manipulate records of Database table
1) To insert single record into database table
Syntax:
Insert <dbtable> from <wa>.
Or
Insert <dbtable>.
Or
Insert into <dbtable> values <wa>.
P a g e 13 | 28

Abap S4 Hana Faculty: Irfan, VersionIT, www.versionit.org, Ph.no: 9014629911, Ameerpet.


RICEF Interview Questions

42) How to insert multiple records into database table?


To insert multiple records into database table
Syntax:
Insert <dbtable> from table <itab>.

43) How to update single record in database table?


To update or change single record into database table
Syntax:
Update <dbtable> from <wa>.
Or
Update <dbtable>.

44) How to change multiple records of database table?


To change multiple records of database table
Syntax:
Update <dbtable> set f1 = val1 f2 = val2………..fn = valn
where <condition>.
Or
Update <dbtable> from table <itab>.
This ‘Update’ command will change the existing records of database table. If
record does not exist then this statement fails which is known through the
return value of sy-subrc, i.e sy-subrc <> 0.

45) How to insert single record in database table?


To modify/Insert single record into database table
Syntax:
Modify <dbtable> from <wa>.
Or
Modify <dbtable>.

46) How to modify multiple records of database table?


To Modify/Insert multiple records of database table
Syntax:
Modify <dbtable> from table <itab.

47) How to delete a single record from database table?


To delete a single record from database table
Syntax:
Delete <dbtable> from <wa>.
Or
Delete <dbtable>.
P a g e 14 | 28

Abap S4 Hana Faculty: Irfan, VersionIT, www.versionit.org, Ph.no: 9014629911, Ameerpet.


RICEF Interview Questions

48) how to delete multiple records from database table?


To delete multiple records from database table
Syntax:
Delete <dbtable> from table <itab>.

Note: In all these commands only those records of database table are changed
or deleted which matches the primary key fields.

Note: Modify command will check the record whether exist or not. If it exists
then ‘Modify’ command will modify the data to an existing record and if the
record you are going to modify does not exist then ‘Modify’ command will create
a new record into database table.

49) What is Automatic checks?


1) Automatic Checks: These are the check done by the system automatically
based on the Abap dictionary properties and also based on the standard system
settings.
Different Automatic checks are:
i) Required or mandatory.
ii) Proper data format such as date or time fields, etc.
iii) Valid value for input field.
i) Required or Mandatory: If you make a screen field required or mandatory
then if the user does not enter data onto it then system displays an error
message.

50) How to avoid Automatic Checks?


To avoid Automatic Checks: To avoid automatic check, you need to create a PAI
module with an option ‘At Exit-command’ before the module ‘User_command’
and also you need to provide a property for ‘Exit’ pushbutton as ‘FCTtype’: ‘E’.
avoid Automatic checks:
➢ Provide the property: FCTtype: ‘E’.
PROCESS AFTER INPUT.
Module auto_out at exit-command.
MODULE USER_COMMAND_0100.
Checks in Screen flow logic: Field command is used to validate a screen field by
providing list of values to it in the event PAI (Process After Input) before the
module ‘User_command’.

P a g e 15 | 28

Abap S4 Hana Faculty: Irfan, VersionIT, www.versionit.org, Ph.no: 9014629911, Ameerpet.


RICEF Interview Questions

51) What is chain and endchain? What is Checks?


Chain and endchain: It is used to validate group of screen fields and if any of the
screen field has error then it makes all the screen fields disabled expect the fields
in chain and endchain.
Checks in Abap module pool program: Module command is used along with
field command in the PAI Event before module ‘user_command’ inorder to
validate a particular screen field by calling a module which is written in abap
module pool program where validation is done.

52) Standard Transaction codes:

MM (Material Management)
Tcodes:
o MM01: To create material master data.
o MM02: To change Material master data.
o MM03: To display Material master data.
o ME21: To create purchase order.
o ME22: To change Purchase order.
o ME23: To display Purchase order.
o ME21N: To create Purchase order.
o ME22N: To change Purchase order.
o ME23N: To display Purchase order.
o ME29N: To release Purchase order.
o ME31L: To create PO (Purchase Order) schedule agreement.
o ME32l: To change PO schedule agreement.
o ME33L: To display PO schedule agreement.
o ME31K: To create PO contract.
o ME32K: To change PO contract.
o ME33K: To display PO contract.
o ME41: To create RFQ (Request for Quotation).
o ME42: To change RFQ.
o ME43: To display RFQ.
o ME45: To release RFQ.
o ME47: Create quotation.
o ME48: Display quotation.
o ME51: Create Purchase Requisition (PR).
o ME52: Change PR.
o ME53: Display PR.
o ME51N: Create PR.
o ME52N: Change PR.
P a g e 16 | 28

Abap S4 Hana Faculty: Irfan, VersionIT, www.versionit.org, Ph.no: 9014629911, Ameerpet.


RICEF Interview Questions

o ME53N: Display PR.


o ME54/ME54N: To release PR.
o MIGO: Inbound delivery.
o MIRO: Incoming Invoice.

SD (Sale and Distribution)


o VA11: To create Enquiry (RFQ).
o VA12: To change Enquiry (RFQ).
o VA13: To display Enquiry (RFQ).
o VA21: To create Quotation.
o VA22: To change Quotation.
o VA23: To display Quotation.
o VA01: To create Sales order.
o VA02: To change Sales order.
o VA03: To display Sales order.

Outbound Delivery
o VL01/VL01N: To create Outbound Delivery.
o VL02/VL02N: To change Outbound Delivery.
o VL03/VL03N: To display Outbound Delivery.
o VT01: To create Shipment.
o VT02: To change Shipment.
o VT03: To display Shipment.

Billing / Invoice
o VF01: To Create billing document.
o VF02: To Change billing document.
o VF03: To Display billing document.

To view all transaction codes: SM01

53) What is BDC?


BDC (Batch Data Communication) or Conversion
Definition: It is used to transfer non-sap data (legacy system) to SAP R/3 system.
Steps to Create BDC Program:
Note: Flat file is given to you as a text file or excel file from where this non-SAP
data is transferred to SAP R/3 system.

Step1: Read flat file data to an internal table (itab).

P a g e 17 | 28

Abap S4 Hana Faculty: Irfan, VersionIT, www.versionit.org, Ph.no: 9014629911, Ameerpet.


RICEF Interview Questions

Step2: From internal table itab, data is not directly transferred to the database
of SAP R/3 system instead it has to go through screens and screen fields, i.e.,
through a particular transaction in a particular format called as BDCDATA
structure which stores both data and actions where the validation takes place.
Step3: There are 2 batch input methods to transfer non-sap data to SAP R/3
system. They are
i) Call transaction Method.
ii) Session Method.
i) Call Transaction Method: It is one of the Batch Input Method used to transfer
non-sap data to SAP R/3 system.
Syntax:
Call Transaction ‘Tcode’ using it_bdcdata [mode
‘A/N/E’] [update ‘A/S’] [messages into it_msg].
-> Tcode: It is a Transaction Code
-> it_bdcdata: It is an internal table of structure BDCDATA which contains 5 fields
such as:
i) Program: Module pool Program.
ii) Dynpro: Screen Number.
iii) Dynbegin: Start of screen.
iv) FNAM: Screen field name.
v) FVAL: Screen field value.
Mode A: All screens display (Foreground).
N: No screens display (Background).
E: Error screen display.
> Default mode is ‘A’, if you omit this option.
Update A (Asynchronous Update): It is the process in which a BDC Program
sends a record to update work process and will not wait for acknowledgement
instead it sends the next record to update work process. Update work process
will update the data to database table.
Update S (Synchronous update): It is the process in which BDC Program sends
a record to update work process and will wait for the acknowledgement to come
from update work process. Once it gets the acknowledgement then it sends the
next record to update work process. The update work process will update the
data to database table.
> By default, Update is ‘A’, if you omit this option.
Messages into it_msg: It is used to handle both success and failure (errors)
messages. Internal table it_msg should be of structure ‘BDCMSGCOLL’.

ii) Session Method: It is one of the Batch Input Method which is used to transfer
Non-SAP data to SAP R/3 System.
P a g e 18 | 28

Abap S4 Hana Faculty: Irfan, VersionIT, www.versionit.org, Ph.no: 9014629911, Ameerpet.


RICEF Interview Questions

-> In this Method, Sessions are created as files on application server and unless
and until you process session, data is not transferred to SAP R/3 system.
-> To process Session, Tcode is SM35.
1) BDC_OPEN_Group: This function module is used to create session (file) on
application server.
Syntax:
Call function ‘BDC_OPEN_Group’
Exporting

2) BDC_INSERT: This function module is used to insert internal table (it_bdcdata)


of structure BDCDATA along with Tcode (ex:mm01) into session.
Call function ‘BDC_INSERT’
Exporting
Tcode = provide the Tcode(MM01)
Tables
Dynprotab = provide an internal table it_bdcdata of structure BDCDATA

3) BDC_Close_group: This Function is used to close the session (file).

54) What is File Handling?


File Handling: There are 2 types of files:
1) Local files
2) Sequential file or datasets.
1) Local files: Files present on presentation server or desktop or front end are
called as local files.
ALSM_EXCEL_TO_INTERANL_TABLE: This function module is used to upload
excel file present on presentation server or desktop to an internal table.
WS_upload: This function module is used to upload text file or excel file present
on presentation server or desktop to an internal table.

Note: This Function WS_UPLOAD is outdated and not used now.


Gui_upload: This function module is used to upload text file or excel file present
on presentation server or desktop to an internal table.
Gui_download: This function module is used to download internal table data
onto desktop or presentation server as text file or excel file..

2) Sequential file or Datasets: The files present on application server are called
as datasets or sequential file.

P a g e 19 | 28

Abap S4 Hana Faculty: Irfan, VersionIT, www.versionit.org, Ph.no: 9014629911, Ameerpet.


RICEF Interview Questions

55) What is Recording?


Recording: It is a sequence of steps recorded by the system automatically for
the screens and screen fields, i.e., for a particular transaction in a particular
format called as BDCDATA structure with which system generates a BDC
Program.
Tcode for Recording is SHDB.

56) What is the Tcode for Process session and process session in background?
Process Session
Tcode: SM35.
Process Session in Background
Tcode: SM35.

57) What is TEXT_CONVERT_XLS_TO_SAP?


TEXT_CONVERT_XLS_TO_SAP: This function module is used to upload excel file
present on presentation server or desktop to an internal table.

58) What is the syntax to create Sequential file on Application server?


Syntax to create Sequential File or Dataset on Application Server:
Open dataset <dsn> for input/output/appending in
text/binary mode endcoding default.
➢ dsn: dataset name or sequential file.
➢ Input: It is used to read the data from dataset or sequential file.
➢ Output: It is used to write the data onto dataset or sequential file.
➢ Appending: It is used, if the sequential file already exists then this option will
not overwrite the data to it, instead it will add the data at the end of existing
file. If the sequential file does not exist then it will create it.
➢ Text Mode: The sequential file contains alphanumeric text.
➢ Binary mode: The sequential file contains 0’s and 1’s.
➢ Encoding default: Before the version 4.7EE, each character is represented as
ASCII code i.e., one byte but from 4.7EE onwards each character is
represented in Unicode i.e., 2 bytes therefore we need this option.

59) How to read data from sequential file?


To read data from sequential file
Syntax:
Read dataset <dsn> into <wa>.

60) How to transfer data to sequential file?


To transfer data to Sequential file
P a g e 20 | 28

Abap S4 Hana Faculty: Irfan, VersionIT, www.versionit.org, Ph.no: 9014629911, Ameerpet.


RICEF Interview Questions

Syntax: Transfer <wa> to <dsn>.

61) How to close dataset?


To close dataset or sequential file
Syntax: Close dataset <dsn>.

Note: To view sequential files Tcode: AL11 and by default sequential files are
stored in directories DIR_Home and DIR_temp.

Note: If you want to execute your BDC program in background then the BDC
program (call transaction method) which uses function modules such as
‘gui_upload’ or ‘alsm_excel_to_internal_table’ or
‘TEXT_CONVERT_XLS_TO_SAP’ will not work therefore you need to consider
datasets or sequential files present on application server (AL11) to upload it to
database of SAP R/3 system using batch input methods (call transaction method)
and can be schedule in background using Tcode: SM36.

62) Differentiate Call transaction and Session method.


Difference between Call Transaction method and Session method
Call Transaction method Session method
1) Errors must be handled 1) System will automatically handle errors.
explicitly.
2) It has both synchronous 2) It has only synchronous update.
and Asynchronous update
process.
3) sy-subrc is returned. 3) sy-subrc is not returned.
4) Data from internal table 4) Data from internal table it_bdcdata is not
it_bdcdata is directly directly transferred instead it will go to
transferred to SAP database. Session and unless and until you process
session using Tcode: SM35, data is not
transferred to sap database.
5)It is faster as it can use 5)It is slow as it uses ‘Synchronous Update’
‘Asynchronous update’ which which will wait for acknowledgement.
will not wait for Ex: Transaction data
acknowledgement.
Ex: Master data updation.

P a g e 21 | 28

Abap S4 Hana Faculty: Irfan, VersionIT, www.versionit.org, Ph.no: 9014629911, Ameerpet.


RICEF Interview Questions

63) What is BAPI?


BAPI (Business Application Programming Interface): It is a remote function
module defined as business object method in the business object repository
(BOR), so that an external systems (.Net, Java) can access SAP data.
o BAPI has no exceptions because sy-subrc cannot be understandable to the
non-sap systems. Therefore, BAPI has an exporting parameter of structure
BAPIRET2.
o BAPI’s are also used for transferring Non-Sap data to SAP R/3 system for
enjoy transactions or transactions which ends with ‘N’(New) such as follows:
• ME21N: To create Purchase Order.
• ME22N: To change Purchase Order.
• ME51N: To create Purchase Requisition.
• VL01N: To create Delivery).
• VT01N: To create shipment, etc.
o For the above Tcodes, you cannot use BDC’s as for these transactions
recording (SHDB) fails because it contains many GUI controls(subscreen).
Therefore, for these Tcodes, you need to compulsory use BAPI’s in order to
transfer Non-Sap data to SAP.
o FI01-> This Tcode is used to create Bank Master data.
o BNKA: Standard database table which stores Bank Master data.

Bapi_transaction_commit: This function module is used to commit (insert) the


data to the database tables.
Bapi_transaction_rollback: This function module is used to roll back the data of
the database tables.
BAPI: As Inbound and Outbound.
Inbound Bapi: It is used to insert the data to database tables.
Ex: BAPI_BANK_CREATE.
Outbound Bapi: Is used to get the data from database tables.
Ex: BAPI_BANK_GETDETAIL.

64) Differentiate RFC and BAPI.


RFC BAPI
1) It has exceptions. 1) It has no exceptions.
2) Each RFC cannot be a BAPI unless it 2) Each BAPI is RFC.
is defined as a method in the Business
object.
3) It is used to access the functionality 3) It is generally used by Non-SAP
of Remote SAP systems, i.e., It Systems to access SAP data.
between SAP to SAP.
P a g e 22 | 28

Abap S4 Hana Faculty: Irfan, VersionIT, www.versionit.org, Ph.no: 9014629911, Ameerpet.


RICEF Interview Questions

65) What is LSMW?


LSMW (Legacy System Migration Workbench):
Definition: It is a tool used to transfer non-SAP data to SAP R/3 system with the
help of some navigation steps.

66) What is SAP SCRIPT?


SAP SCRIPT: It is a tool to design business documents such as purchase order,
sales order, billing document etc, so that the different business partners can
communicate with each other.
o Tcode for Sap Script is SE71.
o But Sap Scripts are not used now in ECC 6.0 as they are outdated. Therefore,
SAP provided Smartforms and Adobe Forms.

67) What is Smart Forms?


Smart Forms: It is an advance concept which is used to design business
documents such as purchase order, sales order, billing document etc, so that the
different business partners can communicate with each other.
o Form Painter is the tool to design Smartforms.
o Tcode For Smartforms is SMARTFORMS
o Components of Smart Forms are:
1) Global Settings.
• Form Attributes.
• Form Interface.
• Global definition.
2) Pages and Windows.
o Page1.
o Main window
Form Attributes: It defines the properties of form such as style (paragraph and
character format), short description, etc.
Form Interface: It is used to pass the data to and from Smart form such as
import, export, tables and exceptions.
Global Definition: It is used to define data types, variables such as work area,
internal table, etc, so that they can be used throughout smart form.
o In Smart forms system automatically creates page1 and also main window
when smart form is created. Also, main window is attached to page1.
o Form is a collection of pages and page is a collection of windows and window
is a container of text or graphics.
There are 4 types of windows:
o Main window.
o Secondary Window.
P a g e 23 | 28

Abap S4 Hana Faculty: Irfan, VersionIT, www.versionit.org, Ph.no: 9014629911, Ameerpet.


RICEF Interview Questions

o Copies window.
o Final window.
Main Window: It is an output area where continuous text is displayed. If main
window is filled with text, then the remaining text will not be truncated, instead
it is displayed in the main window of next page.
You can create only one main window per page in smart forms whereas in Sap
Scripts you can create 99 windows per page.
Secondary Window: It is an output area where fixed lines of data is displayed. If
the secondary window is filled with the text, then the remaining text will be
truncated, therefore in secondary window you need to display fixed lines of
data.
Copies Window: It is an output area where copies of data are displayed, i.e.,
original, duplicate, triplicate, quadruple.
Final Window: It is an output area where some data is displayed and this
window is executed only at the last though it is present in the middle of smart
form.

68) What are different formats and Symbols?


Paragraph format: It is used to format group of lines of paragraph.
Character format: It is used to format a group of words within a paragraph.
Symbols or place holders: It contains a value at the time of printing.
Syntax:
&name& or &var&
Example: &hno&, &street&, &city&, etc.
There are 4 types of symbols:
1) System symbols.
2) Program symbols.
1) System symbols: These are the symbols provided by SAP.
Ex: &sfsy-date&, &sfsy-time&
2) Program symbols: There are the variables created in print program or driver
program and transferred to Smartforms.

69) What is Tag column?


Tag column: It contains format keys which defines formatting of text at the time
of printing.
*: default paragraph: It is used to apply the default paragraph settings to the
text at the time of printing.
/ (New line): The text written here will be printed in the new line.
/* (comment line): These lines contents are not printed at the time of printing.

P a g e 24 | 28

Abap S4 Hana Faculty: Irfan, VersionIT, www.versionit.org, Ph.no: 9014629911, Ameerpet.


RICEF Interview Questions

/: (control command): This text in this line is not printed as it is but is considered
as command.
= (extended line): the text content in this line is appended directly to the
character of the preceding line which was displayed last.

70) How to execute smartforms?


Smartforms are not executed directly, to execute smartforms, you need a print
or driver program.

71) What is Print Program?


Print or Driver Program: It is an Abap Program which fetches the data from
database tables and transfer it to Smartform.
Note: LP01: is a default printer device used in smartforms.
LOCL: This is also used for print device.

72) Differentiate Template and Table?


To display data in tabular format:
Template Table
1) It is used to display fixed lines onto 1) It is used to display ‘n’ no. of lines
it. onto it.
2) It has a different line structure for 2) All the lines should have the same
its lines. structure.
3) It is displayed on any window. 3) It is displayed only on main
window.
4) Work area is the input for it. 4) Internal table is the input for it.

73) What is Style?


Style: It is used to create both paragraph and character formats.
Tcode: Smartstyles or smartforms.

74) Differentiate SAP Script and Smartforms.


Difference between SAP Script and Smartforms
SAP Script Smart Forms
1) It is complicated to design. 1) It is easy to design.
2) It has no interface. 2) It has interface such as import,
export, tables, etc.
3) It is text element dependent. 3) It is text element independent.
4) It is paragraph dependent. 4) It is paragraph independent.

P a g e 25 | 28

Abap S4 Hana Faculty: Irfan, VersionIT, www.versionit.org, Ph.no: 9014629911, Ameerpet.


RICEF Interview Questions

5) It is client and language dependent. 5) It is client and language


independent.
6) Box, colouring, etc cannot be 6) Box, colouring can be applied.
applied.
7) Data in tabular format cannot be 7) Data in tabular format can be
represented. represented using template and table
nodes.
8) Line type cannot be applied. 8) Line type can be applied.
9) ’99’ main windows can be created 9) Only one main window is created
per page. per page.
10) Both layout (sapscript) and print 10) Both layout (smartform) and print
program are separate. program can be written in smartform.
11) To invoke Sapscript you need 11) Smartform itself returns function
function modules such as open_form, module which is used in print program
start_form, write_form, etc. to invoke it.
12) Tcode:SE71. 12) Tcode: Smartforms.

75) What is Enhancement?


Enhancement: It is used to add custom functionality to the standard R/3 system
without modifying it.
Enhancements are empty shells or empty spaces provided by SAP for the
standard transactions where user can provide or write custom code.
Different Enhancements are:
1) Enhancement using Customer Exits.
2) Enhancement to Abap Dictionary.
3) Enhancement using User Exits.
4) Enhancement Spots.
i) Implicit Enhancement.
ii) Explicit Enhancement.
5) Badi’s.
1) Enhancement using Customer Exits:
Customer Exits: It is used to add custom functionality in the standard R/3
system.
Different Customer Exits are:
1) Function Exit.
2) Menu Exit.
3) Screen Exit.
4) Field Exit.
1) Function Exit: It is used to add custom functionality to the standard R/3
application without modifying it.
P a g e 26 | 28

Abap S4 Hana Faculty: Irfan, VersionIT, www.versionit.org, Ph.no: 9014629911, Ameerpet.


RICEF Interview Questions

Menu Exit: It is used to add custom menu items to the standard menu bar of the
SAP R/3 application.
Screen Exit: It is used to add custom screens to standard R/3 applications
without modifying it.
Field Exit: It is an old enhancement technology linked to a screen input field
which executes custom Abap code that is allowed to:
User Exit: It is used to add custom code to the SAP Standard program without
modifying it but requires Access key.
Implicit Enhancement: It is used to add custom code in the standard Program of
SAP R/3 system without modifying it.
Enhancement Options: They are positions or empty shells in the repository
objects where enhancement (custom code) is written. These can be explicit or
implicit.
Explicit Enhancement can be explicit enhancement point and explicit
enhancement section.
Explicit Enhancement Point: It is used to add custom code in the standard SAP
program where your custom code is executed along with SAP standard Code.
Explicit Enhancement Points are provided by SAP at different areas for different
objects. It looks as below:
Enhancement-Point <name> spots <spot name>
[static/Dynamic]

Note: ’Static’ option is used for data declaration whereas ‘Dynamic’ option is
used for coding. If ‘Static’ option is not there means by default it is ‘Dynamic’.

Explicit Enhancement Section: It is used to add custom code in the standard SAP
program and also provides a provision to even comment or deactivate the
Standard Abap code.
Enhancement Spots: It is a container of explicit enhancements such as point and
section.
Difference between Point and Section is when explicit enhancement point is
implemented then its custom code is executed along with Standard Abap code
but when explicit enhancement section is implemented then here you can
comment or deactivate standard abap code and make only your custom code
executed.

P a g e 27 | 28

Abap S4 Hana Faculty: Irfan, VersionIT, www.versionit.org, Ph.no: 9014629911, Ameerpet.


RICEF Interview Questions

76) Differentiate Modification and Enhancement?


Difference between Modification and Enhancement
Modification Enhancement
1) We need Access key from service 1) No need of Access key.
market place.
2) Once Modification is done, it is not 2) SAP here also will not support.
supported by SAP.
3) More work during Upgrade. 3) Very less work during Upgrade.
4) All the objects are replaced by new 4) Very less changes after update.
version during Upgrade. Customer
need to make the changes again.

77) What is ABAP/SAP QUERY?


ABAP/SAP QUERY: It is a reporting tool used to develop Report with the help of
some steps.

P a g e 28 | 28

Abap S4 Hana Faculty: Irfan, VersionIT, www.versionit.org, Ph.no: 9014629911, Ameerpet.

You might also like