Definition
Web Dynpro is the SAP NetWeaver programming model for user interfaces and provides support when developing the Web representation of business applications. The Web Dynpro model is based on the Model View Controller paradigm, and has the following features that build on the classic dynpro model:
- Clear separation of business logic and display logic
- Uniform metamodel for all types of user interfaces
- Execution on a number of client platforms.
- Extensive platform independence of interfaces
Purpose
Web Dynpro for ABAP or Web Dynpro for ABAP (WD4A, WDA) is the SAP standard UI technology for developing Web applications in the ABAP environment. It consists of a runtime environment and a graphical development environment with special Web Dynpro tools that are integrated in the ABAP Workbench (SE80).
Web Dynpro offers the following advantages for application developers:
- The use of declarative and graphical tools significantly reduces the implementation effort
- Web Dynpro supports a structured design process
- Strict separation between layout and business data
- Reuse and better maintainability by using components
- The layout and navigation is easily changed using the Web Dynpro tools
- Stateful applications are supported – that is, if the page is changed and the required data remains intact so that you can access it at any time throughout the entire application context.
- Note that stateless applications are not possible.
- Automatic data transport using data binding
- Automatic input check
- User interface accessibility is supported
- Full integration in the reliable ABAP development environment.
Structure
In Web Dynpro, each user interface is always made up of the same basic elements (such as UI elements or events triggered by the user). These basic elements are declared using Web Dynpro tools. The event handling is programmed in separate source code areas which are executed automatically at runtime when the event is triggered.
Advantages:
- Reduces implementation effort.
- Separation of layout and business data.
- Reusability of components.
- Automatic data transfer using context binding.
- Support stateful applications. i.e. Even when the pages change the data in the previous page still remains.
Webdynpro Architecture:
- Clear separation of business and display logic.
- Metamodel Concept.
- Execution on number of client platforms.
- Extensive Platform Independence of interface
Metamodel Concept
When creating a Web Dynpro application, you use the Web Dynpro tools to describe the properties and functions of the application. The data created in this way is stored in tables as metadata. At a later time, the necessary source code, which is executed at runtime, is created from this metadata. Therefore, the metadata itself is independent of the rendering technique used at runtime.
Graphical Development Tools
To support this declarative concept, the SAP NetWeaver Developer Studio contains a range of Web Dynpro tools. You can therefore generate a large proportion of a Web Dynpro application using the tools provided, without having to create your own source code. This applies to the following parts of the application:
The Web Dynpro tools enable you to create source text areas manually within generated source texts. These areas are not changed if the source code is regenerated.
Separation of Business Logic and Display Logic
Implementing Web Dynpro enables you to clearly separate business logic and display logic. A Web Dynpro application runs on the front end and has local or remote access to the back end system via a service. This means that the display logic is contained in the Web Dynpro application, while the business logic and the persistence of the business objects run in the back end system. The following options are currently available for connecting Web Dynpro applications and the back end system:
Implementation of the Model View Controller Paradigm
Every Web Dynpro application is structured according to the Model View Controller paradigm:
When creating a Web Dynpro application, you use the Web Dynpro tools to describe the properties and functions of the application. The data created in this way is stored in tables as metadata. At a later time, the necessary source code, which is executed at runtime, is created from this metadata. Therefore, the metadata itself is independent of the rendering technique used at runtime.
To support this declarative concept, the SAP NetWeaver Developer Studio contains a range of Web Dynpro tools. You can therefore generate a large proportion of a Web Dynpro application using the tools provided, without having to create your own source code. This applies to the following parts of the application:
- Data flow between the front end and back end
- Layout of the user interface
- Properties of user interface elements
The Web Dynpro tools enable you to create source text areas manually within generated source texts. These areas are not changed if the source code is regenerated.
Separation of Business Logic and Display Logic
Implementing Web Dynpro enables you to clearly separate business logic and display logic. A Web Dynpro application runs on the front end and has local or remote access to the back end system via a service. This means that the display logic is contained in the Web Dynpro application, while the business logic and the persistence of the business objects run in the back end system. The following options are currently available for connecting Web Dynpro applications and the back end system:
- An interface generated using adaptive RFC, through which BAPIs of an SAP system can be called
- An interface for calling Web services
- A self-generated interface
Implementation of the Model View Controller Paradigm
Every Web Dynpro application is structured according to the Model View Controller paradigm:
- The model forms the interface to the back end system and thus enables the Web Dynpro application access to data.
- The view is responsible for the representation of the data in the browser.
- The controller lies between the view and the model. The controller formats the model data to be displayed in the view, processes the user entries made by the user, and returns them to the model.
No comments:
Post a Comment
Note: only a member of this blog may post a comment.