Web Dynpro

Bei Web Dynpro handelt es sich um eine SAP-Technologie, die Nutzer bei der Entwicklung von webbasierten Anwendungen unterstützt, die mit SAP-Systemen kommunizieren können. Es wird zwischen 2 Versionen von Web Dynpro unterschieden: Einer Java- und einer ABAP-Version.

E-Book: ABAP Entwicklungsrichtlinien

Richtlinien zur Programmierung und Praxistipps zum Thema APAP-Entwicklung.

Programmierung

Die Entwicklung mit Web Dynpro basiert auf dem MVC-Entwurfsmuster (Model-View-Controller-Entwurfsmuster). Dabei wird die zu entwickelnde Software in 3 Komponenten eingeteilt: dem Datenmodell (Model), der Präsentation (View) und der Programmsteuerung (Controller). Dadurch soll ein flexibler Programmentwurf sichergestellt werden, der spätere Änderungen bzw. Erweiterungen so unkompliziert wie möglich macht.

Datenmodell (Model)

Das Datenmodell enthält die darzustellenden Daten, es kann daher als Datencontainer betrachtet werden.

Präsentation (View)

In der Präsentation (= Anwendungsoberfläche) werden die Daten aus dem Datenmodell dargestellt. Sie bietet zudem auch Möglichkeiten der Nutzerinteraktion. In der Präsentation sind ausschließlich vorgefertigte Elemente zusammengeführt. Views werden in einem Fenster für den Benutzer angezeigt. Jeder Präsentation ist ein View-Controller zugeteilt, der den Programmablauf mit dem Aufruf dazugehöriger Prozesse vorantreibt.

Programmsteuerung (Controller)

Präsentation und Datenmodell werden von der Programmsteuerung verwaltet und miteinander verknüpft. Über die Präsentationen führen Anwender Interaktionen aus, die an die Programmsteuerung weitergegeben werden. Diese sorgt dann für die gewünschten Änderungen in der Präsentation und im Datenmodell.

Web Dynpro Java

Bei der Entwicklung mit Web Dynpro Java (WD4J oder WDJ) werden sogenannte Contexte verwendet. Dabei handelt es sich um einen Datenspeicher, der der Programmsteuerung zugeordnet ist. In dem Zeitraum, in dem die entwickelte App angewendet wird, befinden sich die Daten des Speichers im Component Controller – dieser wird beim Anlegen einer Component automatisch mit angelegt und enthält im Gegensatz zur Programmsteuerung alle Views. Bei den einzelnen Components handelt es sich um Programmbestandteile, aus denen sich eine Web-Dynpro-Applikation zusammensetzt.

Datenzugriffe über die Einzelentitäten werden mit Web Dynpro Java über Context-Mapping modelliert. Dabei kann pro View einer Anwendung festgelegt werden, welche Daten aus dem zentralen Datenkontext des Component Controllers entgegengenommen und ggf. auch verändert werden.

Web Dynpro Java ist vorteilhaft, da es Programmieren ermöglicht, komplexe Anwendungen schnell zu erstellen. Zudem ist die Wartung einfach gestaltet und Nutzer erhalten flexible Datenanbindungsmöglichkeiten durch Webservices.

Allerdings ist Web Dynpro Java nur auf dem SAP Netweaver JAVA Stack verfügbar. Dieser ist zwar auch heute noch Grundlage für verschiedene SAP-Systeme wie das SAP Portal oder die SAP PI, wird jedoch zunehmend durch andere Technologien, z. B. in der Cloud, oder auch den SAP Netweaver ABAP Stack abgelöst. Als logische Konsequenz befindet sich WDJ seit 2018 im Maintenance-Modus und wird nicht mehr weiterentwickelt.

Werkzeuge

Entwicklern steht mit dem SAP NetWeaver Developer Studio ein umfangreiches Werkzeug-Set für die Entwicklung von Web-Dynpro-Java-Anwendungen zur Verfügung. Neben grafischen Tools verfügt es über Editoren, Assistenten, eine erweiterte Kontext-Menü-Funktionalität und Baumdarstellungen, die Anwendern Web-Dynpro-Applikationen mit den dazugehörigen Elementen aufzeigen.

Für die grafische Gestaltung des Designs einer Applikation ist der Application Modeler zuständig. Mit ihm lassen sich Präsentationen anlegen, ändern und die Navigation für ihre Ablauf-Reihenfolge festlegen.

Web-Dynpro-Layouts können mit dem View Designer gestaltet werden. Durch die WYSIWYG-Funktion (What-you-see-is-what-you-get-Funktion) können Anwender das Erscheinungsbild einer Anwendung bereits bei ihrer Erstellung sehen. Per Drag & Drop werden angezeigte Elemente von einer Icon-Liste auf der Präsentation platziert.

Web Dynpro ABAP

Web Dynpro ABAP setzt sich aus einer grafischen Entwicklungsumgebung und einer Laufzeitumgebung zusammen. Die grafische Entwicklungsumgebung enthält Werkzeuge, die in die ABAP Development Workbench (SE80) integriert sind. Dank der Erweiterung der Dynpro-Technologie lassen sich SAP-Applikationen dadurch auch über den Webbrowser steuern.

