SAP ERP

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

Hinweise

Führen Sie die folgenden Aufgaben aus, bevor Sie den SAP ERP-Connector verwenden:

  • In Ihrem Google Cloud-Projekt:
    • Weisen Sie dem Nutzer, der den Connector konfiguriert, die IAM-Rolle roles/connectors.admin zu.
    • 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 Verbindungsdetails folgende Schritte aus:
    1. Connector: Wählen Sie SAP ERP aus der Drop-down-Liste der verfügbaren Connectors 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 unter Beschreibung eine Beschreibung für die Verbindungsinstanz ein.
    5. Dienstkonto: Wählen Sie ein Dienstkonto, das über die erforderlichen Rollen verfügt.
    6. Client: Der Client, der sich beim SAP-System authentifiziert.
    7. System-ID: Die System-ID oder der R3Name des SAP-Systems ist ein String mit maximal drei Zeichen. Es wird häufig für Load-Balancing-Verbindungen verwendet.
    8. Systemnummer: Die Zahl, durch die das Zielsystem definiert ist. Wird beim Festlegen der Eigenschaft „Hostverbindung“ verwendet.
    9. Projekt-ID: Die ID des Google Cloud-Projekts, in dem sich der GCS-Bucket mit der SAP JCo-JAR-Datei befindet.
    10. Bucket: Der Name des Buckets, der die Dateien sapjco3.jar und libsapjco3.so enthält.
    11. Jaco-JAR-Objekt-ID: Objekt-ID der JCo-JAR-Datei.
    12. libsapjco3-Objekt-ID: Objekt-ID der libsapjco3-JAR-Datei.
    13. Tabellenmodus: Wählen Sie die SAP-Tabelle aus, die als Ansicht angezeigt werden soll.
    14. SNC_LIB-Objekt-ID: Objekt-ID der SNC-Bibliothek.
    15. PSE-Name: Name der Personal Security Environment-Datei (PSE), die für den Bucket gilt. In einer PSE-Datei werden das Paar aus öffentlichem und privatem Schlüssel sowie X.509-Zertifikate in einer ASN.1-Struktur gespeichert.
    16. Gruppe: Der Gruppenname für die Anmeldung. Dieser wird normalerweise angegeben, wenn Ihr SAP-System Load-Balancer verwendet.
    17. Nachrichtenserver: Name des Nachrichtenservers, der beim Herstellen einer Verbindung zu dem SAP-System verwendet werden soll, das Load-Balancer verwendet.
    18. Tabellenfunktion lesen: Name der Funktion, die zum Lesen von Tabellen verwendet werden soll. Weitere Informationen finden Sie unter Benutzerdefinierte Lesetabellenfunktion verwenden.
    19. Verbindungsschema: Wählen Sie ein Verbindungsschema aus, das für die Verbindung zu Ihrem SAP-System verwendet werden soll.
    20. System-ID: Die System-ID oder der R3Name des SAP-Systems. Sie können maximal 3 Zeichen eingeben.
    21. SNC-Sicherheitscode: Wählen Sie das Secret Manager-Secret des Sicherheitscodes der SNC-Bibliothek aus.
    22. Secret-Version: Wählen Sie die Secret-Version aus.
    23. SNC mode (SNC-Modus): Wählen Sie diese Option aus, um SNC für die Authentifizierung zwischen Integration Connectors und Ihrem SAP-System zu aktivieren.
    24. SNC-Name: Geben Sie einen Namen für die SNC-Verbindung ein.
    25. SNC qop: Wählen Sie ein Schutzniveau aus. Folgende Stufen werden unterstützt:
      • 1: Nur die Authentifizierung anwenden.
      • 2 – Integritätsschutz anwenden Dazu gehört auch der Authentifizierungsschutz.
      • 3 – Wenden Sie Datenschutz an. Dies umfasst auch den Integritäts- und Authentifizierungsschutz.
      • 8: Wenden Sie den Standardschutz an.
      • 9: Wenden Sie den maximalen Schutz an.
    26. SNC-Partnername: Geben Sie den SNC-Namen des Anwendungsservers ein.
    27. Abfragemodus: Wählen Sie aus, welche SAP-Tabellen als Ansichten angezeigt werden sollen.
    28. Durchsuchbare Ansichten: Geben Sie eine durch Kommas getrennte Liste der Ansichten ein, die angezeigt werden sollen. Beispiel: ViewA,ViewB,ViewC.
    29. Ausführlichkeitsstufe: Geben Sie die Ausführlichkeitsstufe für die Protokollierung ein. Die unterstützten Werte liegen zwischen 1 und 5. Ein höherer Wert bedeutet, dass in den Logs mehr Details verfügbar sind.
    30. Konfigurieren Sie optional die Einstellungen für 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.

    31. Klicken Sie optional auf + LABEL HINZUFÜGEN, um der Verbindung ein Label in Form eines Schlüssel/Wert-Paars hinzuzufügen.
    32. 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. Zieltyp: Wählen Sie einen Zieltyp aus.
      1. Geben Sie im Feld Hostadresse den Hostnamen oder die IP-Adresse des Ziels ein.
        1. Wenn Sie eine private Verbindung zu Ihren Back-End-Systemen herstellen möchten, gehen Sie so vor:
          1. Erstellen Sie einen PSC-Dienstanhang.
          2. Erstellen Sie einen Endpunktanhang und geben Sie dann die Details des Endpunktanhangs in das Feld Hostadresse ein.
        2. 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.

      Klicken Sie auf + Ziel hinzufügen, um weitere Ziele einzugeben.

    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. Überprüfen: Prüfen Sie Ihre Verbindungs- und Authentifizierungsdetails.
  8. 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
    • Passwort: Secret Manager-Secret mit dem Passwort, das mit dem Connector verknüpft ist.

