Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Thomas Jung .
They have taught me a lot and I am sure you will not find a better resource for
learning Web Dynpro.
Web Dynpro Tutorial part 1
Web Dynpro Tutorial part 2
Web Dynpro Tutorial part 3
Web Dynpro Tutorial part 4
Web Dynpro Tutorial part 5
Web Dynpro Tutorial part 6
Web Dynpro Tutorial part 7
http://sap-interview-questions-and-answers.blogspot.se/2012/04/sap-web-dynpro-
abap-interview-questions.html#!/2012/04/sap-web-dynpro-abap-
interview-questions.html
http://sap-interview-questions-and-answers.blogspot.se/2012/04/sap-web-dynpro-
abap-interview-questions.html#!/2012/05/sap-webdynpro-abap-interview-
questions.html
http://sap-interview-questions-and-answers.blogspot.se/2012/04/sap-web-dynpro-
abap-interview-questions.html#!/2012/07/sap-webdynpro-abap-interview-
questions.html
http://sap-interview-questions-and-answers.blogspot.se/2012/04/sap-web-dynpro-
abap-interview-questions.html#!/2012/07/abap-interview-questions.html
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 ).
http://help.sap.com/saphelp_erp2005/helpdata/en/67/be9442572e1231e10000000a15
50b0/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
@Component Level:
@View Level:
Question 2: Briefly explain how will you use implement Select
Options in Web Dynpro?
1) Declare Component Usage for Standard WD
component WDR_SELECT_OPTIONS both at component and view
level.
3) Use the
methods CREATE_RANGE_TABLE and ADD_SELECTION_FIELD for
your fields on Selection screen.
4) Use method GET_RANGE_TABLE_OF_SEL_FIELD to read user input
before you do a SELECT.
Question 3: What is the Web Dynpro Phase model?
Whenever a roundtrip occurs from the client (browser) to the server, a
sequence of processing steps is executed. This sequence of processing
steps in web Dynpro is called the Phase Model.
Executing all the tasks in the phase model is the responsibility of the
Web Dynpro framework.
Each step is executed only once and errors if any are captured.
If you want to get into the details , have a look at the webinar from
Chris Whealy: Understanding the Web Dynpro Phase model.
Important
Question 4: What is OVS? Can you explain the different phases
used in OVS?
First we should understand the difference between Value help and OVS
i.e. object Value Selector.
We use generic Value Help only for the field to which it is bound.
OVS is used when we want to populate multiple fields based on one
field on the screen.
So as per the screenshot , If I select Userid from OVS help, First name
and Last name will be populated automatically. The standard
component WDR_OVS is used for implementing OVS.
OVS works on the PHASE MODEL and different tasks are performed
during different phases.
The current phase is indicated by the parameter PHASE_INDICATOR.
Phase 1:
In this phase you have the possibility to define the texts, if you do not
want to use the defaults: So You can play around with the highlighted
texts in the screenshot below in this phase.
Here we call the method ovs_callback_object->Set_Configuration
Phase 2:
If you do not want the filter fields, you can do that in this phase and
the table will be displayed directly. Refer screenshot below. The table is
displayed directly. I have blurred some results.Here you can call the
methodovs_callback_object->Set_Input_Structure
Phase 3:
In this Phase, You write the select queries that should run as per user
input when the user hits Start Search button and finally set the output
table.You can call the method ovs_callback_object-
>Set_Output_Table for that purpose.
Phase 4:
In this phase , you pass the selected record to the Web dynpro Fields.
i.e. set the attributes using ovs_callback_object-
>context_element->Set_Attribute
There is a special outbound plug called Exit Plug that can be used for
this purpose.
wd_this->fire_to_exit_plg( url = url close_window =
close_window ).
How?
Question 5: Would you prefer creating multiple Custom Controllers OR would you
go for separate Web Dynpro components and then do Component usage.
This would actually depend on the requirement , but ideally separate Web dynpro
components should be created and reused.One can also use the assistance class
for segregating business logic.
Question 6: How many component controllers can a Web Dynpro Component
have ?
Component Controller is only one . You can create multiple controllers , but those are
called Custom Controllers.
Note: If you are asked about the Web Dynpro architecture , you should talk about
both the MVC framework and the controllers.
Question 7: Suppose your Web Dynpro has 10 nodes in the Component Context .
Will all 10 the nodes be available in the Interface controller?
Nodes from the Component context are available to the interface controller only
when the nodes are declared as interface nodes.To create an interface node , set the
interface property to yes as shown in the screenshot below:
To create an interface node , set the interface property to yes as shown in the
screenshot to the right :
Once created , the interface node is indicated by a special symbol as shown in the
figure below and the property Interface Node is set to yes:
Interface Node in Webdynpro ABAP
Question 9: Is it true that each controller has its own Context node ?
Yes , Each controller has it's own context , methods , and Events.
Question 10: At design time how do you decide whether to declare a node in the
Component Controller or in the View Controller?
This again depends on the requirement: If the node is going to be accessed in
multiple views , it should be declared at the Component Controller level . However , If
the node is absolutely specific to only one view , it can be defined in the View
Controller. As the size of Webdynpro development grows , it starts becoming
complex and the need to define attributes,nodes,methods etc. at the Component
Controller increases.
Question 12:Are all the hook methods available to all the Controllers?
No . They are specific to controllers. See the details in the image above:
Have a look at how the control passes from component to window and then to view:
Now view is displayed . Suppose user does some action on the view:
Application is closed.
So now if you are being asked "What is called first : WDDOINIT or WDDOMODIFY?"
OR
"What is called first WDDOINIT for Window controller or WDDOINIT for View
Controller" ?
You should be able to answer the such questions.
Question 15: What are PRE, POST and OVERWRITE exit methods in web dynpro?
Whenever a web dynpro component is enhanced , these 3 methods become
available for all methods in Webdynpro. Lets take an example of these methods for
WDDOINIT.
We can write the business logic in the methods of the View, Window or
even the Component controller. But it is not a good practice to load all
the business logic in the views or windows. So SAP has provided an
option of assistance class where you can write all your business logic.
By this way, you are still in the framework of your webdynpro and also
avoid loading too much logic in the components of webdynpro itself.
Assistance class methods are much better from a performance point of
view than calls of Web Dynpro controller methods.
A web dynpro component will have only one assistance class and it
is defined at the component level as per the screenshot below. The
assistance class is automatically instantiated when a component is
called. You can access the instance of this class with the
attribute wd_assist, which is created when you create the assistance
class in web dynpro.
Question 22: Some important Web Dynpro attributes that you should
know:
Some attribute in webdynpro that are used very frequently and some
of those that you must know are :
Wd_this
Wd_context
Each controller has the above two mentioned attributes.
To elaborate, if you are using the above two attributes say in a method
of a View Controller, then WD_CONTEXT is the reference to the Context
node of the View and WD_THIS is the reference to the View Controller
itself.
Question 25: How do you introduce line break for a UI element in any
layout?
Say if you are using matrix layout, you will say Matrix Head data for
the UI element for which you need a line break.
Question 29: How do you read parameters passed in the Web Dynpro
URL?
First lets understand how a typical webdynpro application looks like:
When you create a web dynpro application , you can see the link URL
generated by web dynpro.
It will be something
like: http://domainname.com:8000/sap/bc/webdynpro/sap/zdemo_webd
ynpro?sap-language=EN&sap-client=100.