Verbindung der SAP BTP mit On-Premise-SAP-ERP

Das Wichtigste zusammengefasst:

Der Cloud Connector kann mit On-Premise SAP-Systemen verbunden werden.

Der Cloud Connector kann mit On-Premise-SAP-Systemen verbunden werden.

Voraussetzung dafür ist die Verbindung des SAP Cloud Connectors mit der BTP.

Voraussetzung dafür ist die Verbindung des Cloud Connectors mit der BTP.

Sobald der Cloud Connector mit der BTP und mit dem On-Premise System verbunden ist, kann eine sichere Verbindung zwischen beiden aufgebaut werden.

Sobald der Cloud Connector mit der BTP und mit dem On-Premise System verbunden ist, kann eine sichere Verbindung zwischen beiden aufgebaut werden.

SAP Business Technology Platform (BTP) ist eine Cloud, die vom Internet aus erreichbar ist. Eine der wichtigsten Funktionen der meisten Applikationen, die auf SAP BTP laufen, ist die Verbindung zu einem On-Premise-SAP-System. Dies ist notwendig, um Unternehmens interne Daten zu laden oder diese per Funktionen zu ändern.

Da von einer Applikation, die im Internet läuft, nicht direkt eine Verbindung zum SAP-System aufgebaut werden sollte, wird hierfür der Cloud Connector verwendet. Im Artikel zur Einrichtung finden Sie mehr Details zu diesem Programm. 

In diesem Artikel wird beschrieben, wie der Cloud Connector und eine Destination konfiguriert werden müssen, um eine Verbindung zu einem internen System herzustellen. Voraussetzung dafür ist ein eingerichteter Cloud Connector, der mit dem Subaccount verbunden wurde. Dies wird ebenfalls im Artikel zur Einrichtung beschrieben.

Die folgende Graphik illustriert die BTP-Architektur, die in diesem Tutorial eingerichtet wird:

Konfiguration im Cloud Connector

Falls Sie ein EWM-System anbinden, empfehlen wir Ihnen, vorher die relevanten Einstellungen im EWM-System vorzunehmen. Aus rein technischer Sicht kann diese Konfiguration aber auch nach Fertigstellung dieser Anleitung vorgenommen werden. 

Um eine sichere Verbindung von der SAP BTP über den Cloud Connector zu einem SAP-ERP- oder S/4HANA-System aufzubauen, muss diese Verbindung im Cloud Connector hinzugefügt werden.

Hinweis: Die folgende Konfiguration ist ein Beispiel für die Einrichtung von FlexGuide4, einem Produkt der Flexus. 

Dazu öffnen Sie den Cloud Connector und wählen den passenden Subaccount aus. Danach navigieren Sie zu Cloud to On-Premise und klicken auf das +-Symbol. Wählen Sie im nun erscheinenden Dialog ABAP System als Back-end Type aus:

