Klassenbasierte RFC-Ausnahmen verwenden 
Grundsätzlich erfolgt die Verwendung von klassenbasierten Ausnahmen im RFC-Umfeld auf die gleiche Weise wie bei lokalen Funktionsaufrufen. Für entfernte Funktionsaufrufe sind jedoch einige Besonderheiten zu beachten, die in den folgenden Abschnitten beschrieben werden.
Der wichtigste Unterschied besteht darin, dass klassenbasierte RFC-Ausnahmen für den Transport vom Server zum Clientprogramm im basXML-Format (Binary ABAP Serialization XML) serialisiert werden. Deshalb müssen sowohl die Client-Seite als auch die RFC-Destination basXML unterstützen.
Sowohl Client als auch Server basieren auf SAP NetWeaver 7.11 oder höher.
Der Funktionsaufruf enthält keinen EXCEPTIONS-Block.
Hinweis
Bei Funktionsaufrufen, die einen EXCEPTIONS-Block enthalten, wird ausschließlich die klassische Ausnahmebehandlung angewendet.
Hinweis
Bei klassischer Ausnahmebehandlung führt das Auslösen einer klassenbasierten Ausnahme im Server zu einem Laufzeitfehler und auf der Client-Seite zur klassischen Ausnahme SYSTEM_FAILURE mit entsprechender Meldung.
Der aufzurufende Funktionsbaustein ist im RFC-Client definiert. Einschränkungen
Für Releases < 7.11 werden Anmelde- und Berechtigungsfehler auf die Ausnahmeklasse CX_REMOTE_APLL_ERROR abgebildet. Der Fehlertext befindet sich hierbei in dem Feld MESSAGE_TEXT.
Sind bei der Kommunikation mit Releases < 7.11 keine Systemnachrichten-Felder gesetzt (z.B. sy-msgty, sy-msgid, sy-msgno, sy-mgsv1,…,sy-msgv4), liefert die Methode GET_TEXT zur Ausnahmeklasse CX_REMOTE_APLL_ERROR in einigen Fällen keinen gültigen Wert. Der Fehlertext befindet sich dann ebenfalls in dem Feld MESSAGE_TEXT.
Verwenden Sie für die klassenbasierte Ausnahmebehandlung in Ihrem Funktionsaufruf anstelle des EXCEPTIONS-Blocks die TRY/CATCH-Syntax.
Mit der klassenbasierten Ausnahmebehandlung ist es auch möglich, klassische Ausnahmen zu behandeln. Im RFC-Umfeld sind hier jedoch einige semantische Besonderheiten gegenüber lokalen Funktionsaufrufen zu beachten. Ausführliche Informationen dazu erhalten Sie unter:
Für die Verwendung asynchroner RFC-Aufrufe gelten in bestimmten Fällen besondere Regeln. Weitere Informationen hierzu erhalten Sie unter:
Eine ausführliche Beschreibung der lokalen klassenbasierten Ausnahmebehandlung im ABAP-Umfeld finden Sie unter: