Web Dynpro Anwendungen über Transaktion aufrufen – mit Parametern!
Tutorials für das Anlegen einer Transaktion, die eine Web Dynpro Anwendung aufruft, gibt es bereits wie Sand am Meer - mit stark schwankender Qualität.
Was hierdurch aber nicht abgedeckt wird und dennoch oft benötigt wird, ist das Mitgeben von Parametern über die Transaktion. Dies kann bspw. genutzt werden, um zu unterscheiden, ob die Web Dynpro Anwendung aus der Transaktion selbst, oder über den NWBC gestartet wurde.
Eine elegante Weise, wie dies leicht möglich ist, zeige ich Ihnen in diesem Beitrag.
Anmerkung: Wenn Sie eine Web Dynpro Anwendung mit Parametern aus dem Code direkt aufrufen wollen, geht dies einfacher. Wie Sie für diesen Zweck eine Web Dynpro URL konfigurieren und aufrufen, erfahren Sie in diesem Beitrag anhand des Beispiels einer Processes and Forms Anwendung.
In diesem Tutorial erkläre und zeige ich Ihnen schrittweise, wie Sie:
- Einen Parameter für die Web Dynpro Anwendung definieren
- Eine Konfiguration erstellen, die diesen Parameter enthält
- Eine Transaktion erstellen, die die WDA mit dieser Konfiguration aufruft
- Den Parameter innerhalb der Web Dynpro Komponente abfragen.
Die beschriebene Methode funktioniert automatisch mit Single Sign-on: Das bedeutet, Ihre Anmeldedaten aus der SAP GUI werden automatisch für den Aufruf der Browser-Anwendung übertragen und Sie müssen sich nicht erneut anmelden.
Schritt 1 – Parameter der Web Dynpro Anwendung festlegen
Dieser Schritt ist einfach und schnell gemacht! Wir wechseln ins Repository Infosystem und wählen unter dem Reiter Web Dynpro/Web-Dynpro-Anwendungen eine WDA unserer Wahl.
Überspringen wir diesen Schritt, so können wir der WD-URL zwar Parameter wie gewohnt mitgeben, diese können aber nicht ausgelesen werden und wir können diese auch nicht in der Konfiguration setzen.
Schritt 2 Erstellen der Konfiguration
In der TC SE80 legen wir eine neue Web Dynpro Anwendungskonfiguration an. Nachdem wir unsere eben ausgewählte Web Dynpro Anwendung eingegeben haben, erfolgt die eigentliche Bearbeitung in der Web-Oberfläche, welche über den Button “Konfigurator starten” verfügbar ist:
Hier müssen wir wie gewohnt ein Paket und einen Transportauftrag angeben, diesmal in der Web-Oberfläche statt der SAP GUI. Wichtig ist hierbei, dass wir die entsprechende WDC, der wir in Schritt 1 den Parameter zugeordnet haben, der Konfiguration zuordnen.
Wenn wir die notwendigen Einstellungen vorgenommen haben, wechseln wir im Änderungsmodus auf die Konfiguration. Lassen Sie sich nicht irreführen von der Menge an Einstellungsmöglichkeiten, nach kurzer Suche sollten Sie eine Einstellung finden, die den Namen des Parameters trägt, den Sie in Schritt 1 angelegt haben. Dort geben tragen wir nun einfach den gewünschten Wert für unseren Parameter ein, welcher beim Aufruf der Transaktion an die Anwendung übergeben werden soll.
Schritt 3 – Die Transaktion
Über den Transaktionscode SE93 gelangen wir in das Menu zum Erstellen einer Transaktion. Hier erstellen wir zunächst eine neue Parametertransaktion und nehmen die Einstellungen wie in der Abbildung weiter unten vor.
Essentiell ist hierbei die Angabe der Transaktion WDYID, welche die Web Dynpro Anwendung letzten Endes startet. Damit diese weiß, welche WDA gestartet werden soll, in welchem Modus und mit welcher Konfiguration, füllen wir noch die Parameter am Ende der Seite aus:
- APPLICATION: Dies ist der Name der Web Dynpro Anwendung aus dem ersten Schritt
- STARTMODE: Hier wählen wir BROWSER für den Aufruf im… Sie ahnen es schon… Browser.
- WDCONFIGURATIONID: Ebenso selbsterklärend ist die Angabe der Konfigurations-ID aus dem zweiten Schritt an dieser Stelle
Schritt 4 – Zugriff auf den Parameter
So weit, so gut. Doch ohne Weiteres haben unsere Anpassungen keinerlei Effekt, sofern wir diesen nicht explizit abfragen. Ausgenommen ist selbstverständlich der Fall, das Sie Schritt 1 übersprungen und einen bereits existierenden URL-Parameter und die zugehörige Funktionalität gewählt haben.
Um auf die Parameter zuzugreifen, nutzen wir an geeigneter Stelle (nach dem gängigen Model-View-Controller Konzept z.B. im Component Controller) die Standard Methode zum Auslesen. Um an diese heranzukommen reicht es jedoch nicht einfach auf den Controller zuzugreifen oder Ähnliches.
Wir beschaffen uns die Parameter über einige Umwege.
Über den Component Controller besorgen wir uns zunächst das Application Programming Interface, darüber dann die Anwendung. Über die Anwendung erhalten wir schließlich die Anwendungsinformationen und diese enthalten dann wiederum die Anwendungsparameter. Aufgeschlüsselt sieht ein solcher Aufruf so aus:
Herzlichen Glückwunsch, Sie können jetzt abhängig von Ihrem definierten Parameter unterschiedliche Änderungen vornehmen. Wenn Sie mehrere Werte für Ihren Parameter verwenden, so bietet sich beispielsweise ein CASE-Statement an.
FAQ
Was ist SAP WebDynpro?
WebDynpro ist eine Technologie, die von SAP im Rahmen der NetWeaver Strategie eingeführt wurde und dient dem Erstellen von webgestützten Anwendungen, die mit einem SAP ERP und anderen System zusammen arbeiten.
Worauf basiert WebDynpro?
Web Dynpro basiert auf den MVC-Entwurfsmuster (Model-View-Controller-Entwurfsmuster). Dabei wird die zu entwickelnde Software in drei Komponenten eingeteilt dem Datenmodell (Modell), der Präsentation (View) und der Programmsteuerung (Controller). Ziel der Softwarelösung ist die Sicherstellung eines flexiblen Programmentwurf, der spätere Änderungen bzw. Erweiterungen so unkompliziert wie möglich macht.
Welche Werkzeuge stehen den Entwicklern bei WebDynpro zur Verfügung?
Mit WebDynpro steht Entwicklern 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, zum Aufzeigen der Web-Dynpro-Applikationen mit den dazugehörigen Elementen.
Was ist WebDynpro ABAP?
Das WebDynpro ABAP ist die Standard-UI-Technologie von SAP für die Entwicklung von Web-Anwendungen im ABAP-Umfeld. Es besteht aus einer Laufzeitumgebung und einer grafischen Entwicklungsumgebung mit speziellen Web-Dynpro-Werkzeugen, die in die ABAP-Entwicklungsumgebung (SE80) integriert sind.
Welche Vorteile hat WebDynpro ABAP?
WebDynpro ABAP wirkt sich positiv auf die Entwicklung von Web-Anwendungen aus:
- Grafische Werkzeuge reduzieren den Entwicklungsstand
- Strukturierter Entwurfsprozess
- Bessere Wartbarkeit und Wiederverwendbarkeit durch den Einsatz von Komponenten
- Mit dem WebDynpro-Werkzeugen sind unkomplizierte Änderungen des Layouts möglich
- Automatische Eingabeüberprüfung
Manager Reporting Cockpit (Fiori&Web Dynpro)
Mit dem Manager Reporting Cockpit (Fiori&Web Dynpro) d. Überblick über Personal- und Zeitdaten Ihrer Mitarbeiter erhalten. Auch mobil die Kontrolle behalten