SAP ERP

Mit dem SAP ERP-Connector können Sie SAP ERP-Daten einfügen, löschen, aktualisieren und lesen.

Hinweise

Führen Sie vor der Verwendung des SAP ERP-Connectors die folgenden Aufgaben aus:

  • In Ihrem Google Cloud-Projekt:
    • Weisen Sie dem Nutzer die IAM-Rolle roles/connectors.admin zu. Connector konfigurieren.
    • Weisen Sie dem Dienstkonto, das Sie für den Connector verwenden möchten, die folgenden IAM-Rollen zu:
      • roles/secretmanager.viewer
      • roles/secretmanager.secretAccessor
      • roles/storage.objectViewer

      Ein Dienstkonto ist eine spezielle Art von Google-Konto, das einen nicht menschlichen Nutzer repräsentiert. Es muss authentifiziert und autorisiert werden, um Zugriff auf Daten in Google APIs zu erhalten. Wenn Sie kein Dienstkonto haben, müssen Sie eins erstellen. Weitere Informationen finden Sie unter Dienstkonto erstellen.

    • Aktivieren Sie die folgenden Dienste:
      • secretmanager.googleapis.com (Secret Manager API)
      • connectors.googleapis.com (Connectors API)

      Informationen zum Aktivieren von Diensten finden Sie unter Dienste aktivieren.

    Wenn diese Dienste oder Berechtigungen für Ihr Projekt zuvor nicht aktiviert wurden, werden Sie aufgefordert, sie beim Konfigurieren des Connectors zu aktivieren.

Connector konfigurieren

