Zum Hauptinhalt springen
Version: 5.6

RFC-Trigger

Über den RFC-Trigger lösen angebundene SAP®-Systeme Datentransfers im OPC Router aus. SAP®-seitig muss dazu in der Transaktion SM59 ein entsprechender Eintrag angelegt werden.

Dialogübersicht

SAP-RFC-Trigger

Der Screenshot zeigt die Auswahl der SAP®-Anbindung sowie die Konfiguration von Programm-ID, Gateway-Service, Funktion und Parametern.

Konfiguration

EigenschaftBeschreibung
SAP-AnbindungHier stehen alle im Bereich Plug-ins erstellten SAP®-Anbindungen zur Auswahl. Sollte die gewünschte Anbindung noch nicht vorhanden sein, können Sie diese im Plug-ins-Bereich als SAP®-Anbindung bereitstellen.
Programm-IDProgramm-ID, mit der am SAP®-System die Destination aufgerufen wird, identisch mit der Programm-ID in der Transaktion SM59.
Gateway-ServiceRFC-Protokoll: Eingabe des Gateways, zum Beispiel sapgw00 (SAP Gateway 0). NetWeaver RFC-Protokoll: Angabe des Ports (3300 + Id für Basic-Authentifizierung, 4800 + Id für SNC-Authentifizierung).
FunktionIm SAP®-System definierte Funktion, die diesen Trigger auslöst.
TimeoutZeitspanne, nach der der OPC Router bei andauernder Aufgabe eine Timeout-Meldung an das SAP®-System sendet.
AusgabeSetzen Sie dieses Feld, wenn Sie eine Ausgabe als JSON erhalten möchten.
Eingabe (Reiter „Input“)Parameter, die das aufrufende SAP®-System beim Auslösen an den OPC Router übergibt (Import-Parameter des Funktionsbausteins).
Ausgabe (Reiter „Output“)Parameter, die der OPC Router nach Ausführung der Verbindung an das aufrufende SAP®-System zurückgibt (Export-Parameter des Funktionsbausteins).
Tabellen (Reiter „Tables“)Tabellenparameter, die in beide Richtungen verwendet werden – sie können Daten in den Aufruf übergeben und (geänderte) Daten an SAP® zurückliefern.
JSON-Format kopierenKopiert ein JSON-Dokument in die Zwischenablage, dessen Struktur dem Funktionsaufruf entspricht.

Eingabe, Ausgabe und Tabellen

Ein RFC-Funktionsbaustein besitzt eine feste Schnittstelle aus Parametern. Beim RFC-Trigger übernimmt der OPC Router die Rolle des aufgerufenen Bausteins – Sie definieren dessen Schnittstelle daher über drei Reiter:

  • Input: Werte, die das SAP®-System beim Aufruf an den OPC Router übergibt. Sie stehen anschließend in der Verbindung zur Verfügung.
  • Output: Werte, die der OPC Router nach Ablauf der Verbindung an das SAP®-System zurückgibt. Diese werden in der Verbindung gefüllt.
  • Tables: Tabellen (mehrzeilige Datenstrukturen), die in beide Richtungen verwendet werden können.

Legen Sie in jedem Reiter die benötigten Parameter an, indem Sie einen Namen vergeben und den Datentyp wählen. Neben einfachen Typen sind auch STRUCTURE (eine Struktur mit mehreren Feldern) und ITAB (eine interne Tabelle) möglich. Über „Bearbeiten“ definieren Sie bei diesen Typen die einzelnen Felder; eine Verschachtelung ist nicht möglich.

Bei CHAR- und NUM-Feldern legen Sie die erwartete Länge über „Bearbeiten“ fest. Die Standardlänge ist 0; wurde sie nicht geändert, erscheint beim Schließen des Dialogs ein entsprechender Hinweis.

Achtung

Der Aufruf eines nicht existierenden Funktionsbausteins führt zwangsläufig zur Deregistrierung des Servers im SAP®-Gateway. Die Registrierung kann nicht weiterverwendet werden und muss erneut durchgeführt werden, was sich in ERP-Connect durch einen Serverneustart äußert.

Achtung

Einmal gegenüber der NetWeaver-Library bekannt gemachte Funktionen können nicht wieder gelöscht werden. Das gilt für den gesamten Prozess, über alle SAP®-Systeme und RFC-Server hinweg. Sie können also Name und Typ der Import-/Export-/Tables-Parameter eines per RFC-Server aufgerufenen Funktionsbausteins ebenso wenig nachträglich ändern wie die Existenz des Bausteins selbst. Nehmen Sie keine Änderungen vor, während der OPC Router-Dienst läuft. Bei Änderungen muss immer vollständig veröffentlicht werden.

Rückgabeparameter

Wenn das SAP®-System den Funktionsbaustein aufruft, führt der OPC Router die zugehörige Verbindung aus und gibt anschließend ein Ergebnis an das aufrufende SAP®-System zurück. Über den Rückgabeparameter TRANSFER_OK erkennt das SAP®-System, ob der Transfer erfolgreich war:

NameBeschreibung
TRANSFER_OK1 = OK: Erfolgreicher Transfer der Verbindung. 2 = Aborted: Der Transfer wurde von einem Transferobjekt abgebrochen, zum Beispiel wenn eine Tabelle für ein Datenbank-Transferobjekt keine Daten enthielt. 3 = Error: Während der Ausführung des Transfers trat ein Fehler auf. Die Anfrage muss später erneut gesendet werden und darf vom angebundenen System nicht als abgeschlossen markiert werden.
warnung

Registrieren Sie den Funktionsnamen in GROSSBUCHSTABEN (zum Beispiel Z_TRIGGER): SAP® übergibt Funktionsbausteinnamen großgeschrieben, und der OPC Router gleicht sie zeichengenau ab – eine kleingeschriebene Registrierung wird nicht gefunden. Die Programm-ID wird ebenfalls zeichengenau (unter Beachtung der Groß-/Kleinschreibung) ausgewertet und muss exakt mit dem Eintrag in der SAP®-Transaktion SM59 übereinstimmen; Großschreibung ist üblich und empfohlen, aber nicht zwingend. Der SAP®-seitige Aufruf lautet:

Call function '<FUNKTIONSNAME>' destination '<SAP-DESTINATION>'.

Die Kombination von Host (SAP-Anbindung), Gateway und Programm-ID muss eindeutig sein. Die Programm-ID selbst kann mehrfach verwendet werden – aber nur mit verschiedenen Gateways/Hosts.

Beispiel

Einstellungen am RFC-Trigger:

EigenschaftKonfiguration
SAP-Anbindung<SAP-Anbindung>, über die die relevante Funktion erreicht wird.
Programm-IDINRAYTRIGGER
Gateway-ServiceGateway-Service des SAP®-Systems, zum Beispiel 3302
FunktionTRIGGERFUNKTION

Korrespondierende SAP®-Einstellungen, SM59:

Die Programm-ID INRAYTRIGGER wurde in der SAP®-Transaktion SM59 angelegt.

EigenschaftKonfiguration
DestinationOPCROUTER
VerbindungstypT TCP/IP
AktivierungsartRegistriertes Serverprogramm
Programm-IDINRAYTRIGGER
Gateway-Host(kein Eintrag!)
Gateway-Service(kein Eintrag!)

Durch den synchronen Funktionsaufruf innerhalb eines Programms, Funktionsbausteins oder Dialogs in SAP® wird der Datentransfer aktiv vom SAP®-System ausgelöst:

Call function 'TRIGGERFUNKTION' destination 'OPCROUTER'.