1) Types of ABAP UI Technologies
Ans: Webdynpro for ABAP, BSP
2) MVC Architecture Concepts and usage of the same in ABAP Webdynpro
Ans: As per the MVC Architecture there is a clear separation between flow logic, view and the Business
Logic. View holds all the UI elements that are visible in the UI, Controllers have the flow logic.
Controllers are of different kind (Component Controller, View Conroller,Window Controller).
Business logic is held in the Model which is in the form of Assistance class
in webdynpro context.
3) Difference Between the View Container and the Transparent Container
Ans: View Container holds the views, there can be multiple views assigned to the view container but only
one view can be active(viewed) at a time. Transparent holds the webdynpro UI elements, A layout type
can be associated with it.
4) What does a Model Class Consists of
Ans: Model Class is the Assitance class in webdynpro. It contains the Business logic in the form of
methods, Global data & Constants in the form of Class Attributes. The Model class can be accessed in
webdynpro component using the attribute wd_assist->. Note: All the visibility properties of the
Class are applicable when accessing the class using the object wd_assist.
5) What is an Assistance Class and How is it Instantiated in Webdynpro
Ans: Assistance Class is the model class which would act as the data provider for the webdynpro
component and it is instantiated by the webdynpro component during the run time and no explicat
instantation is required.
6) Design Patterns in Webdynpro(GAF,OIF,QAF Etc)
Refer to the link:
FPM Concepts in Webdynpro
7) How do you debug an web based Application
(Could be from ABAP Webdynpro, BSP or CRM Web UI)
Ans: External break-points should be used to debug web UI's.
8) How do you create a ALV Report/Editable ALV in Webdynpro
Ans: ->
Add the Standard ALV component to the web dynpro Component.
->Use Components tab: Ex: ALV_MATS type SLV_WD_TABLE
->Create a context node with the table field information to be displayed
->Write the ALV Default Code for table display
->Set the read only attribute to false to switch to editable mode using
the method set_read_only of the interface
IF_SALV_WD_TABLE_SETTINGS implementing class
CL_SALV_WD_CONFIG_TABLE).
9) How do you Navigate between Views in Webdynpro
Ans: Navigation between Views is through Plugs(Inbound and Outbound),
10) Usage of Plugs in Webdynpro
Ans: Plugs are used to Navigate between the views. Parameters can be passed using the plugs similar to
interface parameters of function module or a class method.
11) Usage of Webdynpro Component Controller
Ans: Component controller is used to the store the Global attributes and Methods of the component.
Attributes/methods declared in the component controller are visible through out the component and they
are accessed using the attribute wd_comp_controller outside of component controller(like
views,windows etc) All the context nodes defined in the component controller are
visible in all the views and windows of the component.
Ex: if a variable called gv_count is defined in the component controller, it can be accessed in the view
using the syntax wd_comp_controller->gv_count.
12) How do you access a Context Nodes and elements Programmatically
Code required for accessing the Context Nodes can be written using the webdynpro code wizard.
For Ex: if there exists a Node Node1 with cardinality 1:1 and has 3 Attributes to it Att1, Att2,Att3. The
attributes can be accessed using the below code.
data: lo_nd_node1 type ref to if_wd_context_node.
data: lo_el_node1 type ref to if_wd_context_element.
data: ls_node1 type wd_this->element_node1.
lo_nd_node1 = wd_context->get_child_node
( name = wd_this->wdctx_node1 ).
lo_el_node1 = lo_nd_node1->get_element( ).
**Read Node1
lo_el_node1->get_static_attributes(
importing
static_attributes = ls_node1 ).
**Write to Node1
lo_el_node1->set_static_attributes(
exporting
static_attributes = ls_node1 ).
13) Message Areas in Webdynpro
Message areas are created in views to display messages (Error,Success,Warning,Info).
WD allows to have multiple Message errors in a view but throws an error when the view is displayed.
Use the code wizard to get code for raising error messages. Few of the message classes and methods
are: Interface: if_wd_message_manager.
methods: report_t100_message.(used to report message from the message class)
14) Concept of OTR(Online Text Repository) and its Usage
OTR's are similar to text elements in ABAP. OTR's are created for
UI texts and texts can be maintained in multiple language.
OTR's can be created using the transaction: SOTR_EDIT
15) Concept of Interface Views
If the views of a different components are need to be used in a webdynpro component mark the view as
interface view and use it in another component. It's similar to using a include in a program. A Interface
view of the component can be used in any no of components. this concept supports the reusuability of
the views.
16) Sequence of Webdynpro Events:
Ex: WDDOINIT,WDMODIFYVIEW,WDAFTERACTION,
WDBEFOREACTION etc
Sequence: WDDOINIT of the component controller,
WDDOINIT of the Window Controller,
WDDOINIT of the View Controller,
WDMODIFYVIEW(On Input/Display on any UI Element).
WDBEFOREACTION(Method for validation of user input,
Once the user action happens on the UI)
WDAFTERACTION(Method for non-action specific operations
before Navigation)
WDDOEXIT( Exit from the View/Window/Component Controller)
WDPOSTPROCESSING(used to perform exception handling for supply function methods)
17) Can a Component have Multiple Applications
Yes, For a given webdynpro component any no of applications can be created. Applications are similar
to transactions in SAP. You can associate different Interface views of the component to create different
applications using the same component.
18) How do you launch a Webdynpro Application from a Transaction
Refer to the previous blog Calling webdynpro application from a Transaction
URL:
http://sapabapwebdynpro.blogspot.com/2011/04/call-abap-webdynpro-application-from-r3.html
19) How do you Navigate between two Webdynpro Components
You can use Interface views to navigate between components or create a navigation class and
do a explicit call.
20) Creating a tree in Webdynpro
Tree UI element is used to create Tree in Webdynpro. Tree can be defined as part of the table column.
21) Usage of Exit Plug in a Webdynpro Window
Exit plugs are outbound plugs used to close the webdynpro application. they can be called from the view
which are embedded in the window Note: Exit plugs won't work in portal environment.
Exit plugs can also be used to pass the call to another URL. Here is the sample code snippet of the exit
plug call:
method onexit .
data url type string.
data close_window type wdy_boolean.
url = 'url_name'.
close_window = abap_false.
wd_this->fire_to_exit_plg( url = url
close_window = close_window ).
endmethod.
22) why FQDN(Frequently Qualified Domain Name) is necessary for running Webdynpro Applications
Refer to sap help:
http://help.sap.com/saphelp_erp2005/helpdata/en/67/be9442572e1231e10000000a1550b0/content.htm
21) Standard ALV Component required to create ALV Reports in Webydnpro
SALV_WD_TABLE
22) How do you build Select Options in Webdynpro
Using the standard webdynpro component WDR_SELECT_OPTIONS
You can refer to the example: WDR_TEST_SELECT_OPTIONS
23) How do you build F4 Search Help in Webdynpro
A F4 help for an input field can be made available by attaching the search help
to the table field. Usage of standard help component WDR_OVR.
Creating a component for help and attaching it to the node element as Freely programmed value help
24) How are Plugs(Inbound/Outbound) bounded in the Window
Plugs are created in the view and bounded in the window by using the drag drop option in the window
view.
25) How do you Control the visibility of the Webdynpro UI elements Programmatically.
Create a context element of type wdui_visibility and bind to the visibility property of the UI element.
26) What is the use of Interface views/nodes in Webdynpro.
Interfaces nodes and views are created to use them in other webdynpro components.
27) How do you navigate between different Webdynpro applications
Create a navigation class and trigger the target application to be called.
28) What are the webdynpro init events and what is the sequence of trigger
Sequence: WDDOINIT of the component controller,
WDDOINIT of the Window Controller,
WDDOINIT of the View Controller,
29) How are Error messages created and handled in webdynpro
Create a message UI element in the view and trigger the message required(Error,warning,status) using the
code generation wizard.
30) What is an OTR and mention its usage in Webdynpro
Online Text Repository is the central storage for texts for webdynpro
applications. An otr can be fetched in the program using the below mentioned code.
data: lv_string type string.
lv_string = cl_wd_utilities=>get_otr_text_by_alias( alias =
'PACKAGE/OTR_NAME' ).
31) Can text elements be used in webdynpro, if yes how?
Yes text elements can be used in webdynpro.
Refer to the below code snippet.
data: lv_string type string.
lv_string = wd_assist->if_wd_component_assistance~get_text( '025' ).
32) What is the use of Road Map UI element
Roadmap UI element is used to display step-by-step workflows. It can used to clearly define a process.
33) What are exit plugs?How are they created?
Exit plugs are used to exit from the webdynpro page or an webdynpro window.
Exit plugs are created in the window.
34) Is it possible to hide F4 function for an Input element programmatically?
Yes it is possible to hide F4 function attached to an input field.Use the interface
if_wd_context_node_info and the method set_attribute_value_help
35) How do Webydnpro Upload and download functions work, Explain.
Fileupload UI element is used upload files from desktop the application.
There is also restriction on the max data volumes that can be uploaded.
Filedownload UI element is used to download files to the client.
36) Explain the concept of Road Map UI element in Webdynpro.
Refer to the link:
Road map UI element webdynpro for abap
37) How to create popups in webdynpro.
Create a view and embed the view in the window and call the window to trigger the popup.
38) Explain the concept of OVS and its usage
WDR_OVS is the standard webdynpro component to generate F4 helps
for the input field. OVS refers to Object value selector.
39) Using Radio Buttons/Checkboxes/Dropdown lists in webdynpro
Radio buttons/Checkboxes are used for objective selection similar to what is available in SAP GUI. An
event is associated with each UI element for onclick action.
40) FPM Concept and its usage in webdynpro.->>>>
Refer to the link
41) what is internationalization in webdynpro abap application?
Internalization refers to creation of texts used in webdynpro application in a specific language and
providing option to translate to multiple languages if necessary. This is achieved by using OTR's or text
elements for static texts and performing translation when required.
42) What is Cardinality of a context node in webdynpro
Cardinality refers to no of elements a node can accomodate during run time. When a node is created the
cardinality is assigned to it. Cardinality is of the following kinds:
0:1 -->At run time, no element or maximum one element can be instantiated
0:n -->At run time, no element or maximum of n elements can be instantiated
1:n -->At run time, minimum one element or maximum of n elements can be instantiated
1:1 -->At run time, only one element should always be instantiated
if you try violating the cardinality there would be a short dump saying Number of elements of the
collection of node node_name violates the cardinality
43) what is Personalization in abap webdynpro application
Personalization refers to changing the properities of UI elements at runtime. Personalization settings are
user specific. Configuration controller is used for personalization function.
ex: Changing the order of columns in a table display.
44) what are the controller types in webdynpro ABAP
-Component Controller->Component Controller is global part of the component and each component
has only one component controller. Global Attributes and methods required by the component can be
defined here.
-Custom Controllers->Custom controllers are defined during design time and these are optional. The
visibility Custom controllers is in the entire component and has the life time equal to life time of the
component. Custom controllers are used if a set of views have to be grouped to perform
a special function or hold a set of data.
-View Controller->Flow logic of the views are in view controller and a view can have only one view
controller. The visibility of View controller is specific to view only.
-Configuration Controller->Configuration controller is used achieve personalization function.
-Window Controller->A window controller exists for each window and can also have methods
to write coding logic. Every window will have the default method and it is used to receive
parameters. The windows controllers are visible in entire component and also in the custom
controller.
45)what are Layout types in Webdynpro and its usage
->Flow Layout : Used for sequential display of WD UI elements.
->Row Layout : here each ui element is displayed on its own column and the width differs from row to
row.Rowheaddata is used to insert a break.
->Grid Layout : Ui elements are arranged based the no of columns. line breaks are inserted based on
the size.
->Matrix Layout: Matrix layout arranges ui elements in columns. Matrixheaddata is used to insert a line
break.
Usage of the appropriate layout to build a webdynpro application is determined during the UI
design.
46)what is supply function method in SAP
->Supply function method is used to populate the context node or to default values to the context
node elements. supply function method is called before the node is accessed for first read.
->Using supply function method is optional
47)what is singleton property of context node
->Singleton property is one of the attributes of the context node if this is set there can be only one
instance of the respective context node at runtime.
48)How to default a value to the context attribute
In the context attribute there is a property to set the default value. Use the same, However the
default value can be overwritten using the set_attribute method of the interface if_wd_context_element.
49)Is it possible to pass parameters to webdynpro URL?
yes you can pass parameters to webdynpro URL and it is passed as below.
for ex: your url is http://server.com/wd_url_name?sap-system-login-basic_auth=X&sap-client=800&sap-
language=E
Here the parameter values are passed for sap-system-login-basic_auth,sap-client and sap-language.
***********************More to Come********************