Für die Konfiguration des Connectors müssen Sie eine Verbindung zu Ihrer Datenquelle (Backend-System) erstellen. Eine Verbindung ist für eine Datenquelle spezifisch. Wenn Sie also viele Datenquellen haben, müssen Sie für jede Datenquelle eine separate Verbindung erstellen. So erstellen Sie eine Verbindung:

  1. Rufen Sie in der Cloud Console die Seite Integration Connectors > Verbindungen auf und wählen Sie ein Google Cloud-Projekt aus oder erstellen Sie eines.

    Zur Seite „Verbindungen“

  2. Klicken Sie auf + NEU ERSTELLEN, um die Seite Verbindung erstellen zu öffnen.
  3. Wählen Sie im Abschnitt Standort den Standort für die Verbindung aus.
    1. Region: Wählen Sie einen Standort aus der Drop-down-Liste aus.

      Eine Liste aller unterstützten Regionen finden Sie unter Standorte.

    2. Klicken Sie auf Weiter.
  4. Führen Sie im Abschnitt Connection Details (Verbindungsdetails) die folgenden Schritte aus:
    1. Connector: Wählen Sie aus der Drop-down-Liste der verfügbaren Connectors SAP ERP aus.
    2. Connector-Version: Wählen Sie die Connector-Version aus der Drop-down-Liste der verfügbaren Versionen aus.
    3. Geben Sie im Feld Verbindungsname einen Namen für die Verbindungsinstanz ein.

      Verbindungsnamen müssen die folgenden Kriterien erfüllen:

      • Verbindungsnamen können Buchstaben, Ziffern oder Bindestriche enthalten.
      • Buchstaben müssen Kleinbuchstaben sein.
      • Verbindungsnamen müssen mit einem Buchstaben beginnen und mit einem Buchstaben oder einer Ziffer enden.
      • Verbindungsnamen dürfen maximal 63 Zeichen haben.
    4. Geben Sie optional eine Beschreibung für die Verbindung ein.
    5. Aktivieren Sie optional Cloud Logging. und wählen Sie dann eine Logebene aus. Die Logebene ist standardmäßig auf Error festgelegt.
    6. Dienstkonto: Wählen Sie ein Dienstkonto, das über die erforderlichen Rollen verfügt.
    7. Wenn Sie die Verbindung für Ereignisabos verwenden möchten, wählen Sie Ereignisabo aktivieren aus. Wird ausgewählt werden folgende Optionen angezeigt:
      • Ereignisabo mit Entität und Aktionen aktivieren: Wählen Sie diese Option aus, um Die Verbindung wird sowohl für Ereignisabo- als auch für Connector-Vorgänge (Entitäten und Aktionen) verwendet.
      • Nur Ereignisabo aktivieren: Wählen Sie diese Option aus, um die Verbindung zu verwenden. nur für Ereignisabos. Wenn Sie diese Option auswählen, klicken Sie auf Weiter und dann auf Ereigniseintrag konfigurieren.
    8. Client: Der Client, der sich beim SAP-System authentifiziert.
    9. System Id: Die System-ID oder R3Name des SAP-Systems ist ein String mit maximal drei Zeichen. Es wird häufig bei Load-Balancing-Verbindungen verwendet.
    10. Systemnummer: Die Zahl, durch die das Zielsystem definiert ist. Wird beim Festlegen der Hostverbindungseigenschaft verwendet.
    11. Projekt-ID: Die ID des Google Cloud-Projekts, in dem sich der GCS-Bucket mit dem SAP JCo-JAR befindet.
    12. Bucket: Der Name des Buckets, der die Dateien sapjco3.jar und libsapjco3.so enthält.
    13. Jaco-JAR-Objekt-ID: Objekt-ID der JCo-JAR-Datei.
    14. libsapjco3-Objekt-ID: Objekt-ID der libsapjco3-JAR-Datei.
    15. Tabellenmodus: Wählen Sie die SAP-Tabelle aus, die als Ansicht angezeigt werden soll.
    16. SNC_LIB-Objekt-ID: Objekt-ID der SNC-Bibliothek.
    17. PSE-Name: Name der entsprechenden Personal Security Environment (PSE)-Datei für den Bucket. In einer PSE-Datei werden das öffentliche und der private Schlüsselpaar sowie die X.509-Zertifikate in einer ASN.1-Struktur gespeichert.
    18. Gruppe: Der Gruppenname für die Anmeldung. Dieser wird normalerweise angegeben, wenn Ihr SAP-System verwendet Load-Balancer.
    19. Nachrichtenserver: Name des Nachrichtenservers, der beim Herstellen einer Verbindung zu dem SAP-System verwendet werden soll, das Load-Balancer verwendet.
    20. Tabellenfunktion lesen: Name der Funktion, die zum Lesen von Tabellen verwendet werden soll. Weitere Informationen finden Sie unter Benutzerdefinierte Funktion zum Lesen von Tabellen verwenden.
    21. Verbindungsschema: Wählen Sie ein Verbindungsschema aus, das für die Verbindung zu Ihrem SAP-System verwendet werden soll.
    22. System ID: Die System-ID oder der R3Name des SAP-Systems. Sie können maximal 3 Zeichen eingeben.
    23. SNC-Sicherheitscode: Wählen Sie das Secret Manager-Secret des Sicherheitscodes der SNC-Bibliothek aus.
    24. Secret-Version: Wählen Sie die Secret-Version aus.
    25. SNC-Modus: Wählen Sie diese Option aus, um SNC für die Authentifizierung zwischen Integration Connectors und Ihrem SAP-System zu aktivieren.
    26. SNC-Name: Geben Sie einen Namen für die SNC-Verbindung ein.
    27. SNC qop: Schutzniveau auswählen. Folgende Stufen werden unterstützt:
      • 1: Nur Authentifizierung wird angewendet.
      • 2 – Integritätsschutz anwenden Dazu gehört auch der Authentifizierungsschutz.
      • 3 – Datenschutz anwenden. Dazu gehören auch Integritäts- und Authentifizierungsschutz.
      • 8: Der Standardschutz wird angewendet.
      • 9: Höchsten Schutz anwenden
    28. SNC partner name (Name des SNC-Partners): Geben Sie den SNC-Namen des Anwendungsservers ein.
    29. Abfragemodus: Wählen Sie aus, welche SAP-Tabellen als Ansichten angezeigt werden sollen.
    30. Durchsuchbare Ansichten: Geben Sie eine durch Kommas getrennte Liste von Ansichten ein. Beispiel: ViewA,ViewB,ViewC.
    31. Ausführlichkeitsstufe: Geben Sie die Ausführlichkeitsstufe für das Logging ein. Das unterstützte Werte zwischen 1 und 5 liegen. Ein höherer Wert bedeutet, dass mehr Details verfügbar sind in den Protokollen.
    32. Konfigurieren Sie optional die Einstellungen für den Verbindungsknoten:

      • Mindestanzahl von Knoten: Geben Sie die Mindestanzahl von Verbindungsknoten ein.
      • Maximale Anzahl von Knoten: Geben Sie die maximale Anzahl von Verbindungsknoten ein.

      Ein Knoten ist eine Einheit (oder ein Replikat) einer Verbindung, die Transaktionen verarbeitet. Zur Verarbeitung von mehr Transaktionen für eine Verbindung sind mehr Knoten erforderlich. Umgekehrt sind weniger Knoten erforderlich, um weniger Transaktionen zu verarbeiten. Informationen zu den Auswirkungen der Knoten auf Ihre Connector-Preise finden Sie unter Preise für Verbindungsknoten. Wenn Sie keine Werte eingeben, ist die Mindestanzahl von Knoten standardmäßig auf 2 (für eine bessere Verfügbarkeit) und die maximale Knotenzahl auf 50 gesetzt.

    33. Klicken Sie optional auf + LABEL HINZUFÜGEN, um der Verbindung ein Label in Form eines Schlüssel/Wert-Paars hinzuzufügen.
    34. Klicken Sie auf Weiter.
  5. Geben Sie im Abschnitt Ziele die Details zum Remote-Host (Backend-System) ein, zu dem Sie eine Verbindung herstellen möchten.
    1. Destination Type: Wählen Sie einen Destination Type aus.
      • Wählen Sie aus der Liste Hostadresse aus, um den Hostnamen oder die IP-Adresse für das Ziel anzugeben.
      • Wenn Sie eine private Verbindung zu Ihren Backend-Systemen herstellen möchten, wählen Sie in der Liste Endpunktanhang und dann den erforderlichen Endpunktanhang aus der Liste Endpunktanhang aus.

      Wenn Sie eine öffentliche Verbindung zu Ihren Back-End-Systemen mit zusätzlicher Sicherheit herstellen möchten, können Sie statische ausgehende IP-Adressen für Ihre Verbindungen konfigurieren und dann Ihre Firewallregeln konfigurieren, um nur bestimmte statische IP-Adressen zuzulassen.

      Wenn Sie weitere Reiseziele eingeben möchten, klicken Sie auf + Ziel hinzufügen.

    2. Klicken Sie auf Weiter.
  6. Geben Sie im Abschnitt Authentifizierung die Authentifizierungsdetails ein.
    1. Wählen Sie einen Authentifizierungstyp aus und geben Sie die relevanten Details ein.

      Die folgenden Authentifizierungstypen werden von der SAP ERP-Verbindung unterstützt:

      • Nutzername und Passwort
    2. Informationen zum Konfigurieren dieser Authentifizierungstypen finden Sie unter Authentifizierung konfigurieren.

    3. Klicken Sie auf Weiter.
  7. Wenn Sie das Ereignisabo aktiviert haben, wird der Abschnitt Event Subscription Details (Details zum Ereignisabo) auf der Seite zur Verbindungserstellung angezeigt. Um zu verstehen, Weitere Informationen zum Konfigurieren von Ereignisabos finden Sie im Hilfeartikel Ereignisabo konfigurieren.
  8. Überprüfen: Prüfen Sie Ihre Verbindungs- und Authentifizierungsdetails.
  9. Klicken Sie auf Erstellen.

Authentifizierung konfigurieren

Geben Sie die Details basierend auf der zu verwendenden Authentifizierung ein.

  • Nutzername und Passwort
    • Nutzername: Nutzername für den Connector
    • Password (Passwort): Secret Manager-Secret mit dem Passwort, das dem Connector.

Für Ereignisabo konfigurieren

