This is a test message to test the length of the message box.
Login
ABAP Tipp Ping
Erstellt von Software-Heroes

ABAP Tipp - System anpingen

439

In unserem heutigen Tipp wollen wir dir zeigen, wie du eine RFC Verbindung zu einem anderen System prüfen kannst, bevor du sie verwendest. Damit kannst du verifizieren, ob die Verbindung da ist und auch funktioniert.

Werbung


Du möchtest die Verbindung zu einem anderen System aufbauen, weil du Daten lesen möchtest, aber bist dir nicht sicher, ob die Verbindung wirklich funktioniert oder das System überhaupt da ist. Damit du die Verbindung testen kannst, wollen wir dir heute zwei einfache Schritte näher bringen.

 

Lesen der Verbindung

Als ersten Schritt solltest du überprüfen, ob die Verbindung im System überhaupt eingerichtet ist. Dazu kannst du in der Transaktion SM59 die erste Sichprüfung machen, ob deine ABAP-Verbindung korrekt angelegt ist. Dazu prüfst du die wichtigsten Einstellungen:

  • User und Passwort für die Verbindung eingerichtet
  • Verbindungstest funktioniert

 

Aus technischer Sicht prüfst du die Tabelle RFCDES, ob die Verbindung vorhanden ist, bevor du den ersten Ping absetzt. Dies kannst du mit einem einfachen Select durchführen.


" Lesen der Verbindung
SELECT SINGLE * 
 FROM rfcdes
 WHERE rfcdest = 'TSTMDT999'
   AND rfctype = '3'.

IF sy-subrc <> 0.
  " Fehler behandeln
ENDIF.

 

Verbindung prüfen

Mit der folgenden Klasse/Methode kannst du prüfen, ob die Verbindung zu der RFC Destionation funktioniert. Mit den verschiedenen Kennzeichen kannst du den Ping prüfen, den Logon zum System checken und die Latenz ermitteln. Wie du im folgenden Beispiel siehst, kannst du die Werte auch Einzeln ansteuern.


" Aufruf der Methode
/sdf/cl_rfc_conn_check=>check_connection(
  EXPORTING
    ip_destination   = id_dest
    ip_ping          = abap_true
    ip_logon         = abap_true
    ip_latency       = abap_true
  IMPORTING
    ep_ping_status   = DATA(ld_ping)
    ep_logon_status  = DATA(ld_logon)
    ep_latency_in_ms = DATA(ld_latency)
).

IF ld_ping <> 1.
  " keine Verbindung
ELSE.
  " Verbindung hergestellt
ENDIF.

 

Nach dem Aufruf der Methode nicht vergessen die einzelnen Werte zu validieren. In unserem Beispiel prüfen wir den Wert aus ld_ping. Dieser kann den Status 1 (Verbindung in Ordnung) oder 3 (Verbindung fehlgeschlagen) haben. Als kleines Extra definieren wir die Werte direkt bei Rückgabe im Programm und sparen uns so die drei Variablen im Kopf. Die Rückgabevariable rd_connect ist ein Returning Parameter der Methode.

 

Hinweis: Bei dieser Methode handelt es sich um den Aufruf des Funktionsbausteins RFCPING, der die erforderliche Aktion durchführt und die Daten entsprechend aufbereitet werden für die Rückgabe. Der Aufruf einer Methode sieht natürlich eleganter aus, als der Aufruf eines Funktionsbausteins.

 

Fazit

Mit dieser einfachen Methode kannst du überprüfen, ob ein System noch vorhanden ist (Systemüberwachung) oder einfach nur ordentlich die Verbindung vor Nutzung testen. Probiere es doch gleich Mal in deinem System aus.


Enthaltene Themen:
TippPing
Kommentare (0)



Und weiter ...

Bist du zufrieden mit dem Inhalt des Artikels? Wir posten jeden Dienstag und Freitag neuen Content im Bereich ABAP und unregelmäßig in allen anderen Bereichen. Schaue bei unseren Tools und Apps vorbei, diese stellen wir kostenlos zur Verfügung.


ABAP Tipp - Handling von Funktionsbausteinen

Kategorie - ABAP

Wie gehst du eigentlich mit Funktionsbausteinen und der Fehlerbehandlung innerhalb von ABAP um? In diesem kleinen Tipp schauen wir uns die Behandlung auch im Rahmen von RFC an.

26.08.2025

ABAP Tipp - Generische Datentypen

Kategorie - ABAP

Was unterscheidet eigentlich CLIKE von CSEQUENCE? Generische Typen können manchmal etwas undurchsichtig sein und als ABAP Entwickler wählen wir vielleicht den Typen zu generisch.

12.08.2025

Recycling-Heroes (Erklärt)

Kategorie - ABAP

Was haben die Recycling-Heroes mit moderner ABAP Entwicklung und ABAP Cloud zu tun? In diesem Artikel geben wir Einblicke in die Idee.

15.07.2025

ABAP Tipp - Ranges und Select-Options

Kategorie - ABAP

Ranges und Select-Options in ABAP sind sehr ähnlich und doch gibt es feine Unterschiede bei der Nutzung im ABAP OO Kontext. Hier schauen wir uns die moderne Verwendung an.

09.05.2025

ABAP Tipp - Generische Query Implementierung

Kategorie - ABAP

Die immer wieder gleiche Implementierung in Query Klassen für Custom Entities in RAP? Es wird mal Zeit für eine wiederverwendebare Komponente.

22.04.2025