Benutzerdefinierte Lesetabellenfunktion verwenden

RFC_READ_TABLE

Der Connector verwendet die SAP-Funktion RFC_READ_TABLE, um Daten aus SAP-Tabellen abzurufen.

Es gibt jedoch gewisse Einschränkungen. Sehen Sie sich als Beispiel die Ausnahme DATA_BUFFER_EXCEEDED an. SAP RFC_READ_TABLE hat eine feste Größe von 512 Byte. Er kann für jede Datenzeile gepuffert werden. Daher können Sie nicht mehr Spalten auswählen, als in diesen Zwischenspeicher passen würden. Wenn Sie mehr als 512 Byte auswählen, wird eine Ausnahme ausgegeben, die darauf hinweist, dass Sie die maximal zulässige Puffergröße pro Zeile überschritten haben und weniger Spalten auswählen müssen.

RFC_READ_TABLE2

Der Connector unterstützt auch die Tabellenlesefunktion RFC_READ_TABLE2. Sie können die aktive Tabellenlesefunktion auf RFC_READ_TABLE2 umstellen, indem Sie „ReadTableFunction“ auf /SAPDS/RFC_READ_TABLE2 setzen.

Benutzerdefinierte Funktionen zum Lesen von Tabellen

RFC für benutzerdefinierte Lesetabelle installieren

Der Connector enthält den Code für Z_CUSTOM_READ_TABLE, einen benutzerdefinierten RFC für schreibgeschützte Tabellen, der dem RFC RFC_READ_TABLE von SAP ähnelt, aber einen größeren Puffer hat, um das Problem DATA_BUFFER_EXCEEDED zu lösen und andere RFC_READ_TABLE-Einschränkungen zu umgehen.

In den folgenden Schritten wird gezeigt, wie Sie den enthaltenen benutzerdefinierten schreibgeschützten RFC verwenden, um Einschränkungen mit dem Standard-RFC_READ_TABLE zu umgehen.

  1. Verwenden Sie die Funktion RFC_READ_TABLE als Vorlage für die neue Funktion: Wählen Sie den Transaktionscode SE37 und die SDTX-Funktionsgruppe aus und kopieren Sie RFC_READ_TABLE in eine neue Funktionsgruppe oder Ihre funktionierende Funktionsgruppe. In diesem Beispiel wird RFC_READ_TABLE nach Z_CUSTOM_READ_TABLE kopiert.
  2. Wählen Sie auf dem Tab „Attributes“ (Attribute) des SAP-Bildschirms die Option Remote Enabled Module aus.
  3. Setzen Sie auf dem Tab „Tables“ (Tabellen) den Parameter DATA auf CHAR8000 (möglicherweise müssen Sie mit der rechten Maustaste klicken und dann auf Display -> Change klicken).
  4. Fügen Sie auf dem Tab „Quellcode“ den Beispielquellcode für das Ersatzfunktionsmodul RFC_READ_TABLE ein, das sich im Unterordner db des Installationsverzeichnisses befindet. Der Code befindet sich in Z_CUSTOM_READ_TABLE.txt, allerdings wird die Datei Z_CUSTOM_READ_TABLE_752.txt bevorzugt, wenn auf Ihrer SAP ERP-Instanz die ABAP-Version 7.52 oder höher ausgeführt wird (siehe Abschnitt unten). Klicken Sie auf Speichern.
  5. Definieren Sie die Importe, Tabellen und Ausnahmen wie in der bereitgestellten benutzerdefinierten Lesetabelle dokumentiert.
  6. Aktivieren Sie das Funktionsmodul und setzen Sie in Ihrer Verbindungszeichenfolge die Funktion ReadTableFunction auf Z_CUSTOM_READ_TABLE oder den Namen Ihres Funktionsmoduls.