Wenn Sie das Ereignisabo aktiviert haben, geben Sie die folgenden Werte in das Feld Abschnitt Details zum Ereignisabo:

  1. Wählen Sie einen der folgenden Authentifizierungstypen für den Event-Listener aus.
  2. Geben Sie den Feldnamen für den Ereignistyp ein. Dieses Feld ermittelt die Art des Ereignisses, das mit dem eingehende Ereignisanfrage senden.
    {
    "event_type": "user.created",
    ...
    // other request fields
    ...
    }
  3. Wählen Sie Private Konnektivität aktivieren für eine sichere Verbindung zwischen Ihrer Backend-Anwendung und Ihrer Verbindung aus. Wenn Sie diese Option auswählen, müssen Sie zusätzliche Konfigurationsschritte ausführen nachdem Sie die Verbindung erstellt haben. Weitere Informationen finden Sie unter Private Verbindungen für Ereignisabos.
  4. Geben Sie die Konfiguration für unzustellbare Nachrichten ein. Wenn Sie unzustellbare Nachrichten konfigurieren, schreibt die Verbindung die nicht verarbeiteten Ereignisse an das angegebene Pub/Sub-Thema. Geben Sie die folgenden Informationen ein:
    1. Projekt-ID für unzustellbare Nachrichten : Die ID des Google Cloud-Projekts, in dem Sie das Pub/Sub-Thema für unzustellbare Nachrichten konfiguriert haben.
    2. Thema für unzustellbare Nachrichten: Das Pub/Sub-Thema, in das Sie die Details des nicht verarbeiteten Ereignisses schreiben möchten.

Entitäten, Vorgänge und Aktionen

Alle Integration Connectors bieten eine Abstraktionsebene für die Objekte der verbundenen Anwendung. Sie können nur über diese Abstraktion auf die Objekte einer Anwendung zugreifen. Die Abstraktion wird Ihnen als Entitäten, Vorgänge und Aktionen zur Verfügung gestellt.

  • Entität: Eine Entität kann als Objekt oder Sammlung von Attributen in der verbundenen Anwendung oder im verbundenen Dienst verstanden werden. Die Definition einer Entität unterscheidet sich von Connector zu Connector. Beispiel: In einem Datenbank-Connector sind Tabellen die Entitäten, in einem Dateiserver-Connector sind Ordner die Entitäten und in einem Nachrichtensystem-Connector sind Warteschlangen die Entitäten.

    Es ist jedoch möglich, dass ein Connector keine Entitäten unterstützt oder keine Entitäten enthält. In diesem Fall ist die Liste Entities leer.

  • Vorgang: Ein Vorgang ist die Aktivität, die Sie für eine Entität ausführen können. Sie können einen der folgenden Vorgänge für eine Entität ausführen:

    Durch Auswahl einer Entität aus der verfügbaren Liste wird eine Liste der Vorgänge generiert, die für die Entität verfügbar sind. Eine detaillierte Beschreibung der Vorgänge finden Sie in den Entitätsvorgängen der Connectors-Aufgabe. Wenn ein Connector jedoch keinen der Entitätsvorgänge unterstützt, werden diese nicht unterstützten Vorgänge nicht in der Liste Operations aufgeführt.

  • Aktion: Eine Aktion ist eine Funktion erster Klasse, die über die Connector-Benutzeroberfläche für die Integration verfügbar gemacht wird. Mit einer Aktion können Sie Änderungen an einer oder mehreren Entitäten vornehmen, die von Connector zu Connector unterschiedlich sind. Normalerweise hat eine Aktion einige Eingabeparameter und einen Ausgabeparameter. Es ist jedoch möglich, dass ein Connector keine Aktionen unterstützt. In diesem Fall ist die Actions-Liste leer.

Systemeinschränkungen

Der SAP ERP-Connector kann 7 Transaktionen pro Sekunde verarbeiten, pro Knoten, und throttles Transaktionen über diesen Grenzwert hinaus. Standardmäßig werden von Integration Connectors zwei Knoten (für eine bessere Verfügbarkeit) für eine Verbindung zugewiesen.

Informationen zu den für Integration Connectors geltenden Limits finden Sie unter Beschränkungen.

Beispiele für Verbindungskonfiguration

In diesem Abschnitt werden die Beispielwerte für die verschiedenen Felder, die Sie beim Erstellen der Verbindung konfigurieren würden.

Verbindungstyp „ApplicationServer“

In der folgenden Tabelle sind die Beispielkonfigurationswerte für den Verbindungstyp ApplicationServer aufgeführt. Weitere Informationen finden Sie im in der Konsole, um die erforderlichen und optionalen Felder zu sehen.

Feldname Beispielwert
Region us-central1
Connector SAP ERP
Connector-Version 1
Connector-Name saperp-applicationserver-conn
Beschreibung
Dienstkonto xxxxxxxxx-compute@developer.gserviceaccount.com
Kunde 800
Systemnummer 00
Projekt-ID xxxx-gcp-project
Bucket sap-erp-bucket
Jco-Jar-Objekt-ID sapjco3.jar
Objekt-ID libsapjco3 libsapjco3.so
Tabellenmodus TransparentApplication/TransparentCustomer/TransparentSystem/Pooled/Cluster/None
Tabellenfunktion lesen Z_CUSTOM_READ_TABLE
Verbindungsschema ApplicationServer
System-ID SA1
Abfragemodus
Durchsuchbare Ansichten
Ausführlichkeit 5
Mindestanzahl von Knoten 2
Maximale Anzahl von Knoten 50
Hostadresse 10.30.X.XX oder Router-String eines externen SAP-Systems.
Authentifizierung Nutzerpasswort
Nutzername 12345
Passwort xyz@12345
Versionen 1

GroupServer-Verbindungstyp

In der folgenden Tabelle sind die Beispielkonfigurationswerte für den Verbindungstyp GroupServer aufgeführt. Weitere Informationen finden Sie im in der Konsole, um die erforderlichen und optionalen Felder zu sehen.

Feldname Beispielwert
Region us-central1
Connector SAP ERP
Connector-Version 1
Connector-Name saperp-GroupServer-conn
Beschreibung
Dienstkonto xxxxxxxxx-compute@developer.gserviceaccount.com
Kunde 800
Systemnummer 00
Projekt-ID xxxx-gcp-project
Bucket sap-erp-bucket
Jco-Jar-Objekt-ID sapjco3.jar
Objekt-ID libsapjco3 libsapjco3.so
Tabellenmodus TransparentApplication/TransparentCustomer/TransparentSystem/Pooled/Cluster/None
Gruppe Öffentlich
Nachrichtenserver 10.30.X.XX
Tabellenfunktion lesen Z_CUSTOM_READ_TABLE
Verbindungsschema GroupServer
System-ID SA1
Abfragemodus
Durchsuchbare Ansichten
Ausführlichkeit 5
Mindestanzahl von Knoten 2
Maximale Anzahl von Knoten 50
Hostadresse 10.30.X.XX oder Router-String des externen SAP-Systems.
Authentifizierung Nutzerpasswort
Nutzername 12345
Passwort xyz@12345
Versionen 1

