Thursday, April 25, 2013

SAP WEBDYNPRO


WebDynpro is a great modeling environment whitch stores the user-interface details in the form of metadata. We can write less code and fix bugs in a shorter time with lesser effort. It increases a programmer’s productivity by manifolds.
Webdynpro is nothing but one framework for developement of user interface for use with SAP NetWeaver.It support programming for different platform such as JAVA ,ABAP,.NET .
In case of JAVA webdynpro comes with extensive design tool .Thease tools are based upon Eclipse framework ans SAP’s NWDS

Technical Definition : WebDynpro is a client-independent programming model used for developing sophisticated user interfaces for web based business applications.
History: The name WebDynpro , Dynpro means Dynamic Program it is SAP’s Legacy technology for interactive UI’s.It is to Combine High Interactivity (dynamic GUI) and Zero Installation.
What are the naming conventions to be followed while developing Web Dynpro applications?
Web Dynpro context names should use only the characters A..Z, a..z, 0..9, _ . Digits can be used only from 2nd position. The JAVA naming conventions can be followed but avoid using unicode characters to keep the names simple. However one should avoid using the prefixes wd, WD or IWD since these are the prefixes used during generation of internal coding entities.
Basic Concepts
1. View – is the central logical layout element in the Web Dynpro application.It is responsible for the presentation logic and for the browser layout.
Description of a visible screen area
Contains and lays out controls (aka widgets)
Defines actions (i.e. relevant input on controls by the user), which trigger event handling
2. Controller – active part of web dynpro application,handles the data flow between the model and the view in both directions
Performs event handling
Each component has a component controller
Each view has a view controller
Custom controllers may be added for further structuring
3. Model – is the interface to the back end systm and is responsible for providing data to the entire application.
Represents the data in the backend
4. Component
Reusable UI program package
Mostly contains views, often uses models
Communicates with other components via component interfaces
5. Application
Something runnable (from client application, i.e. web browser)
Identified by URL
Running an application means starting a component, navigating” to an initial view in an initial window.
6. Windows
Single UI unit representing a component’s user Interface/View Composition needed for embedding purposes.
7. Context
A controller contains a context which holds the data. The data flow between the contexts is referred to as context mapping..


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

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.

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.
This graphic is explained in the accompanying text

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:
·        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
The source code required for connecting the Web Dynpro application can be generated from a UML definition of the Web Dynpro interface. A UML definition can be imported into the Web Dynpro tools as an XML file.

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.

The creation of applications using Web Dynpro is structured in Web Dynpro components. The following sections provide a detailed description of the most important parts of a Web Dynpro component.


Prerequisites 
SAP NetWeaver Application Server 7.0 for Java is required to use these resources. In most cases, it is sufficient that you have installed Sneak Preview SAP NetWeaver Edition from SDN.

Disclaimer 

SAP code or applications samples and tutorials are NOT FOR PRODUCTION USE. You may not demonstrate, test, examine, evaluate or otherwise use them in a live operating environment or with data that has not been sufficiently backed up. You may not rent, lease, lend, or resell SAP code or application samples and tutorials.

  • Basic & General 
  • Componentization 
  • Backend Access - Model 
  • Designing User Interfaces 
  • SAP Interactive Forms by Adobe 
  • Specials


Basic & General

Creating a Hello World in Web Dynpro Java
This tutorial is a version of the popular “Hello World” program. You will write a very simple Web Dynpro application that places the text “Welcome to Web Dynpro” on the user’s browser.

Creating Your First Web Dynpro Application
 
This tutorial is more than a Hello World, it demonstrates some basic concepts. It gives you a starting point for handling navigation, mapping contexts and binding data.
The ready-to-use project is available here.

Componentization

Talking about componentization in the Web Dynpro environment, this term can stand for have two different things:
On the one hand developing in a team with Web Dynpro Development Components in the NWDI, on the other hand structuring your Web Dynpro project using Web Dynpro Components inside.

Component-based Development from Database Table to Web Dynpro using NWDI   
This tutorial shows how to create a complete application based on database persistence, EJB, Web service and Web Dynpro Java. You will define different types of Development Components (DC) in the SAP NetWeaver Development Infratructure (NWDI) such as Dictionary project, Library project or EJB module project. Finally you will use the Adaptive Web Service Model in a Web Dynpro Java DC to build the user interface.

Web Dynpro Componentization   
This tutorial provides a set of local Web Dynpro DCs illustrates how to design component-based Web Dynpro applications using separate Web Dynpro DCs. In a simple application we demonstrate how to embed the visual interface of a Web Dynpro component into a parent component within one single Web Dynpro DC. Another advanced application demonstrates how to apply the model-view-controller (MVC) paradigm on a DC level for logically structuring large-scale Web Dynpro applications. One root component embeds two separate user interface components, both of which use a single model component in referencing mode. The lifecycle of the UI and the model components are managed by the root component. This scenario is based on three separate Web Dynpro DCs.
The ready-to-use Web Dynpro Development Components can be downloaded here.

