Show TOC Anfang des Inhaltsbereichs

 Prozessdokumentation Asynchrone RFC-Aufrufe Dokument im Navigationsbaum lokalisieren

Asynchrone Aufrufe (aRFCs) ähneln transaktionalen RFCs insofern, als der Benutzer nicht die erfolgreiche Ausführung abwarten muss, ehe er mit seinem Aufrufdialog fortfahren kann. Es gibt jedoch drei wesentliche Merkmale, in denen sich asynchrone und transaktionale RFCs unterscheiden:

·        Wenn der Aufrufer einen asynchronen RFC startet, muss der gerufene Server verfügbar sein, um die Anforderung entgegenzunehmen.

Die Parameter von asynchronen RFCs werden nicht in die Datenbank geschrieben, sondern direkt an den Server übergeben.

·        Während eines asynchronen RFCs kann der Benutzer einen Dialog mit dem entfernten System führen.

·        Das rufende Programm kann Ergebnisse des asynchronen RFCs empfangen.

Einen asynchronen Funktionsaufruf verwenden Sie immer dann, wenn Sie eine Kommunikation mit einem entfernten System aufbauen müssen, aber mit der Verarbeitung nicht auf die Ergebnisse des Funktionsbausteins warten wollen. Auch asynchrone RFCs können an dasselbe System geschickt werden. In diesem Fall öffnet das System einen neuen Modus (oder Fenster). Sie können dann zwischen dem rufenden Dialog und dem gerufenen Modus hin- und herspringen.

Um einen Funktionsaufruf asynchron zu starten, verwenden Sie folgende Syntax:

CALL FUNCTION Remotefunction STARTING NEW TASK Taskname

DESTINATION ...

EXPORTING...

TABLES   ...

EXCEPTIONS...

Hinweis

Es gibt folgende Aufrufparameter:

§         TABLES

übergibt Referenzen auf interne Tabellen. Alle Tabellenparameter des Funktionsbausteins müssen Werte enthalten.

§         EXPORTING

übergibt die Werte von Feldern und Strukturen aus dem rufenden Programm an den Funktionsbaustein. Im Funktionsbaustein sind die entsprechenden Formalparameter als Importparameter definiert.

§         EXCEPTIONS

siehe Vordefinierte Ausnahmen für RFCs verwenden

 

RECEIVE RESULTS FROM FUNCTION Remotefunction wird innerhalb einer FORM-Routine verwendet, um die Ergebnisse eines asynchronen RFCs zu erhalten. Es gibt folgende Ergebnisparameter:

§         IMPORTING

§         TABLES

§         EXCEPTIONS

Der ZusatzKEEPING TASK sorgt dafür, dass eine asynchrone Verbindung nach der Ergebnisübergabe bestehen bleibt. Der entsprechende entfernte Kontext (Rollbereich) wird solange weiterverwendet, bis der Aufrufer die Verbindung beendet.

 

Detaillierte Informationen finden Sie in folgenden Themen:

Aufrufanforderungen für asynchrone RFCs

Ergebnisse von einem asynchronen RFC empfangen

Entfernte Kontexte aufrechterhalten

Parallelverarbeitung mit asynchronem RFC

CALL FUNCTION - STARTING NEW TASK

RECEIVE

WAIT UNTIL

RFC-Beispiel

 

 

Ende des Inhaltsbereichs