X509-Zertifikatsverbindungstyp

In der folgenden Tabelle sind die Beispielkonfigurationswerte für den Verbindungstyp X509 certificate aufgeführt. Weitere Informationen finden Sie im in der Konsole, um die erforderlichen und optionalen Felder zu sehen.

Feldname Beispielwert
Region us-central1
Connector SAP ERP
Connector-Version 1
Connector-Name saperp-X509Certificate-conn
Beschreibung
Dienstkonto xxxxxxxxx-compute@developer.gserviceaccount.com
Kunde 800
Systemnummer 00
Projekt-ID xxxx-gcp-project
Bucket sap-erp-bucket
Jco-Jar-Objekt-ID sapjco3.jar
Objekt-ID libsapjco3 libsapjco3.so
Tabellenmodus TransparentApplication/TransparentCustomer/TransparentSystem/Pooled/Cluster/None
Objekt-ID SNC_LIB libsapcrypto.so
PSE-Name zum Erstellen der Datei „cred_v2“ EHP8_GCP_SA1.pse
Tabellenfunktion lesen Z_CUSTOM_READ_TABLE
Verbindungsschema ApplicationServer
System-ID SA1
SNC-Sicherheitscode xyz@gcp
SNC-Modus Ein boolescher Wert, der bestimmt, ob Sie SNC verwenden. Setzen Sie dies auf „true“, um SNC zu verwenden.
SNC-Name p:CN=EHP8_GCP_SA1, OU=IT, O=CSW, C=DE
SNC-QoP 3
SNC PartnerName p:CN=SA1, OU=I0020070395, OU=SAP Web AS, O=SAP Trust Community, C=DE
Abfragemodus
Durchsuchbare Ansichten
Ausführlichkeit 5
Mindestanzahl von Knoten 2
Maximale Anzahl von Knoten 50
Hostadresse 10.30.X.XX oder Router-String des externen SAP-Systems.
Authentifizierung X509-Zertifikatbasierte Authentifizierung
X509Certificate Das X509-Zertifikat kann mit einem Dateipfad angegeben werden, der auf eine Datei mit einem X509-Zertifikat im PEM-Format verweist. ein PEM-BLOB, der mit „-----BEGIN ...“ beginnt oder ein PEM-Blob ohne "-----BEGIN ..." Header.
Versionen 1

Aktionen

In diesem Abschnitt werden die vom Connector unterstützten Aktionen aufgeführt. Um zu verstehen, wie die siehe Beispiele für Aktionen.

Aktion BAPI_MATERIAL_SAVEDATA

Mit dieser Aktion können Sie bestimmte Aufgaben ausführen. Sie können damit beispielsweise Materialstammdaten in SAP ERP erstellen oder ändern.

Eingabeparameter der Aktion BAPI_MATERIAL_SAVEDATA

Parametername Datentyp Erforderlich Beschreibung
HEADDATA String Ja Der Eingabeparameter HEADDATA.
CLIENTDATA String Ja Der Eingabeparameter CLIENTDATA.
CLIENTDATAX String Ja Der Eingabeparameter CLIENTDATAX.
MATERIALDESCRIPTION String Ja Die Tabelle MATERIALDESCRIPTION.

Ausgabeparameter der Aktion BAPI_MATERIAL_SAVEDATA

Bei erfolgreicher Aktion wird der Status 200 (OK) zurückgegeben.

Ein Beispiel zum Konfigurieren der BAPI_MATERIAL_SAVEDATA-Aktion finden Sie unter Beispiele für Aktionen.

ZFM_GCP_MULTIDATA_TAB-Aktion

Mit dieser Aktion können Nutzer bestimmte Aufgaben ausführen. Sie können beispielsweise Daten mit mehreren Datentypen in SAP ERP erstellen.

Eingabeparameter der Aktion ZFM_GCP_MULTIDATA_TAB

Parametername Datentyp Erforderlich Beschreibung
ReturnTables String Ja Eine durch Kommas getrennte Liste, die angibt, welche Tabellen im Funktionsmodul ausgegeben werden sollen. Wenn keine Angabe erfolgt, werden alle zurückgegebenen Tabellen ausgegeben.
T_TABLE String Ja In der Tabelle T_TABLE.
IM_INPUT_1 String Ja Der Eingabeparameter IM_INPUT_1.
IM_INPUT_2 String Ja Der Eingabeparameter IM_INPUT_2.

Ausgabeparameter der Aktion ZFM_GCP_MULTIDATA_TAB

Bei erfolgreicher Aktion wird der Status 200 (OK) zurückgegeben.

So konfigurieren Sie beispielsweise die Aktion ZFM_GCP_MULTIDATA_TAB. Siehe Aktionsbeispiele.

Aktion "PushIDoc"

Mit dieser Aktion können Sie bestimmte Aufgaben ausführen. Sie können beispielsweise Daten aus SAP in ein externes System übertragen.

Eingabeparameter der PushIDoc-Aktion

Parametername Datentyp Erforderlich Beschreibung
FileType String Ja Der Dateityp. Zulässige Werte sind „XML“ und „IDoc“.
Modus String Ja Der Übertragungsmodus.Die zulässigen Werte sind Sync, ASync.
Inhalt String Ja Inhalt der Datei.

Ausgabeparameter der Aktion „PushIDoc“

Bei erfolgreicher Aktion wird der Status 200 (OK) zurückgegeben.

Ein Beispiel zum Konfigurieren der PushIDoc-Aktion finden Sie unter Beispiele für Aktionen.

Aktion „ExecuteCustomQuery“

Mit dieser Aktion können Sie eine benutzerdefinierte Abfrage ausführen.

