Beispiel für die Verwendung eines Remote-Funktionsaufrufs in SAP

In diesem Beispiel wird beschrieben, wie Sie einen Bot erstellen, der ein Dokument in SAP mit der Methode des Remote-Funktionsaufrufs (Remote Function Call, RFC) erstellt.

Vorbereitungen

Laden Sie das SAP-Java-Verbindungs-Paket und die DLL von der SAP-Website herunter.

Prozedur

  1. Öffnen Sie einen neuen Bot:
    1. Klicken Sie im linken Feld auf Automatisierung.
    2. Klicken Sie auf Neu erstellen > Bot.
    3. Geben Sie im Fenster TaskBot erstellen einen Namen für den Bot ein.
    4. Klicken Sie auf Erstellen und bearbeiten.
  2. Stellen Sie mithilfe der SAP Anwendung über die Aktion Verbinden eine Verbindung her.
    1. Geben Sie in das Feld SAP BAPI-Sitzung Default ein.
    2. Wählen Sie die Option Desktop, suchen und wählen Sie das SAP Java Connector-Paket, das auf Ihrem Gerät verfügbar ist.
      Beispiel: F:\SAP \SAP JCo 3.1.3\Microsoft Windows und Windows Server\64-bit\sapjco3.jar
    3. Wählen Sie die Option Desktop, suchen und wählen Sie die SAP Java Connector-DLL, die auf Ihrem Gerät verfügbar ist.
      Beispiel: F:\SAP \SAP JCo 3.1.3\Microsoft Windows und Windows Server\64-bit\sapjco3.dll
    4. Wählen Sie als Verbindungstyp die Option Gruppe/Server.
    5. Wählen Sie Unsichere Zeichenfolge und geben Sie AWINAAWO12.bcone.com ein, um den Hostnamen für den SAP-Nachrichtenserver anzugeben.
    6. Geben Sie AWINAAWO12.bcone.com in das Feld Gateway Host ein, um eine Verbindung mit dem Server herzustellen.
    7. Geben Sie die folgenden Werte ein:
      Feld Wert
      Anmelde-Gruppe Öffentlich
      Systemnummer 01
      SAP Instanz-System-ID AAI
      Client-Nummer 800
      Anmelde-Sprachcode EN
      Router-Zeichenfolge /H/115.112.148.66/S/3299
    8. Wählen Sie Unsichere Zeichenfolge aus und geben Sie ISR3 ein, um den Nutzernamen anzugeben, den Sie für die Verbindung mit dem SAP-Server verwenden möchten.
    9. Wählen Sie Unsichere Zeichenfolge aus und geben Sie Automation@123 ein, um das Passwort anzugeben, das Sie für die Verbindung mit dem SAP-Server verwenden möchten.
  3. Verwenden Sie die Aktion „Funktion erstellen“, um eine Funktion für die SAP BAPI-Funktion zu erstellen.
    1. Erstellen Sie einen Alias für eine SAP BAPI-Funktion und speichern Sie ihn unter einem Aliasnamen.
    2. Geben Sie Default in das Feld Sitzungsname ein.
    3. Geben Sie BAPI_Post in das Feld Funktionsaliasname ein.
    4. Geben Sie BAPI_ACC_DOCUMENT_POST in das Feld BAPI-Name ein.
      Anmerkung: Der SAP-BAPI-Funktionsname und andere Parameter sind spezifisch für die Kundenumgebung beim Erstellen des Automation 360-Bots.
  4. Um BAPI_ACC_DOCUMENT_POST in SAP zu erstellen, müssen Sie zunächst eine Struktur und Tabellen anlegen. Wählen Sie Struktur erhalten, um Daten aus einer Struktur mit Hilfe des Funktionsalias zu erhalten.
    1. Geben Sie in das Feld BAPI-Funktionsalias BAPI_POST ein (den Alias, den Sie für die SAP BAPI-Funktion mit der Aktion „Funktion erstellen“ angegeben haben).
    2. Geben Sie im Feld Strukturname DOCUMENTHEADER ein (den Namen der Struktur, aus der Sie Daten abrufen möchten).
    3. Geben Sie in das Feld SAP BAPI-Sitzung Default ein, (den Namen der Sitzung, den Sie für die Verbindung mit der SAP-Anwendung in der Aktion Verbinden verwendet haben).
    4. Wählen Sie die Option Alias, um die aus der Struktur abgerufenen Daten zu speichern, und geben Sie Doc in das Feld Struktur-Alias erstellen ein.
  5. Wählen Sie die Aktion Tabelle abrufen aus, um Tabellendaten aus einer Tabelle über den Funktionsalias abzurufen.
    1. Geben Sie in das Feld BAPI-Funktionsalias BAPI_Post ein (den Alias, den Sie für die SAP BAPI-Funktion mit der Aktion Funktion erstellen angegeben haben).
    2. Geben Sie in das Feld Tabellenname ACCOUNTGL ein (den Namen der Tabelle, aus der Sie Daten abrufen möchten).
    3. Geben Sie in das Feld SAP BAPI-Sitzung Default ein, (den Namen der Sitzung, den Sie für die Verbindung mit der SAP-Anwendung in der Aktion Verbinden verwendet haben).
    4. Wählen Sie die Option Alias, um die aus der Tabelle abgerufenen Daten zu speichern, und geben Sie GL in das Feld Tabellenalias erstellen ein.
  6. Wiederholen Sie Schritt 5. In Schritt 5(b) geben Sie den Wert CURRENCYAMOUNT in das Feld Tabellenname und in 5(d) den Wert Currency in das Feld Tabellenalias erstellen ein.
  7. Wählen Sie die Aktion Feldwert festlegen aus, um Daten in der oben erstellten leeren Struktur und Tabelle festzulegen.
    1. In das Feld BAPI-Funktionsalias geben Sie BAPI_Post ein.
    2. Wählen Sie im Feld Quelle die Option Struktur. aus
    3. Geben Sie DOC in das Feld Struktur-Alias ein.
    4. Geben Sie im Feld Feldname USERNAME ein (den Namen des Feldes, in dem Sie Daten festlegen möchten).
    5. Geben Sie im Feld Feldwert sy-uname ein (den Wert, den Sie festlegen möchten)
    6. Geben Sie in das Feld SAP BAPI-Sitzung Default ein.
  8. Wiederholen Sie Schritt 7 siebenmal und geben Sie die gleichen Werte ein, die Sie zuvor in Schritt 7(a), 7(b), 7(c) und 7(f) eingegeben haben. Geben Sie die folgenden Werte für die Schritte 7(d) und 7(e) ein.
    Feldname Feldwert
    BUS_ACT RFBU
    HEADER_TXT TEST BOC BAPI POSTING
    COMP_CODE 1000
    DOC_DATE 20210127
    PSTNG_DATE 20210127
    DOC_TYPE SA
    FIS_PERIOD 00
  9. Wählen Sie die Aktion Struktur erhalten aus.
    1. In das Feld BAPI-Funktionsalias geben Sie BAPI_POST ein.
    2. Geben Sie in das Feld Name der Struktur DOCUMENTHEADER ein.
    3. Geben Sie in das Feld SAP BAPI-Sitzung Default ein.
    4. Wählen Sie die Option Variable, um die aus der Struktur abgerufenen Daten in einer Tabellenvariablen zu speichern. Erstellen Sie die Tabellenvariable Sap-Bapi-Table.
  10. Doppelklicken Sie auf oder ziehen Sie die Aktion Datentabelle > In Datei schreiben.
    1. Wählen Sie die Tabellenvariable Sap-Bapi-Table, die die zu schreibenden Daten enthält, aus der Liste „Name der Datentabelle“ aus.
    2. Geben Sie den Speicherort der Datei an, in die die Daten im Feld Dateiname eingeben geschrieben werden sollen. Zum Beispiel: D:/Benutzerdefiniert/Mein Desktop/SAP Test/DOCUMENTHEADER.csv.
    3. Aktivieren Sie das Kontrollkästchen Ordner/Dateien erstellen, wenn sie nicht vorhanden sind.
    4. Wählen Sie die Option Vorhandene Datei überschreiben aus, wenn Sie Daten in eine vorhandene Datei schreiben.
    5. Wählen Sie die Option Neue Zeile aus dem Feld Zeilen-Trennzeichen aus.
    6. Wählen Sie die Option Komma aus dem Feld Spalten-Trennzeichen aus.
    7. Wählen Sie die Option ANSI aus der Liste Kodierung aus.
  11. Doppelklicken oder ziehen Sie die Aktion Feldwert festlegen, um Daten in die Tabelle zu setzen.
    1. In das Feld BAPI-Funktionsalias geben Sie BAPI_POST ein.
    2. Wählen Sie im Feld Quelle die Option Tabelle aus.
    3. Geben Sie GL in das Feld Tabellenalias ein.
    4. Geben Sie im Feld Feldname ITEMNO_ACC ein (den Namen des Feldes, in dem Sie Daten festlegen möchten).
    5. Geben Sie im Feld Feldwert 2 ein (den Wert, den Sie festlegen möchten).
    6. Geben Sie in das Feld SAP BAPI-Sitzung Standard ein (den Namen der Sitzung, den Sie für die Verbindung mit der SAP-Anwendung in der Aktion Verbinden verwendet haben).
  12. Wiederholen Sie Schritt 11 siebenmal, um die Daten in eine Tabelle zu setzen.

    Behalten Sie beim Einstellen der Werte in der Tabelle denselben Wert bei, den Sie zuvor in Schritt 11(a), 11(b), 11(c) und 11(f) eingegeben haben. Ändern Sie die folgenden Werte für die Schritte 11(d) und 11(e):

    Feldwert Feldname
    GL_ACCOUNT 0000078310
    PSTNG_DATE 20210127
    ITEM_TEXT TEST POSTING DEBIT ITEM
    QUANTITY 1000
    BASIS_UOM EA
    COMP_CODE 1000
    DOC_TYPE SA
  13. Wählen Sie die Aktion Wert festlegen aus.
    1. In das Feld BAPI-Funktionsalias geben Sie BAPI_POST ein.
    2. Wählen Sie im Feld Quelle die Option Tabelle aus.
    3. Geben Sie GL in das Feld Tabellenalias ein.
    4. Aktivieren Sie das Kontrollkästchen Neue Zeile erstellen, um Daten in die nächste Zeile einzugeben.
    5. Geben Sie im Feld Feldname ITEMNO_ACC ein (den Namen des Feldes, in dem Sie Daten festlegen möchten).
    6. Geben Sie im Feld Feldwert 1 ein (den Wert, den Sie festlegen möchten).
    7. Geben Sie in das Feld SAP BAPI-Sitzung Standard ein (den Namen der Sitzung, den Sie für die Verbindung mit der SAP-Anwendung in der Aktion Verbinden verwendet haben).
  14. Wählen Sie die Aktion Tabelle abrufen aus.
    1. In das Feld BAPI-Funktionsalias geben Sie BAPI_POST ein.
    2. In das Feld Tabellenname geben Sie ACCOUNTGL ein.
    3. Geben Sie in das Feld SAP BAPI-Sitzung Default ein.
    4. Wählen Sie die Option Variable, um die aus der Tabelle abgerufenen Daten in einer Tabellenvariablen zu speichern. Erstellen Sie die Tabellenvariable Sap-Bapi-Table.
  15. Doppelklicken Sie auf oder ziehen Sie die Option „Datentabelle“ > In Datei schreiben.
    1. Wählen Sie die Tabellenvariable Sap-Bapi-Table, die die zu schreibenden Daten enthält, aus der Liste Name der Datentabelle aus.
    2. Geben Sie den Speicherort der Datei an, in die die Daten im Feld Dateiname eingeben geschrieben werden sollen. Zum Beispiel: D:/Benutzerdefiniert/Mein Desktop/SAP Test/ACCOUNTGL.csv.
    3. Aktivieren Sie das Kontrollkästchen Ordner/Dateien erstellen, wenn sie nicht vorhanden sind.
    4. Wählen Sie die Option Vorhandene Datei überschreiben aus, wenn Sie Daten in eine vorhandene Datei schreiben.
    5. Wählen Sie die Option Neue Zeile aus dem Feld Zeilen-Trennzeichen aus.
    6. Wählen Sie die Option Komma aus dem Feld Spalten-Trennzeichen aus.
    7. Wählen Sie die Option ANSI aus der Liste Kodierung aus.
  16. Doppelklicken oder ziehen Sie die Aktion Feldwert festlegen, um Daten in die Tabelle zu setzen.
    1. In das Feld BAPI-Funktionsalias geben Sie BAPI_POST ein.
    2. Wählen Sie im Feld Quelle die Option Tabelle aus.
    3. Geben Sie CURRENCY in das Feld Tabellenalias ein.
    4. Geben Sie im Feld Feldname ITEMNO_ACC ein (den Namen des Feldes, in dem Sie Daten festlegen möchten).
    5. Geben Sie im Feld Feldwert 2 ein (den Wert, den Sie festlegen möchten).
    6. Geben Sie in das Feld SAP BAPI-Sitzung Default ein, (den Namen der Sitzung, den Sie für die Verbindung mit der SAP-Anwendung in der Aktion Verbinden verwendet haben).
  17. Wiederholen Sie Schritt 16 siebenmal, um die Daten in eine Tabelle zu setzen.

    Behalten Sie beim Einstellen der Werte in der Tabelle denselben Wert bei, den Sie zuvor in Schritt 16(a), 16(b), 16(c) und 16(f) eingegeben haben. Ändern Sie die folgenden Werte für die Schritte 16(d) und 16(e):

    Feldname Feldwert
    CURRENCY USD
    AMT_DOCCUR -2000
    ITEMNO_ACC 1
    CURRENCY USD (repeated) line 43
    AMT_DOCCUR 2000
  18. Wiederholen Sie Schritt 14 und geben Sie CURRENCYAMOUNT in das Feld Tabellenname ein.
  19. Wiederholen Sie Schritt 15 und geben Sie den Speicherort der Datei an, zum Beispiel D:/Benutzerdefiniert/Mein Desktop/SAP Test/Return.csv.
  20. Wählen Sie die Aktion Funktion ausführen aus, um die SAP BAPI-Funktion auszuführen.
    1. In das Feld BAPI-Funktionsalias geben Sie BAPI_POST ein.
    2. Wählen Sie die Option Sequenz beenden, um das Ende eines Prozesses zu markieren, und die Option Commit für die Transaktion ausführen, um die Änderungen zu bestätigen, die während des Prozesses vorgenommenen wurden.
    3. Geben Sie in das Feld SAP BAPI-Sitzung Default ein.
  21. Wählen Sie die Aktion Tabelle abrufen aus.
    1. In das Feld BAPI-Funktionsalias geben Sie BAPI_POST ein.
    2. In das Feld Tabellenname geben Sie RETURN ein.
    3. Geben Sie in das Feld SAP BAPI-Sitzung Default ein.
    4. Wählen Sie die Option Variable, um die aus der Tabelle abgerufenen Daten in einer Tabellenvariablen zu speichern. Erstellen Sie die Tabellenvariable Sap-Bapi-Table.
  22. Wiederholen Sie Schritt 15 und geben Sie den Speicherort der Datei an, zum Beispiel D:/Benutzerdefiniert/Mein Desktop/SAP Test/Return.csv.
  23. Wählen Sie die Aktion Feldwert abrufen, um Daten eines bestimmten Feldes von einer Funktion zu erhalten.
    1. In das Feld BAPI-Funktionsalias geben Sie BAPI_POST ein.
    2. Wählen Sie die Registerkarte Funktion im Feld Quelle aus.
    3. In das Feld Feldname geben Sie OBJ_KEY ein.
    4. Geben Sie in das Feld SAP BAPI-Sitzung Standard ein.
    5. Wählen Sie Prompt-Assignment im Feld Speichern Sie die Ausgabe in einer Variablen.
  24. Doppelklicken oder ziehen Sie die Aktion Nachrichtenfeld.
    1. Geben Sie Automation Anywhere Enterprise Client in das Feld Fenstertitel des Textfelds eingeben ein.
    2. Geben Sie $Prompt-Assignment$ ein.
    3. Geben Sie 30 in das Feld Bildlaufleiste nach Zeilen ein, um eine Bildlaufleiste anzuzeigen.
  25. Wiederholen Sie Schritt 23 und Schritt 24 (geben Sie in Schritt 23(c) den Wert OBJ_SYS ein).
  26. Wiederholen Sie Schritt 23 und Schritt 24 (geben Sie in Schritt 23(c) den Wert OBJ_TYPE ein).
  27. Klicken Sie auf Speichern und Ausführen.