Note: This Readme describes how to import the local Web Dynpro DCs into the SAP NetWeaver Developer Studio.

Use components in bigger Web Dynpro projects (Wiki)
This section wants to give you some hints on how to migrate from a "one-component-only" application to an application that uses components.

Backend Access - Model

Accessing ABAP Functions using the Adaptive RFC Model  
This example demonstrates how to create, implement, deploy and run a basic Web Dynpro application that accesses persistent data from a remote SAP backend system. To read the business data, the application makes use of existing functions in the form of readable BAPIs. The Web Dynpro framework generates for each BAPI that is needed a corresponding Java proxy class. All generated classes define an adaptive RFC model and are treated as part of the Web Dynpro project.

Designing User Interfaces

Designing User Interfaces with Web Dynpro  
This tutorial helps you get familar with the different layout options you have to structure UI elements on a view. It explains some standards & guidelines.
The ready-to-use project is available here.

Working with Tables  
This tutorial explains the basic functions of the Table UI element, e. g. creating the necessary UI elements, binding the data and mapping the context. Additionally it provides some additional features like sorting, displaying details in a form, calculating the totals and deleting rows.

Creating Trees   
This Web Dynpro tutorial teaches you how to construct a recursive and loadable tree in Web Dynpro. It can also be used to understand how to implement a tree structure inside a table using the TreeByNestingTable UI element.

Uploading and Downloading Files  
In this tutorial you learn how to download and upload files within Web Dynpro applications running on SAP NetWeaver 7.0 (2004s) by utilizing the new dictionary type Resource and its related Web Dynpro APIs IWDResource and WDResourceFactory. In contrast to the dynamic type modification of a binary context attribute in SAP NetWeaver 04, the new dictionary simple type Resource yields a fully declarative, zero coding data transport of download and upload resources between Web Dynpro client and controller context on server side.
The ready-to-use project is available here.
Additionally there is an initial project (starting point) here.

How to Use Web Dynpro Popup Menus   
You learn how to add a popup menu to a Tray UI element, how to declare menu item events and how to disable or enable menu action items by programmatically disabling or enabling the associated action objects within action event handlers.
The ready-to-use Web Dynpro DCs are available here.

Note: This Readme describes how to import the local Web Dynpro DCs into the SAP NetWeaver Developer Studio.

Using Gantt/Network UI Element (Wiki) 
To run a JNet or a JGantt in a Web Dynpro for Java application, you have to follow the steps described below. This example does not describe how to build the xml file for a Gantt or for a Network, it focuses on the Web Dynpro part. This example explains how to bind a Gantt UI element and its data source to the context. This works exactly the same way for the Network UI element.

SAP Interactive Forms by Adobe

eLearning Series  
The 11-part series on SAP Interactive Forms by Adobe, produced by the SAP NetWeaver RIG team, provides an overview of forms technology, its integration points with SAP NetWeaver Application Server, technical components and architecture, use cases, how to design and run a form, and much more.
Relevant parts for Web Dynpro Java are:


Specials

Exporting Table Data Using On-Demand Streams (Wiki)
How to download data from a table using the on-demand resource streaming technique in NetWeaver 7.0 combined with a ToolBarLinkToURL-UI-Element to open the Excel resource instantly. This technique does not require opening a Web Dynpro popup window with a LinkToURL-UI-element pointing to a cached Excel resource. This sample application is implemented in two separate components: a reusable service component for Excel export and a client component displaying table data.

Developing an International Web Dynpro Application  
In this tutorial, the task is to develop an international Web Dynpro application that is available in English and German. As an example, we will use a car rental application that displays different texts, depending on the booking. You will also learn to use Simple Types and Message Pool.


3 comments:

  1. Thanks for this I am also interested in Joining SAP training.
    But as i am working these days so it won't be possible for me for going to training institutes.
    I think online tutorials will work for me. Came across this http://www.wiziq.com/course/8153-sap-web-dynpro-pro-abap-training
    hope they also work for me.

    ReplyDelete
  2. Hey sukaniya mishra,
    Thanks a lot for the information you are providing on SAP Webdynpro and the topics that are covered up are very helpful. I took SAP Webdynpro ABAP Training from http://www.wiziq.com/course/8153-sap-web-dynpro-pro-abap-training which turned out to be a good one and i have decided to take another course from the same site.

    ReplyDelete
  3. Hai if u want to learn any sap modules..
    RS Trainings is the best WebDynpro online training provider from Hyderabad, India. Our WebDynpro Online Training faculty is very much experianced and dedicated. Our WebDynpro online training faculty is realtime and faculty is working for MNC's. Our WebDynpro Online Training Course content designed as job oriented and as per the IT industry requirement.
    Skypeid: rsonlinehyd
    Please contact us India:+91 9052699906,USA :+1 909-666-5386
    Email:contact@rstrainings.com

    ReplyDelete