Web Service in einem Formular konsumieren
In diesem How-To erfahren Sie, in einem Formular einen Web Service einbinden und diesen dort abrufen können. Diese Funktion bringt den großen Vorteil mit sich, dass die Funktionalitäten eines (RFC-) Funktionsbausteins in einem interaktiven Formular konsumiert werden können.
Projektleitung, Projektbegleitung oder einfach nur Unterstützung in der Entwicklung. Unsere Mitarbeiter haben langjährige Erfahrungen in der SAP Formulargestaltung und Sie können von unserem gesamten Knowhow profitieren. Unser passendes Angebot finden sie hier: Formular-Experten von MINDFORMS buchen
Kontaktieren Sie mich: Telefon 0211 946 285 72-35 oder per E-Mail info@mindforms.de
In einem unverbindlichen Gespräch kann ich mit Ihnen über Ihre Ausgangslage sprechen und Ihnen Möglichkeiten aufzeigen. Selbstverständlich können wir danach auch ein unverbindliches Angebot unterbreiten.
Voraussetzungen
Für das Einbetten eines Web Service in ein Formular ist es notwendig, dass bereits im Vorfeld sowohl ein funktionsfähiger Web Service als auch ein Formular inkl. Schnittstelle erstellt wurden.
HowTo
Für dieses HowTo wird zu Demonstrationszwecken ein einfaches Formular angelegt, welches einen bestehenden Web Service konsumiert, der im einfachsten Fall zwei Zahlen addiert.
Hierzu wird zunächst die Transaktion SE80 aufgerufen, um hier eine neue Schnittstelle für das Formular anzulegen.
In der Schnittstelle können für komplexere Formulare sowohl Im- und Exportparameter festgelegt als auch globale Definitionen und Initialisierungsvorschriften hinterlegt werden.
Speichern und aktivieren Sie die Schnittstelle.
Im nächsten Schritt wird ein einfaches Formular angelegt.
Hier werden Name und Kurzbeschreibung des Formulars gepflegt und die zu verwendende Schnittstelle angegeben.
Speichern, aktivieren.
Das Formular und die Schnittstelle sind nun angelegt.
Zum Einbinden des Web Services in das Formular wird zunächst eine neue Datenverbindung angelegt, die das Formular mit dem Web Service verbindet.
Hierzu wird in der Transaktion sfp das gerade erstellte Formular im Änderungsmodus aufgerufen.
In dem folgenden Screen wird unter dem Tab “Layout” die Datenansicht des Formulars aufgerufen und eine neue Datenverbindung angelegt.
Da die Datenbeschreibung in einer WSDL-Datei hinterlegt ist, wird im darauf folgenden Fenster der Punkt WSDL-Datei ausgewählt und auf “Weiter” geklickt.
Im nächsten Schritt ist der Pfad zur WSDL-Datei anzugeben. Im vorliegenden Fall nutzen wir eine http-Adresse unter der eine beispielhafte WSDL hinterlegt ist.
Auffinden der WSDL-Datei
Transaktion “soamanager”.
Web Service-Konfiguration.
Web Service einbinden: suchen und auswählen durch Klick auf Web Service und anschließend auf “Apply Selection”.
Klick auf “WSDL-URL des ausgewählten Bindings oder Services einblenden / ausblenden” und die WSDL-URL in die Zwischenablage kopieren.
Zurück zur Transaktion SFP.
Der Pfad zur WSDL-Datei wird im folgenden Screen hinterlegt. Möglicherweise müssen hier die SAP-Benutzerdaten eingegeben werden.
Im nächsten Screen werden alle Vorgänge zum gewählten Web Service ausgelistet und der gewünschte ist auszuwählen.
Nach einem Klick auf “Weiter” können die gewünschten Authentifizierungseinstellungen getroffen werden.
Nach einem Klick auf “Fertigstellen” ist der Web Service in das Formular eingebunden und die im Web Service hinterlegten Funktionalitäten können genutzt werden.
Funktionstest: Web Service einbinden
Für einen beispielhaften Funktionstest und zu Demonstrationszwecken soll an dieser Stelle noch gezeigt werden, wie die Funktionalität im Formular genutzt werden kann und wie der Web Service aufgerufen wird.
Hierzu werden die Import- und Exportparameter des Service (aus der Datenansicht) per Drag & Drop auf das Formular gezogen.
Der Serviceaufruf ist bereits im automatisch angelegten Button integriert, der auch per Drag & Drop auf das Formular gezogen wird.
Speichern und aktivieren Sie das Formular.
Das Formular kann jetzt verwendet werden.
Ein kurzer Funktionstest zeigt, dass sich das Formular wie gewünscht verhält und die im Web Service hinterlegte Funktionalität (hier eine einfache Addition) ausführt und ausgibt.