So erstellen Sie eine benutzerdefinierte Abfrage:

  1. Folgen Sie der detaillierten Anleitung zum Hinzufügen einer Connectors-Aufgabe.
  2. Wählen Sie beim Konfigurieren der Connector-Aufgabe als Aktionstyp Aktionen aus.
  3. Wählen Sie in der Liste Aktion die Option Benutzerdefinierte Abfrage ausführen aus und klicken Sie dann auf Fertig.

    Bild mit Befehl „execute-custom-query-action“ Bild mit Befehl „execute-custom-query-action“

  4. Maximieren Sie den Bereich Task Input und führen Sie dann die folgenden Schritte aus:
    1. Geben Sie in das Feld Zeitlimit nach die Anzahl der Sekunden ein, die gewartet werden soll, bis die Abfrage ausgeführt wird.

      Standardwert: 180 Sekunden.

    2. Geben Sie im Feld Maximale Zeilenanzahl die maximale Anzahl von Zeilen ein, die von der Datenbank zurückgegeben werden sollen.

      Standardwert: 25.

    3. Klicken Sie auf Benutzerdefiniertes Script bearbeiten, um die benutzerdefinierte Abfrage zu aktualisieren. Das Dialogfeld Skripteditor wird geöffnet.

      Bild mit benutzerdefinierter SQL-Abfrage Bild mit benutzerdefinierter SQL-Abfrage

    4. Geben Sie im Dialogfeld Skripteditor die SQL-Abfrage ein und klicken Sie auf Speichern.

      Sie können in einer SQL-Anweisung ein Fragezeichen (?) verwenden, um einen einzelnen Parameter darzustellen, der in der Liste der Abfrageparameter angegeben werden muss. Mit der folgenden SQL-Abfrage werden beispielsweise alle Zeilen aus der Tabelle Employees ausgewählt, die den in der Spalte LastName angegebenen Werten entsprechen:

      SELECT * FROM Employees where LastName=?

    5. Wenn Sie Fragezeichen in Ihrer SQL-Abfrage verwendet haben, müssen Sie den Parameter hinzufügen. Klicken Sie dazu für jedes Fragezeichen auf + Parameternamen hinzufügen. Beim Ausführen der Integration ersetzen diese Parameter die Fragezeichen (?) in der SQL-Abfrage nacheinander. Wenn Sie beispielsweise drei Fragezeichen (?) hinzugefügt haben, müssen Sie drei Parameter in der richtigen Reihenfolge hinzufügen.

      Bild mit add-query-param Bild mit add-query-param

      So fügen Sie Abfrageparameter hinzu:

      1. Wählen Sie in der Liste Typ den Datentyp des Parameters aus.
      2. Geben Sie im Feld Wert den Wert des Parameters ein.
      3. Wenn Sie mehrere Parameter hinzufügen möchten, klicken Sie auf + Suchparameter hinzufügen.

Bei erfolgreicher Ausführung gibt diese Aktion den Status 200 (OK) mit einem Antworttext mit den Abfrageergebnissen zurück.

Aktionsbeispiele

Beispiel – Datensatz erstellen

In diesem Beispiel wird mit der Aktion BAPI_MATERIAL_SAVEDATA ein metrialer Datensatz erstellt.

  1. Klicken Sie im Dialogfeld Configure connector task auf Actions.
  2. Wählen Sie die Aktion BAPI_MATERIAL_SAVEDATA aus und klicken Sie auf Fertig.
  3. Klicken Sie im Abschnitt Task Input der Aufgabe Connectors auf connectorInputPayload und geben Sie dann einen Wert ähnlich dem folgenden in das Feld Feld Default Value:
    {
    "HEADDATA": "{\"MATERIAL\":\"000000000000009001\",\"IND_SECTOR\":\"M\",\"MATL_TYPE\":\"HALB\",\"BASIC_VIEW\":\"X\"}",
    "CLIENTDATA" : "{\"MATL_GROUP\":\"00107\",\"BASE_UOM\":\"KG\"}",
    "CLIENTDATAX" : "{\"MATL_GROUP\":\"X\",\"BASE_UOM\":\"X\"}",
    "MATERIALDESCRIPTION" : "{\"LANGU\":\"E\",\"MATL_DESC\":\"Classification Google\"}"
    }
  4. Wenn die Aktion erfolgreich ist, connectorOutputPayload-Antwort der Aufgabe von BAPI_MATERIAL_SAVEDATA hat einen Wert ähnlich dem folgenden:

    [{
    "RETURN_TYPE": "S",
    "RETURN_ID": "MM",
    "RETURN_NUMBER": 356,
    "RETURN_MESSAGE": "The material 9001 has been created or extended",
    "RETURN_LOG_NO": "",
    "RETURN_LOG_MSG_NO": 0,
    "RETURN_MESSAGE_V1": "9001",
    "RETURN_FIELD": "",
    "RETURN_SYSTEM": "T90CLNT090",
    "RESULT_TABLE": null
    }]

Beispiel – Datensatz aktualisieren

In diesem Beispiel wird ein metrialer Datensatz mithilfe der Aktion BAPI_MATERIAL_SAVEDATA aktualisiert.

  1. Klicken Sie im Dialogfeld Configure connector task auf Actions.
  2. Wählen Sie die Aktion BAPI_MATERIAL_SAVEDATA aus und klicken Sie auf Fertig.
  3. Klicken Sie im Bereich Aufgabeneingabe der Aufgabe Connectors auf connectorInputPayload und geben Sie dann einen Wert ähnlich dem folgenden in das Feld Default Value ein:
    {
    "HEADDATA": "{\"MATERIAL\":\"000000000000009000\",\"IND_SECTOR\":\"A\",\"MATL_TYPE\":\"FHMI\",\"BASIC_VIEW\":\"X\"}",
    "CLIENTDATA": "{\"MATL_GROUP\":\"013\",\"BASE_UOM\":\"ST\"}",
    "CLIENTDATAX": "{\"MATL_GROUP\":\"X\",\"BASE_UOM\":\"X\"}",
    "MATERIALDESCRIPTION": "{\"LANGU\":\"E\",\"MATL_DESC\":\"Classification Googlecloud\"}"
    }
  4. Wenn die Aktion erfolgreich war, hat der Antwortparameter connectorOutputPayload der Aufgabe BAPI_MATERIAL_SAVEDATA einen Wert, der in etwa so aussieht:

    [{
    "RETURN_TYPE": "S",
    "RETURN_ID": "MM",
    "RETURN_NUMBER": 356,
    "RETURN_MESSAGE": "The material 9000 has been created or extended",
    "RETURN_LOG_NO": "",
    "RETURN_LOG_MSG_NO": 0,
    "RETURN_MESSAGE_V1": "9000",
    "RETURN_PARAMETER": "",
    "RETURN_ROW": 0,
    "RETURN_FIELD": "",
    "RETURN_SYSTEM": "T90CLNT090",
    "RESULT_TABLE": null
    }]

