04.09.2024 | Johannes May
Als erstes Anwendungsbeispiel in der Integration Suite erstellen wir Schritt für Schritt einen einfachen Integration Flow um Header-Parameter per HTTPS-Request an den Integration Flow zu übergeben.
Wir beginnen mit der Erstellung eines einfachen Integration Flows, der durch einen HTTPS-Call getriggert werden kann.
Dazu navigieren wir zu Design>Integration and APIs>Create.
Als nächstes die Pflichtfelder ausfüllen und auf Save.
Auf den Reiter Artifacts>Add>Integration Flow.
Pflichtfelder eintragen und Add and Open in Editor.
Nun befinden wir uns im Editor des Integration Flows und können diesen bearbeiten.
Wir klicken oben rechts auf Edit und fügen einen Connector von Sender zu Start hinzu. Die Maus muss man dabei gedrückt halten und den Pfeil einfach zu Start ziehen.
Als Adapter Type wählen wir HTTPS.
Pflichtfelder im Reiter Connection eingeben, dann Save und Deploy.
Hinweis: Es wird die Rolle „ESBMessaging.send“ bzw. „MessagingSend“ benötigt, ansonsten bekommt man beim Connection Test einen „403 Forbidden Error“.
Siehe Note: https://me.sap.com/notes/2642897/E
Als nächstes fügen wir einen Content Modifier hinzu. Dazu klicken wir auf den Pfeil in der Mitte, dann auf das +-Symbol und auf Content Modifier.
Nun definiert man eine neue Exchange Property. Diese Property wird beim Aufruf der API im Header übergeben.
Um auf den Exchange Parameter innerhalb des Integration Flows zuzugreifen, kann man ihn im Message Body ausgeben.
Anschließend müssen noch die erlaubten Header festgelegt werden. Hier geben wir entweder „checkHeader“ ein oder einfach * um alle Header zu erlauben. Danach Save und Deploy.
Nun kann der erstellte Integration Flow getestet werden. Dafür benutzen wir Postman und verwenden die Endpoint URL des Integration Flows.
Die Endpoint URL findet man unter Deployment Status>Navigate to Manage Integtration Content.
In Postman nutzen wir nun die Endpoint URL und übergeben den Parameter an den Header. Als Autorisation Methode wählen wir Basic Auth und verwenden den SAP BTP Username+Passwort.
Beim Absenden der GET-Request sollte man nun den zuvor erstellten Message Body vom Integration Flow angezeigt bekommen, mit dem übergebenen Parameterwert von checkHeader.
Als letztes prüfen wir noch die erstellte Message innerhalb der BTP. Dazu öffnen wir wieder das Monitoring Dashboard, stellen Log Level auf „Trace“ und senden erneut die GET-Request. Danach weiter auf Monitor Message Processing.
Durch den Status „Completed“ sieht man, dass die Message erfolgreich verarbeitet wurde.
Wenn Log Level „Trace“ aktiviert wurde, kann man nun auf den Inhalt der Message zugreifen.
Unter End>Message Content>Payload kann man nun ebenfalls den Message Body mit dem übergebenen Parameterwert einsehen.
Der nächste Teil dieses Beitrags enthält ein Schritt für Schritt Tutorial, um IDocs von einem SAP On-Premise System zu einem Integration Flow auf der SAP BTP zu senden.