Folgende weitere Einstellungen müssen ausgewählt werden:

  • Protocol: HTTPS 
  • Internal Host: Entsprechend den SAP System Einstellungen 
  • Internal Port: Entsprechend den SAP System Einstellungen 
  • Virtual Host: sollte für erhöhte Security vom internen Host abweichen, um diesen zu maskieren 
  • Virtual Port: sollte ebenfalls vom internen Port abweichen  
  • Allow principal propagation: aktiviert 
  • Principal Type: X.509 Certificate 
  • Hinweis: Dies gilt für Cloud Connector Version 2.15 oder höher. Für 2.14.2 oder niedriger muss „X.509 Certificate (Strict Usage)“ ausgewählt werden 
  • System Certificate for Logon: deaktiviert (wie in der Dokumentation empfohlen
  • Host In Request Header: Use Virtual Host 
  • System ID: optional 
  • Description: optional 
  • Check Internal Host: aktiviert 

Der interne Host (Internal Host) entspricht der Adresse und dem Port des SAP-Systems im firmeninternen Netz. Der virtuelle Host und der virtuelle Port sind die Daten, die nach außen hin sichtbar sind, und können so den internen Host vor externen Einblicken schützen. Des Weiteren kann der virtuelle Host als Spitzname zur einfachen Identifikation fungieren (z.B. „development-system“).

Die Option Check Internal Host löst eine Kontrolle aus, ob der Cloud Connector das On-Premise-System über TLS-Protokoll erreichen kann. Diese Kontrolle kann auch jederzeit durch einen Klick auf die Aktion Check availability of internal host in der entsprechenden Tabellenzeile ausgelöst werden:

Aus Sicherheitsgründen blockiert Cloud Connector pauschal alle Anfragen aus dem Netz. Um dennoch eingeschränkten Zugriff zu ermöglichen, können so genannte Ressourcen konfiguriert werden. Diese Schnittstellen sind dann von der Sperre ausgenommen und von außen aufrufbar.

Über diese freigegebenen Ressourcen können dann verschiedene Systeme mit der BTP kommunizieren. Für FlexGuide4 von Flexus werden beispielsweise Fahraufträge und Stammdaten aus dem SAP-System geladen und Updates zu den Fahraufträgen zurückgemeldet. Für SAP EWM können die Daten durch ein Application Programming Interface (API) abgerufen werden, welches fester Bestandteil des Produkts ist. Für den Zugang zu Daten von anderen ERP-Modulen (z.B. SAP MM) muss ein von der Flexus speziell für diesen Zweck entwickelter Adapter als Extension installiert werden. Dieser richtet eine API für die relevanten Daten des ERP-Moduls ein. Zu guter Letzt besteht noch die Möglichkeit, Daten aus dem Flexus-Produkt TLS Classic zu laden.

Um eine Ressource anzulegen, klicken Sie in der Tabelle unter Mapping Virtual to Internal System auf die Spalte Virtual Host in der Zeile des passenden Mappings. Klicken Sie dann auf das +-Symbol rechts oberhalb der Ressourcen-Tabelle.

In folgendem Screenshot ist die Anlage einer Ressource beispielhaft für TLS Classic demonstriert:

Je nach Quelle der Daten müssen andere URL-Pfade bei der Anlage der Ressourcen festgelegt werden:

  • SAP EWM (hier müssen zwei Ressourcen angelegt werden):
    /sap/opu/odata4/sap/api_warehouse_order_task_2/srvd_a2x/sap/
    /sap/opu/odata4/sap/api_warehouse_resource_2/srvd_a2x/sap/
  • SAP WM: /flexus/flg4_adapter/v1/wm/
  • TLS Classic: /flexus/tls4/rest/

Wichtig ist auch, dass Path And All Sub-Paths aktiviert ist.

Nun ist der Cloud Connector konfiguriert, damit Fahraufträge aus dem SAP-System in FlexGuide4 gelangen können und Updates zu diesem wiederum zurückgeschrieben werden.

Über den Cloud Connector kann jedoch nicht nur eine Verbindung zu einem internen SAP-System hergestellt werden, sondern auch zu Nicht-SAP-Systemen wie Flottenmanagern. In dem Artikel zur Verbindung der BTP mit Flottenmanagern finden Sie dazu weitere Details.

Konfiguration im SAP BTP Cockpit

Sobald der Cloud Connector konfiguriert ist und sowohl eine Verbindung zur SAP BTP sowie zum On-Premise-SAP-System herstellen kann, kann eine Destination erstellt werden. Dies geschieht im SAP BTP Cockpit.

Im SAP BTP Cockpit werden Destinationen auf Ebene des Subaccounts erstellt. Dazu muss dieser angesteuert werden, woraufhin in der Menüleiste der Eintrag Destinations unter Connectivity sichtbar sein sollte. Erstellen Sie eine neue Destination durch Klick auf den Button Create:

In dem darauffolgenden Pop-Up wählen Sie die Option From Scratch. In der Destination können nun die Zugangsdaten zum SAP-System sicher hinterlegt werden. Hier ein beispielhaftes Setup:

Als Name kann etwas Beliebiges gewählt werden. Wir empfehlen, alle Destinationen einheitlich zu benennen. Beispielsweise kann der Name oder Typ des Zielsystems darin vorkommen. Jedoch sollte der Name der Destination über alle Stages, also von einem Entwicklungs-, über einen Qualitätssicherungs- bis hin zu einem Produktions-Subaccount, denselben Namen tragen. Der Grund dafür ist, dass bei manchen Fiori-Apps die Destination ein Teil der Konfiguration ist, die nicht zwischen den Stages geändert werden kann. Im Folgenden sind ein paar Beispiele für sinnvolle Namensgebungen aufgelistet:

  • EMEA_SAP_ERP
  • US_SAP_EWM
  • AGV_FLEETMANAGER_HTTP
  • AGV_FLEETMANAGER_HTTPS

Als Additional Properties sollten folgende Schlüssel-Wert-Paare bei der Erstellung der neuen Destination angegeben werden:

  • sap-client: Nummer des SAP-Mandanten
  • HTML5.DynamicDestination: true

Unsere Erfahrungswerte haben gezeigt, dass letztere Einstellung die Funktionalität der Destination verbessert.