Beispiel – Datensatz löschen

In diesem Beispiel wird ein metrialer Datensatz mithilfe der Aktion BAPI_MATERIAL_SAVEDATA gelöscht.

  1. Klicken Sie im Dialogfeld Configure connector task auf Actions.
  2. Wählen Sie die Aktion BAPI_MATERIAL_SAVEDATA aus und klicken Sie auf Fertig.
  3. Klicken Sie im Bereich Aufgabeneingabe der Aufgabe Connectors auf connectorInputPayload und geben Sie dann einen Wert ähnlich dem folgenden in das Feld Default Value ein:
    {
    "HEADDATA": "{\"MATERIAL\":\"000000000000009000\",\"BASIC_VIEW\":\"X\"}",
    "CLIENTDATA": "{\"DEL_FLAG\":\"X\"}",
    "CLIENTDATAX": "{\"DEL_FLAG\":\"X\"}"
    }
  4. Wenn die Aktion erfolgreich ist, connectorOutputPayload-Antwort der Aufgabe von BAPI_MATERIAL_SAVEDATA hat einen Wert ähnlich dem folgenden:

    [{
    "RETURN_TYPE": "S",
    "RETURN_ID": "MM",
    "RETURN_NUMBER": 356,
    "RETURN_LOG_NO": "",
    "RETURN_LOG_MSG_NO": 0,
    "RETURN_MESSAGE_V1": "9000",
    "RETURN_PARAMETER": "",
    "RETURN_ROW": 0,
    "RETURN_FIELD": "",
    "RETURN_SYSTEM": "T90CLNT090",
    "RESULT_TABLE": null
    }]

Beispiel – Daten mehrerer Datentypen erstellen

In diesem Beispiel werden Daten mit mehreren Datentypen mithilfe der Aktion ZFM_GCP_MULTIDATA_TAB erstellt.

  1. Klicken Sie im Dialogfeld Configure connector task auf Actions.
  2. Wählen Sie die Aktion ZFM_GCP_MULTIDATA_TAB aus und klicken Sie auf Fertig.
  3. Klicken Sie im Abschnitt Task Input der Aufgabe Connectors auf connectorInputPayload und geben Sie dann einen Wert ähnlich dem folgenden in das Feld Feld Default Value:
    {
    "T_TABLE": "{\"ZACCP\":\"111\",\"ZCHAR\":\"CHARACTER1\",\"ZCLNT\":\"100\",\"ZCUKY\":\"INR\",\"ZCURR\": 200,\"ZDATS\": \"20231213\",\"ZINT1\": 45,\"ZINT2\":54,\"ZDEC\": 0.12,\"ZFLTP\": 1234,\"ZLANG\":\"E\",\"ZNUMC\":\"110\",\"ZPREC\": 3,\"ZQUAN\": 188.0,\"ZRAW\":\"01010008010101050401\",\"ZTIMS\": \"103056\",\"ZUNIT\":\"11\",\"ZINT4P\": 45,\"ZINT4\": 54,\"ZLRAW\":\"0101000801010105040100030101010300040000\"}",
    "IM_INPUT_1": "{\"ZACCP\":\"222\",\"ZCHAR\":\"CHARACTER1\",\"ZCLNT\":\"100\",\"ZCUKY\":\"INR\",\"ZCURR\": 200,\"ZDATS\": \"20231213\",\"ZINT1\": 45,\"ZINT2\":54,\"ZDEC\": 0.12,\"ZFLTP\": 1234,\"ZLANG\":\"E\",\"ZNUMC\":\"110\",\"ZPREC\": 3,\"ZQUAN\": 188.0,\"ZRAW\":\"01010008010101050401\",\"ZTIMS\": \"103056\",\"ZUNIT\":\"11\",\"ZINT4P\": 45,\"ZINT4\": 54,\"ZLRAW\":\"0101000801010105040100030101010300040000\"}",
    "IM_INPUT_2": "{\"ZSTRING\": \"HI Google\",\"ZSSTRING\": \"HI Google How are you\"}"
    }
  4. Wenn die Aktion erfolgreich ist, connectorOutputPayload-Antwort der Aufgabe von ZFM_GCP_MULTIDATA_TAB hat einen Wert ähnlich dem folgenden:

    [{
    "EX_OUTPUT_1_ZACCP": 222,
    "EX_OUTPUT_1_ZCHAR": "CHARACTER1",
    "EX_OUTPUT_1_ZCLNT": "100",
    "EX_OUTPUT_1_ZCUKY": "INR",
    "EX_OUTPUT_1_ZCURR": 200,
    "EX_OUTPUT_1_ZDATS": "2023-12-13",
    "EX_OUTPUT_1_ZRAW": "01010008010101050401",
    "EX_OUTPUT_1_ZTIMS": "10:30:56",
    "EX_OUTPUT_1_ZUNIT": "11",
    "EX_OUTPUT_1_ZINT4P": 45,
    "EX_OUTPUT_1_ZINT4": 54,
    "EX_OUTPUT_1_ZLRAW": "0101000801010105040100030101010300040000\u0000",
    "EX_OUTPUT_2_ZSTRING": null,
    "EX_OUTPUT_2_ZSSTRING": null,
    "RESULT_TABLE": null,
    "T_TABLE_ZACCP": null,
    "T_TABLE_ZCHAR": null,
    "T_TABLE_ZCLNT": null,
    "T_TABLE_ZQUAN": null,
    "T_TABLE_ZRAW": null,
    "T_TABLE_ZTIMS": null,
    "T_TABLE_ZUNIT": null
    },{
    "EX_OUTPUT_1_ZACCP": null,
    "EX_OUTPUT_1_ZCHAR": null,
    "EX_OUTPUT_1_ZCLNT": null,
    "EX_OUTPUT_1_ZCUKY": null,
    "EX_OUTPUT_1_ZRAW": null,
    "T_TABLE_ZLANG": null,
    "T_TABLE_ZNUMC": null,
    "T_TABLE_ZPREC": null,
    "T_TABLE_ZQUAN": null,
    "T_TABLE_ZRAW": null,
    "T_TABLE_ZTIMS": null,
    "T_TABLE_ZUNIT": null
    },{
    "EX_OUTPUT_1_ZACCP": null,
    "EX_OUTPUT_1_ZCHAR": null,
    "EX_OUTPUT_1_ZCLNT": null,
    "EX_OUTPUT_1_ZCUKY": null,
    "EX_OUTPUT_1_ZCURR": null,
    "EX_OUTPUT_1_ZDATS": null,
    "EX_OUTPUT_1_ZDEC": null,
    "EX_OUTPUT_1_ZQUAN": null,
    "T_TABLE_ZNUMC": 110,
    "T_TABLE_ZPREC": 3,
    "T_TABLE_ZQUAN": 188,
    "T_TABLE_ZRAW": "01010008010101050401",
    "T_TABLE_ZTIMS": "10:30:56",
    "T_TABLE_ZUNIT": "11"
    }]