Benutzerdefinierte ABAP 7.52-Lesetabelle

Neben Z_CUSTOM_READ_TABLE.txt gibt es auch eine Z_CUSTOM_READ_TABLE_752.txt-Datei, die für ABAP Version 7.52 und höher entwickelt wurde. Sie entspricht größtenteils Z_CUSTOM_READ_TABLE, nutzt jedoch neu verfügbare Schlüsselwörter in ABAP 7.52, um Paging innerhalb der Datenbank statt im ABAP-Skript selbst durchzuführen. Dadurch wird das Paging bei großen Tabellen effizient.

Es wird empfohlen, nach Möglichkeit den RFC Z_CUSTOM_READ_TABLE_752 zu verwenden.

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 solche 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. 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 sieben Transaktionen pro Sekunde und Knoten verarbeiten und Transaktionen über dieses Limit hinaus drosseln. Standardmäßig weisen Integration Connectors einer Verbindung zwei Knoten zu, um die Verfügbarkeit zu verbessern.

Informationen zu den Limits, die für Integration Connectors gelten, finden Sie hier.

Beispiele für die Verbindungskonfiguration

In diesem Abschnitt sind die Beispielwerte für die verschiedenen Felder aufgeführt, die Sie beim Herstellen der Verbindung konfigurieren würden.

ApplicationServer-Verbindungstyp

Die folgende Tabelle enthält die Beispielkonfigurationswerte für den Verbindungstyp ApplicationServer. Informationen zu den Pflichtfeldern und zu den optionalen Feldern finden Sie auf der Oberfläche zum Erstellen von Verbindungen in der Console.

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

GroupServer-Verbindungstyp

Die folgende Tabelle enthält die Beispielkonfigurationswerte für den Verbindungstyp GroupServer. Informationen zu den Pflichtfeldern und zu den optionalen Feldern finden Sie in der Oberfläche zum Erstellen von Verbindungen in der Console.

Feldname Beispielwert
Region us-central1
Connector SAP ERP
Connector-Version 1
Connector-Name saperp-GroupServer-conn
Beschreibung
Dienstkonto xxxxxxxxx-compute@developer.gserviceaccount.com
Client 800
Systemnummer 00
Projekt-ID xxxx-gcp-project
Bucket sap-erp-bucket
JSC Jar-Objekt-ID sapjco3.jar
libsapjco3-Objekt-ID 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ührlichkeitsstufe 5
Mindestanzahl von Knoten 2
Höchstanzahl von Knoten 50
Hostadresse 10.30.X.XX oder Router-String eines externen SAP-Systems.
Authentifizierung Nutzerpasswort
Nutzername 12345
Passwort xyz@12.345
versions 1

Verbindungstyp des X509-Zertifikats

Die folgende Tabelle enthält die Beispielkonfigurationswerte für den Verbindungstyp X509 certificate. Informationen zu den Pflichtfeldern und zu den optionalen Feldern finden Sie in der Oberfläche zum Erstellen von Verbindungen in der Console.

Feldname Beispielwert
Region us-central1
Connector SAP ERP
Connector-Version 1
Connector-Name saperp-X509Certificate-conn
Beschreibung
Dienstkonto xxxxxxxxx-compute@developer.gserviceaccount.com
Client 800
Systemnummer 00
Projekt-ID xxxx-gcp-project
Bucket sap-erp-bucket
JSC Jar-Objekt-ID sapjco3.jar
libsapjco3-Objekt-ID libsapjco3.so
Tabellenmodus TransparentApplication/TransparentCustomer/TransparentSystem/Pooled/Cluster/None
SNC_LIB-Objekt-ID 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. Setze 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ührlichkeitsstufe 5
Mindestanzahl von Knoten 2
Höchstanzahl von Knoten 50
Hostadresse 10.30.X.XX oder Router-String eines externen SAP-Systems.
Authentifizierung X509Zertifikatbasierte Authentifizierung
X509Certificate Das X509-Zertifikat kann mithilfe eines Dateipfads angegeben werden, der auf eine Datei verweist, die ein X509-Zertifikat im PEM-Format enthält, ein PEM-Blob, das mit dem Header „-----BEGIN ...“ beginnt, oder ein PEM-Blob ohne den Header „-----BEGIN ...“.
versions 1

