Diese Seite verwendet Cookies, um das bestmögliche Nutzererlebnis sicherzustellen. Wenn Sie die Seite weiter nutzen, stimmen Sie der Cookie-Nutzung zu.  mehr...  Einverstanden  Ablehnen

Basis Know-How TRFC

transaktionaler Remote Function Call tRFC

Der tRFC ( transaktionaler Remote Function Call ) ist ein asynchroner Funktionsbaustein-Aufruf, der im Zielsystem genau einmal ausgeführt wird.
Um das zu gewährleisten, wird die RFC-Funktion mit ihren Parametern zusammen mit einer eindeutigen Transaktionskennung (TID) zunächst in der Datenbank ( Tabellen ARFCSSTATE und ARFCSDATA ) des Quellsystems zwischengespeichert. Ist das Zielsystem nicht erreichbar, bleibt der Aufruf in der lokalen Warteschlange stehen und ein automatisch eingeplanter Hintergrund-Job ( Report RSARFCSE ) wiederholt den Aufruf in vordefinierten Zeitintervallen ( Default 15 Minuten ), bis der Aufruf erfolgreich durchgeführt werden konnte. Nach einer festen Anzahl von erfolglosen Verbindungsversuchen ( Default 30 mal ) bricht die Übertragung ab und setzt den Fehlerstatus CPICERR. Diese Fehler können mit Transaktion SM58 überwacht werden.

Dieser Mechanismus garantiert, dass der Funktionsbaustein mindestens einmal im Zielsystem aufgerufen wird. Um ein mehrfaches Aufrufen im Zielsystem zu verhindern, prüft dieses die empfangene Transaktions-ID. Nur falls diese noch nicht verarbeitet wurde, erfolgt der tatsächliche Aufruf im Zielsystem. Bereits verarbeitete Transaktions-IDs werden vom Zielsystem ignoriert.

Alle Funktionsbausteine, die im Quellsystem als transaktionale RFCs aufgerufen wurden, bilden im Zielsystem eine einzige
LUW ( Logical Unit of Work ), werden also entweder komplett oder im Fehlerfall gar nicht abgearbeitet.

Funktionsbausteine, die transaktional aufgerufen werden, dürfen in ihrer Schnittstelle keine EXPORT-Parameter besitzen.
Zum Aufruf eines transaktionalen Funktionsbausteins dient der Zusatz IN BACKGROUND TASK. Außerdem muss das Quellsystem einen expliziten COMMIT WORK-Befehl absetzen.


Basis Administration



Die Angaben im Text sind unverbindlich und dienen lediglich zu Informationszwecken.
Alle Namen von Produkten und Dienstleistungen sind Marken der jeweiligen Firmen.