SAP Web Dynpro Interview Questions and Answers

1. What is Web Dynpro?
Answer: Web Dynpro is standard SAP UI technology that allows you to develop web applications using graphical tools and development environment integrated with ABAP workbench. Using graphical tools reduces the implementation effort and you can better reuse and maintain components in ABAP workbench. (SAP Web Dynpro Interview Questions)

2. How do you monitor a Web Dynpro application?
Answer: You can monitor the Web Dynpro application using an ABAP monitor. Information is stored about Web Dynpro application and is stored. You can view this information using T-code: RZ20.

3. What Is The Use Of Web Dynpro Window?
Answer: In Web Dynpro, the window is used to use multiple views or view sets. A view can only be displayed when it is embedded in a view and a window always contain one or more views that are connected by navigation links.

Each window contains inbound and outbound plugs and they can be included in the navigation chain. Inbound plugs within a window lead from the outbound plug of a view to the embedding window. Just like all other inbound plugs, they represent an event and thus call the event handler assigned to them.

4. How do you manage information for end-users in Web Dynpro application?
Answer: In ABAP Workbench, you can also create and show messages that contain information for end-users of Dynpro application. These messages are displayed on the screen. These are user interactive messages that display important information about Web Dynpro application.

5. What is the use of SAP List Viewer in Web Dynpro?
Answer: SAP List viewer is used to add the ALV component and provides a flexible environment to display lists and tabular structures. A standard output consists of a header, toolbar, and an output table and the user can make the settings add column display, aggregations, sorting options using additional dialog boxes.

6. What is the use of Window Controller in Web Dynpro?
Answer: Window controller exists for each window and contains a method of writing coding logic.

7. What is Component Controller?
Answer: Component Controller is the King of all Controllers. It is the backbone of your Web Dynpro Component. It is like a Global or Top Include for your program. It controls the entire activity of your Web Dynpro Component.

8. Can you use multiple layouts in one view?
Answer: Layouts can be assigned at the container level. For example, you define the layout for your view at the ROOTUIELEMENT container level.

So if at all you want to use multiple layouts in one view, you can create multiple transparent containers and assign different layouts to them.

9. Can we create a Transaction code for Web Dynpro ABAP Application?
Answer: Yes, we can create a Transaction code for web Dynpro application.

Please follow the steps below:

  • Go to SE93
  • Create Code
  • Choose the last option and maintain values

10. Can you please explain what is service call in Web Dynpro ABAP? What is it used for?
Answer: A service call is a Wizard-based tool which is used to call any existing function module or methods of an existing class within a Web Dynpro component. Service call helps us to automatically create context nodes and a web Dynpro method as per as the Function Module/Class method parameters.

11. What is the importance of the interface controller in Web Dynpro ABAP?
Answer: The interface controller is a type of controller which is responsible for communicating with external web Dynpro components. (Online Training Institute)

12. What is the purpose of interface view property?
Answer: The interface view is created whenever the window is created. It is useful because it creates the different Applications for Component.

13. What are Hook methods?
Answer: Hook methods are standard web Dynpro methods that are called at different scenarios in the web Dynpro lifecycle.

14. When do, views become available in the interface Controller?
Answer: Whenever we embed any view in a window, now that view becomes automatically available to the Interface Controller and shows up as an interface view in the Interface Controller. You do not have to declare a view as an interface view as is the case with interface nodes.

15. What is the Web Dynpro Phase model?
Answer: 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.

16. What is the difference between the component controller and the interface controller?
Answer: The component controller is a global controller when we declare data in the component controller than that data can be accessed by all views and window inside that component
The interface controller is a type of controller which is responsible for communicating with external web Dynpro components.

17. Do we have the option to use Web Dynpro ABAP on BASIS upgrade 6.40 which contains development objects of Web Dynpro ABAP
Answer: For upgrade 6.40 the Web Dynpro ABAP is not available. see 751611 for more info.

18. The Web Dynpro application suddenly stops working correctly while working with complex screens. Why this issue occurs?
Answer: This issue occurs because of the UI container elements are nested in Web Dynpro views (for example, six tabs within each other) it will result in very high nesting depth of HTML rendering tag. Because of the depth of approx 100, the browser stalls, as such deep hierarchies cannot be processed by it. Therefore to resolve this issue we must simplify the views by decreasing its nesting depth. There is no generic simplification provided by Web Dynpro.

19. what is an Interface Controller?
Answer: Whenever we want views, nodes or methods of a particular web Dynpro component to be available to other the outside world (i.e. other webdynpro components), we make use of the Interface controller. Interface Controller is created by default when a webdynpro component is created.

Interface Controller would generally come into picture when you are doing component usage of some sort in web Dynpro i.e. re-using views/methods/nodes of one WD component in another.

20. What is selection cardinality in WebDynpro ABAP?
Answer: WebDynpro ABAP training Bangalore specifies how many records can be selected from a node.

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.

