Ansicht
Dokumentation

CL_RMC_SESSION - Verbindung zu einem anderen System für RMC

CL_RMC_SESSION - Verbindung zu einem anderen System für RMC

rdisp/max_wprun_time - Maximum work process run time   rdisp/max_wprun_time - Maximum work process run time  
Diese Dokumentation steht unter dem Copyright der SAP AG.
SAP E-Book

Funktionalität

Die Klasse CL_RMC_SESSION stellt allgemeine Dienste im Rahmen des Remote Method Call (RMC) zur Verfügung. Sie dient einerseits als Factory (Klassenmethode NEW_SESSION) der Erzeugung von Session-Objekten, die eine Verbindung zu einem Zielsystem repräsentieren. Andererseits erlaubt sie das Wiederfinden früher erzeugter Session-Objekte (mit den Klassenmethoden GET_SESSION_BY_NAME und GET_SESSION_BY_PROXY).

Die Klasse CL_RMC_SESSION beinhaltet außerdem einige Konstante, die bei der Verwendung der Session-Objekte über ihr Interface IF_RMC_SESSION zu verwenden sind.

Die Session-Objekte stellen ihre Dienste, wie z.B. das Erzeugen von Objekten im Zielsystem, über das öffentliche Interface IF_RMC_SESSION zur Verfügung.

Beziehungen

Ein Session-Objekt hält intern Referenzen auf alle von ihm erzeugten Proxy-Objekte. Diese Verbindung ist allerdings nur für interne Zwecke wichtig und spielt für die Anwendungsprogrammierung keine Rolle.

Beispiel

Allgemeines Schema zum Aufruf einer Methode via RMC:

  1. Erzeugen eines Session-Objektes.
DATA: MYSESSION TYPE REF TO IF_RMC_SESSION.
CALL METHOD CL_RMC_SESSION=>NEW_SESSION
EXPORTING DESTINATION = 'MY_TARGET_SYSTEM'
IMPORTING SESSION = MYSESSION.
  1. Öffnen der Verbindung.
CALL METHOD MYSESSION->OPEN
EXCEPTIONS COMMUNICATION_FAILURE = 1
SYSTEM_FAILURE = 2
INVALID_STATUS = 3.
IF SY-SUBRC NE 0.
"- Fehlerbehandlung
EXIT.
ENDIF.
  1. Erzeugen eines Objektes im Zielsystem.
DATA: MYOBJ TYPE REF TO IF_REMOTE_XYZ.
DATA: MYCLS TYPE SEOCLSKEY.
MYCLS-CLSNAME = 'CL_REMOTE_ZYX'.
CALL METHOD MYSESSION->CREATE_REMOTE_OBJECT
EXPORTING CLASS = MYCLS
IMPORTING IREF = MYOBJ
EXCEPTIONS COMMUNICATION_FAILURE = 1
SYSTEM_FAILURE = 2
CREATE_FAILURE = 3.
INVALID_STATUS = 4.
IF SY-SUBRC NE 0.
"- Fehlerbehandlung
EXIT.
ENDIF.
  1. Methodenaufruf des Zielobjekts.
CALL METHOD MYOBJ->>REMOTE_METHOD
EXPORTING ...
IMPORTING ...
EXCEPTIONS COMMUNICATION_FAILURE = 1
SYSTEM_FAILURE = 2
...
IF SY-SUBRC NE 0.
"- Fehlerbehandlung
EXIT.
ENDIF.
  1. Schließen der Verbindung.
CALL METHOD MYSESSION->CLOSE.

Die in diesem Beispiel gezeigten Aufrufe der Methoden OPEN und CLOSE

sind optional.

Hinweise

Für die Anwendung sind nur die Klassen-Konstanten, die Klassen-Methoden (NEW_SESSION, GET_SESSION_BY_NAME, GET_SESSION_BY_PROXY), sowie die Interface-Sicht IF_RMC_SESSION relevant. Die anderen Merkmale dieser Klasse sind nur für interne Zwecke vorhanden, Zugriffe darauf sind für die Anwendung nicht erlaubt.

Weiterführende Informationen

Bitte lesen Sie auch die Dokumentation zum Interface IF_RMC_SESSION.






SUBST_MERGE_LIST - merge external lists to one complete list with #if... logic for R3up   BAL Application Log Documentation  
Diese Dokumentation steht unter dem Copyright der SAP AG.

Length: 4007 Date: 20240424 Time: 143837     sap01-206 ( 49 ms )