Aktionen

In diesem Abschnitt sind die vom Connector unterstützten Aktionen aufgeführt. Informationen zum Konfigurieren von Aktionen finden Sie unter Aktionsbeispiele.

Aktion BAPI_MATERIAL_SAVEDATA

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

Eingabeparameter der Aktion BAPI_MATERIAL_SAVEDATA

Parametername Datentyp Erforderlich Beschreibung
KOPFDATEN String Yes Der Eingabeparameter HEADDATA.
KUNDENDATEN String Yes Der Eingabeparameter CLIENTDATA.
CLIENTDATAX String Yes Der Eingabeparameter CLIENTDATAX.
MATERIALBESCHREIBUNG String Yes Die Tabelle MATERIALDESCRIPTION.

Ausgabeparameter der Aktion BAPI_MATERIAL_SAVEDATA

Wenn die Aktion erfolgreich ist, wird der Status 200 (OK) zurückgegeben.

Informationen zum Konfigurieren der Aktion BAPI_MATERIAL_SAVEDATA finden Sie unter Aktionsbeispiele.

ZFM_GCP_MULTIDATA_TAB-Aktion

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

Eingabeparameter der ZFM_GCP_MULTIDATA_TAB-Aktion

Parametername Datentyp Erforderlich Beschreibung
ReturnTables String Yes 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 Yes Die Tabelle T_TABLE.
IM_INPUT_1 String Yes Der Eingabeparameter IM_INPUT_1.
IM_INPUT_2 String Yes Der Eingabeparameter IM_INPUT_2.

Ausgabeparameter der Aktion „ZFM_GCP_MULTIDATA_TAB“

Wenn die Aktion erfolgreich ist, wird der Status 200 (OK) zurückgegeben.

Informationen zum Konfigurieren der Aktion ZFM_GCP_MULTIDATA_TAB finden Sie unter Aktionsbeispiele.

PushIDoc-Aktion

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

Eingabeparameter der PushIDoc-Aktion

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

Ausgabeparameter der PushIDoc-Aktion

Wenn die Aktion erfolgreich ist, wird der Status 200 (OK) zurückgegeben.

Informationen zum Konfigurieren der Aktion PushIDoc finden Sie unter Aktionsbeispiele.

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. Wenn Sie die Connector-Aufgabe konfigurieren, wählen Sie 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: Benutzerdefinierte Abfrageaktion ausführen Bild: Benutzerdefinierte Abfrageaktion ausführen

  4. Maximieren Sie den Bereich Aufgabeneingabe und gehen Sie so vor:
    1. Geben Sie im Feld Zeitlimit nach ein, wie viele Sekunden auf die Ausführung der Abfrage gewartet werden soll.

      Standardwert: 180 Sekunden.

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

      Standardwert: 25.

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

      Bild mit „custom-sql-query“ Bild mit „custom-sql-query“

    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 für die Spalte LastName angegebenen Werten entsprechen:

      SELECT * FROM Employees where LastName=?

    5. Wenn Sie in Ihrer SQL-Abfrage Fragezeichen verwendet haben, müssen Sie den Parameter hinzufügen, indem Sie bei jedem Fragezeichen auf + Parameternamen hinzufügen klicken. 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, das den Parameter „add_query“ zeigt Bild, das den Parameter „add_query“ zeigt

      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 – Eintrag erstellen