21. For which upgrade the Web Dynpro ABAP is available?
Answer: The Web Dynpro ABAP is available for NetWeaver 2004 upgrade at 7.00.

22. What is a Custom Controller?
Answer: When your Component Controller grows big in size to say more than 10-15 views and corresponding context nodes, methods, events, event handlers, etc), it might become tough to handle everything in the Component Controller. In such a scenario, you can create one or more custom controllers and modularize or segregate the logic into separate parts using Custom Controller.

23. What is View Controller?
Answer: However, If the node is absolutely specific to only one view, it can be defined in the View Controller.

24. What are the Recursion Nodes?
Answer: The recursion node is a special type of node used when a node hierarchy with a recursive structure needs to be created. This is needed when, for instance, the depth of the node hierarchy is not known until runtime. Using a recursion node, you can declare that a particular node structure is replicated as a child of itself. A good example here is if your context needs to hold information in the same structure as a file system, containing directories and subdirectories.

25. How does the Web Dynpro framework decide which particular views make up the current view assembly?
Answer: 1. When an application is executed for the first time, only those views which have their default flag set to true will belong to the first view assembly.

2. Thereafter, user navigation will occur and the view assembly will be composed of those views that have been newly instantiated (on account of their inbound plugs being fired), and those views that persist from the previous view assembly (because no outbound navigation took place from them).

3. Define the WebDynpro Controller.

4. Controllers are the active parts of a Web Dynpro component. In the design of Web Dynpro controllers, SAP has made a significant modification to the original MVC concept of a controller.

26. How can you determine the Lifespan of custom controllers?
Answer: 1. The lifespan of a custom controller is determined by a parameter setting made during the design time declaration. It can be either “Framework Controlled” or “On-demand”. If you choose “Framework Controlled”, then the Web Dynpro framework will instantiate the custom controller when the component is instantiated. If however, you choose “On-demand”, then the Web Dynpro developer must write the coding necessary to instantiate the custom controller.

2. Each child component usage is instantiated with a unique name that must be defined at design time. During the lifespan of the parent component, a child component may only ever be instantiated once under a given name; however, should it be necessary, you may declare multiple usages of the same child component as long as you specify different user names.

27. What is an Empty View?
Answer: There is a special type of view known as the empty view. This view requires no manual implementation, neither is it possible to interact with it in any way other than invoking its default inbound plug – show Empty View. If you require one particular area of a view set to be empty, then you should embed the empty view into the view area. You can then treat this view just like any other view you have written, except that calling its inbound plug will cause the corresponding view area to be blanked out. If a view set has had no views manually embedded into one of its view areas, then the empty view will be substituted automatically.

28. If the view set concept is not implemented in Web Dynpro for ABAP, what options are there for reusing views?
Answer: In both Web Dynpro for ABAP and Java, there is a specific UI Element called the View Container. This UI element, when added to a view layout, acts as a container for any other view. View Containers can be arranged in a large variety of ways in order to achieve the desired layout on the screen.
The views that can be embedded into a View Container UI element are the following:
1. Any view from the current component
2. Any visual interface from a child Web Dynpro component
3. An empty view (supplied automatically by the Web Dynpro runtime).

29. Explain the Concept of Lazy Data Access?
Answer: The Web Dynpro framework has been built to follow the principle of Lazy Data Access. This means that the processing required to generate data will not be invoked until the data is actually needed. When this principle is applied to the architecture of the context, it means that unless there is an attempt to access the data in a singleton child node, then even though the lead selection in the parent node has changed, the child node’s supply function will not be called.

30. How is model-driven architecture implemented in the Web Dynpro framework?
Answer: 1. Web Dynpro framework uses declarative programming techniques to create a meta-model of the application which is free from back-end and front-end programming languages. Rather the metadata is programming language-neutral and has information stored in XML format. It’s only during run-time that the rendering engine generates the code in HTML and javascript from this meta-model of the application. So the design part – which defines the UI and data flow between UI elements – is completely abstracted minimizing the coding (which is required only for implementing business logic).

2. The model-driven approach helps the developer to focus less on coding and technology part and more on the design part of the application – “minimizing coding and maximizing design”. Naturally, the primary focus of the business application developer should be the business logic and the technological implementation should not distract him.

31. What are the types of Controller? Describe?
Answer: 1. In broad terms, SAP has defined two categories of Web Dynpro controller. The difference between them is simply this: A controller either
2. Has a visual interface, 
3. It does not have a visual interface.
4. SAP has introduced this difference in order to maintain a strict separation between those parts of the business application that display data (typically data consumers), and those parts of the business application that process data (typically data generators).

32. What is a View Set?
Answer: A view set is a visual framework that subdivides the window into predefined areas. Each subdivision of a view set is known as a view area, and multiple views can be embedded into a single View Area.
The following preconfigured view sets are available:
1. T layout 90o T layout 180o T layout 270o Grid layout Tab strip
2. Each subdivision within the view set layout is known as a view area.

