Web Dynpro For Beginners: Based On Sap Web Application Server Java 6.40, Sp9
WEB Dynpro for BEGINNERS BASED ON sap WEB APPLI CATI ON SERVER J AVA 6., SP9 Ex er c I ses / Sol ut I ons in this exercise you will learn to create your first Web Dynpro application.
Web Dynpro For Beginners: Based On Sap Web Application Server Java 6.40, Sp9
WEB Dynpro for BEGINNERS BASED ON sap WEB APPLI CATI ON SERVER J AVA 6., SP9 Ex er c I ses / Sol ut I ons in this exercise you will learn to create your first Web Dynpro application.
BASED ON SAP WEB APPLI CATI ON SERVER J AVA 6.40 , SP9
Ex er c i ses / Sol ut i ons
WEB DYNPRO PRODUCT MANAGEMENT
1 1. EXERCI SE: CREATE YOUR FI RST WEB DYNPRO APPLI CATI ON
1.1 OBJ ECTI VE
In this exercise you will learn to create your first Web Dynpro application. By the end of the tutorial, you will be able to: Create a project for a Web Dynpro application and its associated development objects Create views and define a navigation scheme for the application Create actions for the views and implement simple event handlers Design a simple view layout Define data binding for UI elements using context attributes Deploy and run a Web Dynpro application
Figure 1: StartView Figure 2: ResultView
WEB DYNPRO PRODUCT MANAGEMENT 2 1.2 TASK
1.2.1 Create a Web Dynpro project - Create a Web Dynpro project called Welcome.
1.2.2 Create a Web Dynpro component - Create a Web Dynpro component called WelcomeComponent in the package sap.com.exercise.welcome. - Create an embedded view called StartView.
1.2.3 Create a second views - Create a second view called ResultView. - Use the package com.sap.exercise.welcome.
1.2.4 Define navigation scheme - Create an outbound plug called ToResultView for the StartView. - Create an inbound plug called FromResultView for the StartView. - Create an outbound plug called ToStartView for the ResultView. - Create an inbound plug called FromStartView for the ResultView. - Create a data link between the ToResultView plug and the FromStartView plug. - Create a data link between the ToStartView plug and the FromResultView plug.
1.2.5 Create actions and implement navigation - For the StartView create an action called Go with the fire plug ToResultView. - For the ResultView create an action called Back with the fire plug ToStartView.
1.2.6 Design the StartView layout - Create a label called label. - Create an input field called name. - Create a button called go. - Change the value of the onAction property to Go.
1.2.7 Design the ResultView layout - Create a text view called message. - Create a button called back. - Change the value of the onAction property to Back.
WEB DYNPRO PRODUCT MANAGEMENT 3 1.2.8 Define data binding for UI elements - Add a value attribute called Username to the context of the component controller. - Add the controller called WelcomeComponent sap.com.exercise.welcome to the required controller in the properties of the StartView. - Add the controller called WelcomeComponent sap.com.exercise.welcome to the required controller in the properties of the ResultView. - Add a value attribute called Name to the context of the StartView and map it to the Username. - Add a value attribute called HeaderText to the context of the ResultView. - Add the following implementation to the method OnPlugFromStartView of the ResultView. String headerText = "Congratulations "; headerText += wdThis.wdGetWelcomeComponentController().wdGetContext().currentContextElement().getUsername(); headerText += "!"; wdContext.currentContextElement().setHeaderText(headerText);
1.2.9 Create a Web Dynpro application - Create a Web Dynpro application called WelcomeApplication in the package com.sap.exercise.welcome.
1.2.10 Deploy and run - Deploy the new archive and run the project. - The password for TechEd in Munich is sapsap. - The password for TechEd in San Diego is admin.
WEB DYNPRO PRODUCT MANAGEMENT 4 1.3 SOLUTI ON
1.3.1 Create a project
Choose File New Project. The New Project wizard appears (Figure 3). Select the Web Dynpro category (in the left pane), followed by Web Dynpro Project (in the right pane). Choose Next.
Figure 3: New project wizard
WEB DYNPRO PRODUCT MANAGEMENT 5 Call the project Welcome and leave the default settings for Project Contents and Project language unchanged. Choose Finish.
Figure 4: Project properties
The wizard generates an initial structure for your new Web Dynpro project and automatically opens the Web Dynpro perspective. Choose the Web Dynpro Explorer tab.
As the result the Web Dynpro perspective displays the structure in the Web Dynpro Explorer. From now on, the Web Dynpro Explorer is your main starting point for all further development activities (Figure 5).
Figure 5: Web Dynpro Explorer
WEB DYNPRO PRODUCT MANAGEMENT 6 1.3.2 Create a Web Dynpro component
Expand the Web Dynpro node and open the context menu for Web Dynpro Components. To open the wizard, choose Create Web Dynpro Component (Figure 6).
Figure 6: Create Web Dynpro Component
Enter the component name WelcomeComponent and the package name com.sap.exercise.welcome for the Java classes that will be generated. Enter StartView for the view name and choose Finish (Figure 7).
Figure 7: New Web Dynpro Component
The wizard performs several generation routines. Once it has finished it automatically opens the Data Modeler view (in the right pane) and inserts an additional substructure for the new Web Dynpro component WelcomeComponent in the Web Dynpro Explorer (Figure 8).
WEB DYNPRO PRODUCT MANAGEMENT 7 Expand the node Web DynproComponents WelcomeComponent Windows (Figure 8).
Figure 8: Web Dynpro Explorer
1.3.3 Create a second view
Double-click the window node WelcomeComponent to start the Diagram View of the standard window (Figure 9).
Figure 9: Diagram view
WEB DYNPRO PRODUCT MANAGEMENT 8 Choose the icon for Embed View from the palette (on the left of the screen). Position the cursor within the diagram pane and drag a rectangle area to the required size. In the wizard that appears, select the Embed new View option and choose Next. Enter the view name ResultView and choose Finish (Figure 10).
Figure 10: Create a new view
The diagram pane displays two areas representing the two views. In this case the first view you created (StartView) is displayed as the active view. When the Web Dynpro application is launched the active view is always accessed.
Figure 11: The created views
WEB DYNPRO PRODUCT MANAGEMENT 9
1.3.4 Define navigation scheme
To define the navigation between the views you need to create exit and entry points for each view using outbound and inbound plugs. Only then can you specify the navigation flow using navigation links.
The following procedure is split into two parts. First you create the outbound and inbound plugs or both views. Then you connect them using navigation links.
Select the rectangle for the StartView and open the context menu (Figure 12). Choose Create Outbound Plug.
Figure 12: Context menu of the StartView
The appropriate wizard appears. Enter the outbound plug name ToResultView and choose Finish. Next open the context menu for the StartView again and choose Create Inbound Plug. Enter the inbound plug name FromResultView and choose Finish. Then create an outbound plug named ToStartView and an inbound plug called FromStartView for the ResultView. The figure below shows the two views and its appropriate plugs.
Figure 13: Views with the created plugs
WEB DYNPRO PRODUCT MANAGEMENT 10 To create a link for navigating from the first view to the second, select the icon Create Link from the palette (on the left of the diagram view) and draw the line from the outbound plug of the StartView to the inbound plug of the ResultView. Create the navigation link back from the second view to the first view in the same way (Figure 13).
Figure 14: Views connected with navigation links
Now you have defined the navigation scheme between the two views in the Web Dynpro application. An event handler with the name onPlug<Name of Plug> has been automatically generated for each inbound plug.
1.3.5 Create actions and implement navigation
To navigate from one view to the next, you need an appropriate action, which you bind to a UI element (auch as a button). You then need to implement the event handler, which reacts to this action and triggers a view change.
To launch the View Designer, double-click the StartView node in the project structure or in the Data Modeler view. Choose the Actions tab. Choose the New pushbutton (Figure 15).
Figure 15: Actions of the StartView
WEB DYNPRO PRODUCT MANAGEMENT 11 You can create a new action in the wizard that appears. Enter the name Go for this new action, leave the Event handler option unchanged. Assign the plug ToResultView as a fire plug and choose Finish.
Figure 16: New Action
The new action, Go, and its associated event handler onActionGo are displayed in the list of actions.
Figure 17: New action of the StartView
Repeat the above steps as appropriate to create the Back action for the ResultView, this time assigning the plug ToStartView as a Fire plug. Save the new metadata by choosing the icon (Save All Metadata) from the toolbar.
You have created the Go and Back actions. The implementation of the navigation was automatically inserted in the associated event handlers.
WEB DYNPRO PRODUCT MANAGEMENT 12
To check the generated source code for the event handler onActionGo(), choose the Implementation tab for the StartView. The method contains the single line wdThis.wdFirePlug<Name_of_Outbound_Plug>().
Figure 18: OnActionGo implementation
To trigger the navigation from the StartView to the ResultView using the outbound plug ToResultView, the application calls the outbound plug method wdFirePlugToResultView(). The predefined private variable wdThis is used for this method call. The wdThis variable is always required whenever you need to make method calls to the view controller.
To check the generated source code for the event handler onActionBack(), choose the Implementation tab for the ResultView.
Figure 19: OnActionBack implementation
Once you have assigned these actions to the appropriate buttons in the view layout you will have completed the navigation part of your Welcome application.
WEB DYNPRO PRODUCT MANAGEMENT 13 1.3.6 Design the StartView layout
The Layout tab in the View Designer shows the StartView with a predefined default text. Simultaneously, the Outline view displays a list of the UI elements included. All the UI elements are arranged under a root node and are represented in order in the tree in the layout. If you select an element in the Outline view or on the Layout tab, its associated element properties are shown in the Properties view provided you have previously selected the Properties tab that is at the bottom of your screen (Figure 20).
Figure 20: Outline and properties of the StartView
Choose the root element RootUIElementContainer in the Outline view and give it the following properties:
Property Value layout GridLayout cellPadding 5 colCount 3
Choose the DefaultTextView that has been generated and give it the following properties:
Property Value design header2 text Welcome to your first Web Dynpro application! colSpan 3
In the Outline view, select the root element RootUIElementContainer and choose Insert Child from the context menu. Enter the Id label, choose the type Label. Then choose Finish. Create two more UI elements: - an InputField with the Id name - a Button with the Id go. Assign the following property values to these new elements:
Property Value For the label label text Enter your name here labelFor name paddingTop large
WEB DYNPRO PRODUCT MANAGEMENT 14 Property Value For the input field name tooltip Your name value <Leave this property blank. You will enter the value in the next step>
Property Value For the button go text Go tooltip Go to the next view Event > onAction Go
The View Designer displays the following layout for the StartView:
Figure 21: Layout of the StartView
1.3.7 Design the ResultView layout
Now open the ResultView in the View Designer. Choose the root element RootUIElementContainer in the Outline view and give it the following properties:
Property Value layout GridLayout cellPadding 5 colCount 2
Choose the DefaultTextView that has been generated and give it the following properties:
Property Value design header2 text <Delete the generated default value and leave this property blank. You will find out how to generate this value dynamically and will assign the value retrospectively in the next step> colSpan 2
WEB DYNPRO PRODUCT MANAGEMENT 15 In the Outline view, select the root element RootUIElementContainer and choose Insert Child from the context menu. Enter the name message, choose the type TextView. Then choose Finish. Create a button with the name back. Assign the following property values:
Property Value For the TextView message text Your application is running successfully. paddingTop large
Property Value For the button back text Back tooltip Go back to the first view Event > onAction Back
The View Designer displays the following layout for the ResultView:
Figure 22: Layout of the ResultView
Save the new metadata.
You have now developed the basic parts of your application. Now you need to make sure that the value from the input field in the StartView is used when the welcome text is generated dynamically in the ResultView. However, you do not need to implement a data transport explicitly. The Web Dynpro concept allows you to implement this in a user-friendly way, using data binding to a context.
WEB DYNPRO PRODUCT MANAGEMENT 16 1.2.8 Define data binding for UI-elements
The following procedure is split into several parts. You start by creating a global data storage space using the component context. You create the necessary view contexts. Then you map elements of the view context to elements of the component context that you have created. Finally you ensure that the view context elements are bound to suitable UI elements using the properties.
Double-click the Component Controller node. In the editor that appears, choose the Context tab. Open the context menu for the root node Context and choose the option New Value Attribute (Figure 23).
Figure 23: Context menu of the component context
You can create a new attribute value in the wizard that appears. Enter the name Username and choose Finish. The attribute node is added to the root node of the context (Figure 24).
Figure 24: Context of the WelcomeComponent
You will use the context definition for the Web Dynpro component later, to implement a data transfer beyond the local view context.
Open the View Designer for the StartView. Choose the Properties tab. Under Required Controllers, choose Add. In the list that appears, choose the component WelcomeComponent com.sap.test.welcome and confirm by choosing OK.
Figure 25: Select controller
Repeat the last steps as appropriate for the ResultView. You have now entered the appropriate dependency for each view in your Welcome project.
WEB DYNPRO PRODUCT MANAGEMENT 17 In the next steps you will create a context for the two views StartView and ResultView. Open the View Designer for the StartView again. Choose the Context tab. Open the context menu for the root node Context and choose New Value Attribute. Enter the attribute name Name and choose Finish. From the context menu for the attribute Name that you have created, choose Edit Context Mapping. From the component context, choose the element Username. Then choose Finish. The context attribute will be marked appropriately (Figure 26).
Figure 26: The context of the StartView
Repeat the last steps as appropriate for the ResultView and again create a context attribute, named HeaderText. In this case, however, do not map to the context.
Figure 27: The context of the ResultView
WEB DYNPRO PRODUCT MANAGEMENT 18 1.2.8 Define data binding for UI-elements
Open the View Designer for the StartView again. Choose the Layout tab. Select the input field name. In the Properties window, assign the value property to the appropriate context attribute by choosing the Value properties and then clicking (on the right). In the dialog box that appears, choose the context attribute Name and confirm by choosing OK. The result is shown in Figure 28.
Figure 28: Properties of the input field of the StartView
Do the same for the ResultView, this time assigning the appropriate context element, HeaderText, to the text property for the DefaultTextView. The View Designer displays the following layout for the ResultView:
Figure 29: Layout of the ResultView
You have now created a data binding between UI elements and the corresponding context value attributes.
WEB DYNPRO PRODUCT MANAGEMENT 19 Next you create a line of text dynamically using data binding.
Open the View Designer for the ResultView again. Choose the Implementation tab. Add the following lines to the event handler method onPlugFromStartView():
The event handler for the inbound plug, onPlugFromStartView(), is called when the program enters the ResultView. You use this method to generate a text content dynamically. The dynamic value is saved across local view contexts, and made available by means of the associated context element.
Save the new metadata.
Now you have specified that a data transport can take place between UI elements that belong to different views.
1.2.9 Create a Web Dynpro application
Before you compile your complete project and then deploy it to the J2EE Engine, you first need an object that can be identified as an starting point inside your project. This is why you create a Web Dynpro application.
To open the relevant wizard, choose Create Application from the context menu of the Applications node. Enter the application name WelcomeApplication and call the package com.sap.exercise.welcome. Then choose Next. In the next dialog window, choose the default setting Use existing component and choose Next.
Figure 30: New Application
In the next dialog box, assign the default values for all three dropdown fields and choose Finish. Now the application is created.
WEB DYNPRO PRODUCT MANAGEMENT 20 1.2.10 Deploy and run
You have now reached the last stage in this tutorial. However, some preparations are essential, before you can deploy and run the application successfully.
If you have not already done so, save the metadata for your welcome project in their current state.
In the Web Dnypro Explorer open the context menu for the application object WelcomeApplication. Choose Deploy New Archive and Run.
The project is generated and after that you have to enter a password (Figure 31).
The password for TechEd in San Diego is admin.
The password for TechEd in Munich is sapsap.
Figure 31: Logon to SDM
The Developer Studio launches the Web browser and shows the active view StartView.
Figure 32: StartView
WEB DYNPRO PRODUCT MANAGEMENT 21 Test your Web application by entering a name and then triggering navigation using the Go button.
Figure 33: ResultView
WEB DYNPRO PRODUCT MANAGEMENT 22 2. EXERCI SE: CREATE AN EMAI L WEB DYNPRO APPLI CATI ON
2.1 OBJ ECTI VES
In this exercise you learn how to create an e-mail Web Dynpro application using a Web service. After this exercise you are able to create a model, which uses a Web service and you are able to use the Web service methods in a view preferred with a button. The application should show an e-mail with which you can send an e-mail to anyone you want to.
Figure 34: E-mail application
WEB DYNPRO PRODUCT MANAGEMENT 23 2.2 TASK
2.2.1 Create a project and a Web Dynpro component - Create a Web Dynpro project called EMail. - Create a Web Dynpro component called EmailComponent in the package com.sap.exercise.email. - Change the predefined view name to EMailView.
2.2.2 Create a model with the Web service - Create a model called EMailModel. - Use the Web service IEMailService.xml, which you can copy from the share (the speakers explain ho to do that). - The package is com.sap.exercise.email.model. - After creating the model add it to the used models.
2.2.3 Model binding - Apply the service controller template to the component controller using the Web service (= model binding).
2.2.4 Create a data link - Switch to the Diagram View. - Create a data link between the EMailView and the component controller.
2.2.5 Apply the form template to the EMailView - Apply the form template to the EMailView. - Change the names of the attributes and change the message body to a text edit field. - After creating the form of the EMailView change the message label in a label where vAlign is top. - Change the rows of the message body to 15.
2.2.6 Apply the action button template to the EMailView - Apply the action button template to the EMailView using the Web service method you created. - Change the button label to Send email.
2.2.7 Create an application - Create an application called EMailApplication in the package com.sap.exercise.email.
2.2.8 Deploy and Run - Deploy the new archive and run the project.
WEB DYNPRO PRODUCT MANAGEMENT 24 2.3 SOLUTI ON
2.3.1 Create a project and a Web Dynpro component
Choose File New Project. Call the project EMail and press Finish. Now the project is created.
Next create a Web Dynpro component called EMailComponent in the package com.sap.exercise.email. Then change the predefined view name to EMailView. Then press Finish. The component is now created.
2.3.2 Create a model with the Web service
Click Models with the alternate mouse button and choose New Model as shown in Figure 35.
Figure 35: Web Dynpro Explorer
WEB DYNPRO PRODUCT MANAGEMENT 25 Select Import Web Service Model and choose Next. Then enter the model name EMailModel and the package name com.sap.exercise.email.model. Select Local File System or URL as the WSDL Source and choose Next (Figure 36).
Figure 36: New Model
Enter the path, where your xml-file is located, choose Next and then Finish. Now the new model is created.
Then you have to insert the created model into the Used Models: Click Used Models with the alternate mouse button and choose Add. Select EMailModel and choose OK (Figure 37). Now the EMailModel is also a used model.
Figure 37: Select models
WEB DYNPRO PRODUCT MANAGEMENT 26 2.3.3 Model binding
Click Component Controller using the alternate mouse button and choose Apply Template (Figure 38).
Figure 38: Apply template
Select the service controller and choose Next. Then choose Request_IEmailService_sendMail and then Next (Figure 39).
Figure 39: Template Wizard
WEB DYNPRO PRODUCT MANAGEMENT 27 Select all the context elements and choose Next (Figure 40).
Figure 40: Model binding
The figure below shows that the template automatically creates a method for sending an e-mail.
Figure 41: Model execution
Then choose Finish. Now the service controller and the data link between EMailModel and the component controller is created. Save all metadata and continue.
WEB DYNPRO PRODUCT MANAGEMENT 28 2.3.4 Create a data link
Switch to the diagram view and create a data link between the EMailView and the component controller (Figure 42).
Figure 42: Diagram view
Copy the context from the component controller into the context of the EMailView so that you get the picture below. Choose Finish.
Figure 43: Context mapping
WEB DYNPRO PRODUCT MANAGEMENT 29 2.3.5 Apply the form template to the EMailView
Click the EMailView using the alternate mouse button and choose Apply template. Choose Form and then Next. Then choose fromAddress, toAddress, msgBody and aSubject and choose Next. Change the elements in such a way that the picture below appears (Figure 44): change the attribute names and the editor of the message body.
Figure 44: Form View
Change the text value of the default text view of EMailView to e-mail. Then change the rows value of the message text edit of the EMailView to 15. Change the value of vAlign of the message label of the EMailView to top. Now the form of EMailView is created.
WEB DYNPRO PRODUCT MANAGEMENT 30 2.3.6 Apply the action button template to the EMailView
Click EMailView using the alternate mouse button and choose Apply template. Choose ActionButton and then Next. Then change the button label in Send email and choose Next.
The Figure below appears. Select Call Method. The controller is EMailComponent and the method is executeRequest_IEMailService_SendMail Choose Finish.
Figure 45: Button properties
Now the send button is created.
2.3.7 Create an application
Create an application by clicking Applications using the alternate mouse button. Call it EMailApplication. Use the package com.sap.exercise.email.
WEB DYNPRO PRODUCT MANAGEMENT 31 2.3.8 Deploy and Run
Save all metadata and then click EMailApplication with the alternate mouse button and choose Deploy New Archive and Run.
The application is displayed as in the following Figure:
Figure 46: E-mail application
WEB DYNPRO PRODUCT MANAGEMENT 32 3. EXERCI SE: EMBED WEB DYNPRO APPLI CATI ONS I NSI DE THE PORTAL
3.1 OBJ ECTI VE
In this exercise you will learn to embed a Web Dynpro Application from the previous exercise. By the end of the tutorial, you will be able to: Create iViews in the Portal Content Directory Create pages for embedding iViews Create roles for embedding pages Add the role to you user
3.1.2 Create an iView Log on to the local installed portal with http://localhost:50000/irj The username is: PRTL151 password is: PRTL151. Please create now under the folder TechEd->PRTL151 an iView using the popup Menu New->iView.
WEB DYNPRO PRODUCT MANAGEMENT 33 After selecting the item iView the iView Wizard will be started. Select the SAP Web Dynpro iView for this purpose. After that choose Next to come to the second step. In this step you have to define a name (Welcome) and an ID (Welcome).
After choosing Next you come to the third step in which you have to choose Java. In step four you have to enter the System (SAP_LocalSytem), the Web Dynpro Namespace (local/Welcome) and the Application Name (WelcomeApp). The Web Dynpro Namespace defines the name of the project you had created in the SAP NetWeaver Developer Studio with a preceding local/ because this is a local project without using the Java Development Infrastructure.
WEB DYNPRO PRODUCT MANAGEMENT 34 After choosing Next and then Finish your iView is ready for use.
3.1.3 Create Page To use this iView inside the portal you have to create a page which has then to embed the iView. Therefore you have to create a page using the alternate mouse button in the Portal Content Directory in your folder TechEd- >PRTL151.
Now you can directly move to the second step with choosing Next. In the second step you have to define the Name (Welcome Page) and the ID (WelcomePage).
In the third step of this wizard please select the 1 Column Layout and bring this to the right table using the add Button.
WEB DYNPRO PRODUCT MANAGEMENT 35
After finishing this wizard please take care that the page is reopened that you can add the Delta Link of the iView to this page.
3.1.4 Create Role
Now you have to create a role to add this page to the role.
After finishing this wizard you have to reopen the created role to add the page with a delta link to this role.
WEB DYNPRO PRODUCT MANAGEMENT 36
Now you have to change the property Entry Point from false to true to see this role in the role navigation after the this role is added to your user.
The last step is to add the user (PRTL151) to the role WelcomeRole. Therefore you have to log off and log in with the User Administrator and the password admin. Because of the distributed Administration concept the user PRTL151 has no rights to change roles. After logging in as Administrator please navigate to the User Administration->Roles and search for the new role WelcomeRole.
WEB DYNPRO PRODUCT MANAGEMENT 37 After selecting the link Edit the next screen appears on which you have to search for the User PRTL151. Please select the user PRTL151and choose the add to add the user to the role.
Please choose now Save and log off from the user Administrator. You can now log in again as user PRTL151 (password:PRTL151) and you will see your Web Dynpro Application inside your portal.
WEB DYNPRO PRODUCT MANAGEMENT 38
Copyr i ght 2004 SAP AG. Al l Ri ght s Reser ved
No part of this publication may be reproduced or transmitted in any form or for any purpose without the express permission of SAP AG. The information contained herein may be changed without prior notice. Some software products marketed by SAP AG and its distributors contain proprietary software components of other software vendors. Microsoft, Windows, Outlook, and PowerPoint are registered trademarks of Microsoft Corporation. IBM, DB2, DB2 Universal Database, OS/2, Parallel Sysplex, MVS/ESA, AIX, S/390, AS/400, OS/390, OS/400, iSeries, pSeries, xSeries, zSeries, z/OS, AFP, Intelligent Miner, WebSphere, Netfinity, Tivoli, and Informix are trademarks or registered trademarks of IBM Corporation in the United States and/or other countries. Oracle is a registered trademark of Oracle Corporation. UNIX, X/Open, OSF/1, and Motif are registered trademarks of the Open Group. Citrix, ICA, Program Neighborhood, MetaFrame, WinFrame, VideoFrame, and MultiWin are trademarks or registered trademarks of Citrix Systems, Inc. HTML, XML, XHTML and W3C are trademarks or registered trademarks of W3C, World Wide Web Consortium, Massachusetts Institute of Technology. Java is a registered trademark of Sun Microsystems, Inc. JavaScript is a registered trademark of Sun Microsystems, Inc., used under license for technology invented and implemented by Netscape. MaxDB is a trademark of MySQL AB, Sweden. SAP, R/3, mySAP, mySAP.com, xApps, xApp, SAP NetWeaver and other SAP products and services mentioned herein as well as their respective logos are trademarks or registered trademarks of SAP AG in Germany and in several other countries all over the world. All other product and service names mentioned are the trademarks of their respective companies. Data contained in this document serves informational purposes only. National product specifications may vary. These materials are subject to change without notice. These materials are provided by SAP AG and its affiliated companies ("SAP Group") for informational purposes only, without representation or warranty of any kind, and SAP Group shall not be liable for errors or omissions with respect to the materials. The only warranties for SAP Group products and services are those that are set forth in the express warranty statements accompanying such products and services, if any. Nothing herein should be construed as constituting an additional warranty.
SAP assumes no responsibility for errors or omissions in these materials.