Beispiel – IDoc übertragen

In diesem Beispiel wird ein IDoc an SAP ERP gesendet.

  1. Klicken Sie im Dialogfeld Configure connector task auf Actions.
  2. Wählen Sie die Aktion PushIDoc aus und klicken Sie auf Fertig.
  3. Klicken Sie im Abschnitt Task Input der Aufgabe Connectors auf connectorInputPayload und geben Sie dann einen Wert ähnlich dem folgenden in das Feld Feld Default Value:
    {
    "Content": "\n\n\n EDI_DC40\n 800\n 0000000008604824\n 740\n 53\n 2\n \n MATMAS05\n MATMAS\n ZLS_QA23\n LS\n ZLS_QA23\n SAPSA1\n LS\n SA1CLNT800\n 20230218\n 232556\n\n\n 005\n 000000000000000012\n 20170328\n 42039\n 20170727\n 42039\n KLVC\n FERT\n M\n 02\n BG\n 000\n 002\n 0.000\n 0.000\n KGM\n 0.000\n 0001\n 0.000\n 0.000\n 0.000\n 0.000\n 0.000\n",
    "FileType": "XML",
    "Mode": "ASync"
    }
  4. . Wenn die Aktion erfolgreich ist, connectorOutputPayload-Antwort der Aufgabe von PushIDoc hat einen Wert ähnlich dem folgenden:

    [{
    "Result": "Success",
    "Message": "Push IDoc success"
    }]

Beispiele für Entitätsvorgänge

In diesem Abschnitt wird gezeigt, wie Sie einige Entitätsvorgänge in diesem Connector ausführen.

Beispiel: Alle Einträge auflisten

