Interview Questions II - RICEF PDF
Interview Questions II - RICEF PDF
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.
P a g e 1 | 28
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).
P a g e 2 | 28
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.
P a g e 3 | 28
Solution:
➢ Go with Tcode: SE38.
➢ Provide an existing report program name: ZCLASICAL_ALV_REPORT2.
➢ Click on ‘change’ button.
➢ Go with menu option: Utilities->settings.
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
P a g e 5 | 28
P a g e 6 | 28
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
Example:
call TRANSaction 'MM03' AND SKIP FIRST SCREEN.
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.
P a g e 9 | 28
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
Note: Each screen is considered as a logical unit of work (LUW). Each LUW will
update the data to database table.
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>’.
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.
P a g e 15 | 28
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
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.
P a g e 17 | 28
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
-> 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) Sequential file or Datasets: The files present on application server are called
as datasets or sequential file.
P a g e 19 | 28
56) What is the Tcode for Process session and process session in background?
Process Session
Tcode: SM35.
Process Session in Background
Tcode: SM35.
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.
P a g e 21 | 28
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.
P a g e 24 | 28
/: (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.
P a g e 25 | 28
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
P a g e 28 | 28