In diesem Beispiel wird mithilfe der Aktion BAPI_MATERIAL_SAVEDATA ein Messwertdatensatz 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 Bereich Aufgabeneingabe der Aufgabe Connectors auf connectorInputPayload und geben Sie dann einen Wert ähnlich wie den folgenden in das Feld Default Value ein:
    {
    "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, hat der Antwortparameter connectorOutputPayload der Aufgabe BAPI_MATERIAL_SAVEDATA 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 – Eintrag aktualisieren

In diesem Beispiel wird ein Messwertdatensatz 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 Task Input der Aufgabe Connectors auf connectorInputPayload und geben Sie dann einen Wert wie den 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 ist, hat der Antwortparameter connectorOutputPayload der Aufgabe BAPI_MATERIAL_SAVEDATA einen Wert wie dieser:

    [{
    "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 – Eintrag löschen

In diesem Beispiel wird ein Messwertdatensatz 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 Task Input der Aufgabe Connectors auf connectorInputPayload und geben Sie dann einen Wert wie den 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, hat der Antwortparameter connectorOutputPayload der Aufgabe BAPI_MATERIAL_SAVEDATA einen Wert wie dieser:

    [{
    "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 für mehrere Datentypen erstellen

In diesem Beispiel werden mithilfe der Aktion ZFM_GCP_MULTIDATA_TAB Daten mit mehreren Datentypen 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 Bereich Task Input der Aufgabe Connectors auf connectorInputPayload und geben Sie dann einen Wert wie den folgenden in das Feld Default Value ein:
    {
    "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, hat der Antwortparameter connectorOutputPayload der Aufgabe ZFM_GCP_MULTIDATA_TAB einen Wert wie dieser:

    [{
    "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 das 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 Bereich Task Input der Aufgabe Connectors auf connectorInputPayload und geben Sie dann einen Wert wie den folgenden in das Feld Default Value ein:
    {
    "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, hat der Antwortparameter connectorOutputPayload der Aufgabe PushIDoc einen Wert wie der folgende:

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

Beispiele für Entitätsvorgang

In diesem Abschnitt wird beschrieben, 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 T001-Entität aufgelistet.

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

Beispiel – Datensatz aus einer Entität abrufen

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

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

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

Mit Terraform Verbindungen erstellen

Mit der Terraform-Ressource können Sie eine neue Verbindung erstellen.

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

Ein Beispiel für eine Terraform-Vorlage zum Erstellen von Verbindungen finden Sie unter Beispielvorlage.

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

Parametername Datentyp Erforderlich Beschreibung
client STRING Wahr Der Client, der sich beim SAP-System authentifiziert.
Gruppe STRING Falsch Die verwendete Anmeldegruppe. Dieser muss in der Regel nur angegeben werden, wenn Sie eine Verbindung zu einem SAP-System herstellen, das Load Balancing verwendet.
message_server STRING Falsch Der Nachrichtenserver muss angegeben werden, wenn eine Verbindung zu einem SAP-System mit Load-Balancing hergestellt wird.
read_table_function STRING Falsch Die Funktion, die zum Lesen von Tabellendaten verwendet werden soll.
connection_scheme ENUM Falsch Gibt an, ob Sie mit einem Nachrichtenserver (GroupServer) oder ohne einen (ApplicationServer) eine Verbindung zu einem SAP-System 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 für Load-Balancing-Verbindungen verwendet.
system_number STRING Wahr Zahl, durch die das Zielsystem definiert wird. Wird beim Festlegen der Eigenschaft „Hostverbindung“ 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 Die Objekt-ID für sapjco3.jar
libsapjco3_so STRING Wahr Die Objekt-ID für libsapjco3.so
snc_lib STRING Falsch Die Objekt-ID für die SNC-Bibliothek
snc_mode BOOLEAN Falsch Ein boolescher Wert, der bestimmt, ob Sie SNC verwenden. Setze 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 für deine SNC-Verbindung.Gültige Werte sind 1, 2, 3, 8 oder 9 und entsprechen den folgenden Schutzniveaus: 1 Nur Authentifizierung anwenden. 2 Integritätsschutz anwenden (Authentifizierung) 3. Datenschutz (Integrität und Authentifizierung) 8 Wenden Sie den Standardschutz an. 9 Wenden Sie den maximalen Schutz an. 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 Legt fest, welche SAP-Tabellen als Ansichten angezeigt werden, sofern vorhanden. Unterstützte Werte: Global, Local, All, None
table_mode ENUM Falsch Legt fest, welche SAP-Tabellen als Ansichten angezeigt werden, sofern vorhanden. Unterstützte Werte: TransparentApplication, TransparentCustomer, TransparentSystem, Pooled, Cluster, All, None
Ausführlichkeit STRING Falsch Ausführlichkeitsstufe für die Verbindung (1–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 sowohl in Apigee Integration als auch in Application Integration verfügbar. Sie können die Verbindung über die Connector-Aufgabe in einer Integration verwenden.

  • Informationen zum Erstellen und Verwenden der Connectors-Aufgabe in der Apigee-Integration finden Sie unter Connectors-Task.
  • Informationen zum Erstellen und Verwenden der Aufgabe „Connectors“ in Application Integration finden Sie unter Connectors-Aufgabe.

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