33. What is View Assembly?
Answer: 1. A window defines the superset of all possible views that a Web Dynpro application could require whilst run a particular component. The number of views visible at any one time however, will typically be only a subset of the number of views embedded within the window.

2. The subset of views rendered at any one time is known as the View Assembly. User interaction followed by subsequent navigation processing will frequently cause this subset of views to change with every server round-trip. The view assembly represents those views seen by the user on their client device after the completion of a particular server round trip.

34. What is the Face Less component?
Answer: It is a component with zero views and zero windows. Such a component is known as a “faceless” component and is useful when a complex unit of functionality requiring no direct user interaction needs to be encapsulated. A good example of a faceless component is the creation of something called a model component. This is not actually a specific Web Dynpro component type; rather it is a standard Web Dynpro component that has been written specifically for the task of interacting with a model object.

35. At design time how do you decide whether to declare a node in the Component Controller or in the View Controller?
Answer: 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.

36. What is an Empty View?
Answer: There is a special type of view known as the empty view. This view requires no manual implementation, neither is it possible to interact with it in any way other than invoking its default inbound plug – show Empty View. If you require one particular area of a view set to be empty, then you should embed the empty view into the view area. You can then treat this view just like any other view you have written, except that calling its inbound plug will cause the corresponding view area to be blanked out. If a view set has had no views manually embedded into one of its view areas, then the empty view will be substituted automatically.

37. What Are The System Fields? Explain?
Answer: The ABAP system fields are active in all ABAP programs. They are filled by the runtime environment, and you can query their values in a program to find out particular states of the system. Although they are variables, you should not assign your own values to them, since this may overwrite information that is important for the normal running of the program. However, there are some isolated cases in which you may need to overwrite a system variable. For example, by assigning a new value to the field SY-LSIND, you can control navigation within details lists.

38. How many component controllers can a Web Dynpro Component have?
Answer: Component Controller is only one. You can create multiple controllers, but those are called Custom Controllers.

39. What is Next?
Answer: Further, you can go through the past assignments you have done with the subject and make sure you are able to speak confidently on them. If you are fresher then the interviewer does not expect you will answer very complex questions, rather you have to make your basics concepts very strong.

Second, it really doesn’t matter much if you could not answer a few questions but it matters that whatever you answered, you must have answered with confidence. So just feel confident during your interview.

40. How will you direct your application to use https instead of HTTP?
Answer: To use in other Web Dynpro components.

41. How do you introduce a line break for a UI element in any layout?

Answer: Say if you are using matrix layout, you will say Matrix Head data for the UI element for which you need a line break.

42. How do you read parameters passed in the Web Dynpro URL?
Answer: First, let’s 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.

43. How will you delete selected rows in a Table / ALV?
Answer:
Get the Table / ALV data in an internal table.
Delete the row selected by the user from the internal table.
Re-bind the internal table to the node bound to the Table/ALV.

44. What is the difference between node & attribute in Web Dynpro ABAP?
Answer: Node is a collection of attributes whereas Attributes are the variables that are used to store a single value at a time.

45. What is the view assembly?
Answer: View assembly is a set of views which are visible on windows at a particular time

46. What Are The Different Controller Types In Web Dynpro Application?
Answer:

  • Component Controller
  • Custom Controller
  • Configuration Controller
  • View Controller
  • Window Controller

47. At design time, how do you decide whether to declare a node in the Component Controller or in the View Controller?
Answer:
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 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.

48. Can you run a Webdynpro Application in the background?
Answer:
This is a tricky question. It doesn’t make sense to run a webdynpro application in the background because in that case, you are beating the purpose of the MVC controller architecture for webdynpro. However, you can build logic to create background jobs from a Web Dynpro Application.

So we have by now put a bunch of questions here. Let me know how do you find these questions.We haven’t yet covered Web Dynpro component usage, ALV, Select Options, OVS, the coding part in web Dynpro, Web Dynpro enhancements, etc.

49. What is the meaning of 0:1 cardinality of context node in Web Dynpro application?
Answer:
It means that at run time, no element or maximum one element can be instantiated.

50. What Is The Use Of Interactive Forms?
Answer: You can create forms based on Adobe software and can use it in context for Web Dynpro user interfaces. You can integrate Adobe lifecycle development tools with ABAP editor to ease the development of the user interface. Interactive forms using Adobe software allows you to create efficient and easy development of UI elements.

51. What are init events and in what sequence they are triggered in Web Dynpro?

  • WDDOINIT of component Controller
  • WDDOINIT of window Controller
  • WDDOINIT of View Controller.

Note: Browse latest Sap web Dynpro  interview questions and sap tutorial. Here you can check  SAP Web Dynpro Training details and sap  training videos for self learning. Contact +91 988 502 2027 for more information.

Leave a Comment

Scroll to Top