In diesem Beispiel werden alle Datensätze in der Entität T001 aufgelistet.

  1. Klicken Sie im Dialogfeld Configure connector task auf Entities.
  2. Wählen Sie in der Liste Entity die Option T001 aus.
  3. Wählen Sie den Vorgang List aus und klicken Sie auf Fertig.
  4. Optional können Sie im Abschnitt Task Input der Aufgabe Connectors Sie können die Ergebnisse filtern, indem Sie eine Filterklausel festlegen. Geben Sie den Wert der Filterklausel immer in einfache Anführungszeichen (') ein.

Beispiel: Datensatz aus einer Entität abrufen

In diesem Beispiel wird ein Datensatz mit der angegebenen ID von der Entität T001 abgerufen.

  1. Klicken Sie im Dialogfeld Configure connector task auf Entities.
  2. Wählen Sie in der Liste Entity die Option T001 aus.
  3. Wählen Sie den Vorgang Get aus und klicken Sie auf Fertig.
  4. Klicken Sie im Bereich Aufgabeneingabe der Aufgabe Connectors auf EntityId und geben Sie dann 0001 in das Feld Standardwert ein.

    Hier ist 0001 eine eindeutige Eintrags-ID in der Entität T001.

Große Datenmengen lesen

Oft muss der SAP ERP-Connector große Datenmengen aus Ihrem SAP-Backend lesen. Dieses wird der Ansatz zum Lesen großer Daten beschrieben.

Der SAP ERP-Connector ruft mit der Funktion SAP RFC_READ_TABLE Daten aus SAP-Tabellen ab. Diese Funktion hat eine feste Größe von 512 Byte. Es kann für jede Datenzeile gepuffert werden, Sie können nicht mehr Spalten auswählen, als in diesen Puffer passen würden. Wenn Sie mehr als 512 Byte auswählen, wird beim Ausführen der Integration die Ausnahme DATA_BUFFER_EXCEEDED ausgegeben. Sie weist darauf hin, dass Sie die maximale zulässige Puffergröße pro Zeile überschritten haben und weniger Spalten auswählen müssen.

Um dieses Problem zu beheben, können Sie den Code für eine Custom RFC_READ_TABLE, das dem SAP RFC_READ_TABLE ähnelt, aber einen größeren Zwischenspeicher für die DATA_BUFFER_EXCEEDED Problem.

Benutzerdefinierte Lesetabellenfunktion verwenden

Der Connector unterstützt ein Custom RFC_READ_TABLE, das dem SAP RFC_READ_TABLE hat, aber der Puffer ist größer, damit das Problem DATA_BUFFER_EXCEEDED behoben werden kann.

Benutzerdefinierten RFC_READ_TABLE im SAP-Back-End erstellen

Führen Sie die folgenden Schritte aus, um die Beispiel-RFC_READ_TABLE-Anfrage zu verwenden.

  1. Verwenden Sie die RFC_READ_TABLE-Funktion als Vorlage für die neue Funktion: Wählen Sie den Transaktionscode SE37 aus und und kopieren Sie RFC_READ_TABLE in eine neue Funktionsgruppe oder Ihre funktionierende Funktionsgruppe. In diesem Beispiel wird RFC_READ_TABLE in Z_CUSTOM_RFC_TABLE kopiert.
  2. Wählen Sie auf der SAP-Seite auf dem Tab Attributes (Attribute) die Option Remote Enabled Module (Remote-fähiges Modul) aus.
  3. Legen Sie auf dem Tab Tabellen den Parameter DATA auf CHAR8000 fest. Möglicherweise müssen Sie mit der rechten Maustaste klicken und dann auf Display -> Ändern klicken.
  4. Geben Sie auf dem Tab Quellcode den benutzerdefinierten RFC-Code aus der Lesetabelle ein. Weitere Informationen finden Sie in der Datei sample Z_CUSTOM_RFC_TABLE_function.txt.
  5. Klicken Sie auf Speichern.
  6. Definieren Sie die Importe, Tabellen und Ausnahmen wie in der bereitgestellten benutzerdefinierten Lesetabelle dokumentiert.
  7. Aktivieren Sie das Funktionsmodul.

Benutzerdefinierte schreibgeschützte Tabelle für ABAP 7.52

Wenn Sie ABAP 7.52 oder höher verwenden, lesen Sie den Artikel Beispiel Z_CUSTOM_RFC_TABLE_function_ABAP752.txt. Die Beispielfunktion ist für ABAP Version 7.52 und höher vorgesehen. Sie ähnelt der Funktion Z_CUSTOM_RFC_TABLE, Es nutzt jedoch die in ABAP 7.52 neu verfügbaren Keywords, um die Paginierung innerhalb in der Datenbank statt im ABAP-Skript selbst. Dadurch wird die Paginierung viel effizienter, und verbessert die Leistung bei der Arbeit mit großen Tabellen. Es wird empfohlen, die Methode Z_CUSTOM_RFC_TABLE_752 RFC, wenn möglich.

Verbindungen mit Terraform erstellen

Mit dem Terraform-Code Ressource, um eine neue Verbindung zu erstellen.

Informationen zum Anwenden oder Entfernen einer Terraform-Konfiguration finden Sie unter Grundlegende Terraform-Befehle.

Eine Beispiel-Terraform-Vorlage zum Erstellen von Verbindungen finden Sie unter Beispielvorlage.

Wenn Sie diese Verbindung mithilfe von Terraform erstellen, müssen Sie in der Terraform-Konfigurationsdatei die folgenden Variablen festlegen:

Parametername Datentyp Erforderlich Beschreibung
Client STRING Wahr Der Client, der sich beim SAP-System authentifiziert.
Gruppe STRING Falsch Die verwendete Anmeldegruppe. Dies muss in der Regel nur bei einer Verbindung zu einem SAP-System angegeben werden, das Load Balancing verwendet.
message_server STRING Falsch Der Message Server muss angegeben werden, wenn eine Verbindung zu einem SAP-System hergestellt wird, das Load Balancing verwendet.
read_table_function STRING Falsch Die Funktion, die zum Lesen von Tabellendaten verwendet werden soll.
connection_scheme ENUM Falsch Gibt an, ob Sie eine Verbindung zu einem SAP-System mit einem Nachrichtenserver (GroupServer) oder ohne einen (ApplicationServer) herstellen. Unterstützte Werte: ApplicationServer, GroupServer
system_id STRING Falsch Die System-ID oder der R3Name des SAP-Systems ist ein String mit maximal drei Zeichen. Es wird häufig bei Load-Balancing-Verbindungen verwendet.
system_number STRING Wahr Die Zahl, durch die das Zielsystem definiert ist. Wird beim Festlegen der Hostverbindungseigenschaft verwendet.
project_id STRING Wahr Die ID des Google Cloud-Projekts, in dem sich der Cloud Storage-Bucket mit der SAP JCo-JAR-Datei befindet.
Bucket STRING Wahr Der Name des Buckets, der die Dateien sapjco3.jar und libsapjco3.so enthält
sapjco3_jar STRING Wahr Objekt-ID für sapjco3.jar
libsapjco3_so STRING Wahr Die Objekt-ID für libsapjco3.so
snc_lib STRING Falsch Objekt-ID für die SNC-Bibliothek
snc_mode BOOLEAN Falsch Ein boolescher Wert, der bestimmt, ob Sie SNC verwenden. Setzen Sie dies auf „true“, um SNC zu verwenden.
snc_name STRING Falsch Eine optionale Eingabe mit dem Namen Ihrer SNC-Verbindung.
snc_qop ENUM Falsch Die Schutzqualität deiner SNC-Verbindung. Gültige Werte sind 1, 2, 3, 8 oder 9. Sie entsprechen den folgenden Schutzstufen: 1 Nur Authentifizierung anwenden. 2. Integritätsschutz (Authentifizierung) anwenden 3. Ergreifen Sie Datenschutzmaßnahmen (Integrität und Authentifizierung). 8 Standardschutz anwenden 9 Maximalen Schutz anwenden Unterstützte Werte: 1, 2, 3, 8, 9
snc_partner_name STRING Falsch Der SNC-Name des Anwendungsservers. Diese Eingabe ist bei Verwendung von SNC erforderlich.
query_mode ENUM Falsch Bestimmt, welche SAP-Tabellen gegebenenfalls als Ansichten angezeigt werden. Unterstützte Werte: Global, Local, All, None
table_mode ENUM Falsch Bestimmt, welche SAP-Tabellen gegebenenfalls als Ansichten angezeigt werden. Unterstützte Werte: TransparentApplication, TransparentCustomer, TransparentSystem, Pooled, Cluster, All, None
Ausführlichkeit STRING Falsch Detaillierungsgrad der Verbindung, variiert von 1 bis 5. Bei einem höheren Ausführlichkeitsgrad werden alle Kommunikationsdetails (Anfrage-, Antwort- und SSL-Zertifikate) protokolliert.

SAP ERP-Verbindung in einer Integration verwenden

Nachdem Sie die Verbindung erstellt haben, ist sie in beiden Apigee-Integration und Anwendungsintegration Sie können die Verbindung über die Connectors-Aufgabe in einer Integration.

  • Informationen zum Erstellen und Verwenden der Connectors-Aufgabe in Apigee Integration finden Sie unter Connectors-Aufgabe.
  • Informationen zum Erstellen und Verwenden der Connectors-Aufgabe in Application Integration finden Sie unter Tasks für Connectors.

Hilfe von der Google Cloud-Community erhalten

Sie können Ihre Fragen und Anregungen zu diesem Connector in der Google Cloud-Community unter Cloud-Foren posten.

Nächste Schritte