Vorteile

Web Dynpro ABAP wirkt sich auf die Entwicklung von Web-Anwendungen positiv aus:

  • Grafische Werkzeuge reduzieren den Entwicklungsaufwand
  • Strukturierter Entwurfsprozess
  • Bessere Wartbarkeit und Wiederverwendbarkeit durch den Einsatz von Komponenten
  • Mit den Web-Dynpro-Werkzeugen sind unkomplizierte Änderungen des Layouts möglich
  • Automatische Eingabeüberprüfung

Programmierung mit Web Dynpro ABAP

Um eine Web-Dynpro-Applikation anzulegen, verwenden Entwickler den Web Dynpro Explorer, der sich in der ABAP-Entwicklungsumgebung befindet und vollständig in der ABAP Workbench integriert ist. In der Anzeige von bereits bestehenden Objekten haben sie die Möglichkeit, eine neue Web-Dynpro-Component anzulegen. Hierzu muss eine entsprechende Component-Bezeichnung in die Objektliste eingegeben werden. Über den Button „Anzeige“ öffnen Programmierer ein Fenster, in der sie das Objekt beschreiben und entscheiden, ob sie eine Web-Dynpro-Component oder ein Web-Dynpro-Interface anlegen wollen.

Über Schnittstellen können verschiedene Components die Daten aus anderen Components nutzen. Diese Funktionsweise ist auch bei Entwicklungs-Projekten vorteilhaft: So lassen sich generische Components anlegen, deren Datenbasis von unterschiedlichen Programmierern verwendet werden kann.

Integration

Verschiedene Programme lassen sich in Web Dynpro ABAP integrieren:

  • CAF Guided Procedures Integration
  • Adobe-Integration
  • SAP-List-Viewer-Integration
  • BI-Integration (Business-Intelligence-Integration)
  • Office-Integration

Web-Dynpro-Anwendung ins Fiori-Launchpad integrieren

Über das Fiori-Launchpad greifen Nutzer sowohl mit Mobil- als auch mit Desktop-Geräten auf SAP-Anwendungen zu. Um eine Web-Dynpro-Applikation ins Fiori-Launchpad zu integrieren, verwenden Entwickler den SAP Fiori Launchpad Designer. Über die Transaktionen“/UI2/FLPD_CUST“ oder „/UI2/FLPD_CONF“ wird das Designer-Tool geöffnet.

Nachdem Nutzer den Fiori Launchpad Designer geöffnet haben, kopieren sie den Link http://<server>:<port>/sap/bc/ui5_ui5/sap/arsrvc_upb_admn/main.html?sap-client=100&sap-language=EN%scope=CUST und ersetzen Server und Port.

Danach werden ihnen die Kataloge angezeigt, bei denen es sich um Sammlungen von Apps handelt, die über Fiori gestartet werden können. Entwickler können entweder einen bereits bestehenden Katalog auswählen oder einen neuen erstellen.

Über den Button „Create Target Mapping” wird ein neues Fenster geöffnet, in dem das Objekt, die dazugehörige Aktion und weitere Parameter eingegeben werden müssen, um die App im Katalog anzulegen.

Im Anschluss können Programmierer entweder auf eine bereits bestehende Gruppe zugreifen, oder eine neue anlegen. Bei Gruppen handelt es sich um eine Teilmenge von Apps aus einem oder mehreren Katalogen.

Sobald eine Gruppe geöffnet ist, teilen ihr die Entwickler die im Katalog neu angelegte App zu. Danach wird die Gruppe wiederum einer Benutzerrolle zugeteilt, wodurch die neu eingefügte Applikation berechtigten Nutzern zugänglich gemacht wird.

Sobald das Fiori-Launchpad über die direkte URL oder den Transaktionscode „/UI2/FLP“ erneut geöffnet wird, zeigt es ihnen die eingepflegte Web-Dynpro-Anwendung als Kachel an.

Fazit

Mit Web Dynpro entwickeln Anwender webbasierte Applikationen, die mit dem SAP-System kommunizieren können. Um einen möglichst flexiblen Programentwurf sicherzustellen, verwenden sie mit Web Dynpro das MVC-Entwurfsmuster, bei dem die Software in 3 Komponenten unterteilt wird: Datenmodell, Präsentation und Programmsteuerung.

Durch das Entwurfsmuster sind die entwickelten Applikationen flexibel strukturiert und können unkompliziert erweitert werden. Weil bei der Programmierung mit Web Dynpro grafische Werkzeuge verwendet werden, reduziert sich zudem der Entwicklungsaufwand.

Haben Sie weitere Fragen zum Thema Web Dynpro? Kontaktieren Sie uns gerne, damit wir Ihr individuelles Anliegen besprechen können.


Schreiben Sie einen Kommentar

Bitte füllen Sie alle mit * gekennzeichneten Felder aus. Ihre E-Mail Adresse wird nicht veröffentlicht.





Angebot anfordern
Preisliste herunterladen
Expert Session
Support