Exception Parameter auslesen Thema ist als GELÖST markiert

Die Objektorientierung mit ABAP®: Vererbung, Dynamische Programmierung, GUI Controls (u.a. ALV im OO).
5 Beiträge • Seite 1 von 1
5 Beiträge Seite 1 von 1

Exception Parameter auslesen

Beitrag von 19KnarfRed81 (ForumUser / 28 / 14 / 3 ) »
Hallo,

kann ich irgendwie auf die Attribute einer Exception zugreifen? Also mit o_error->get_text() bekomme ich zwar den Text aber ich benötige auch die Nachrichtenklasse und die Nachrichtennummer.

Code: Alles auswählen.

      
TRY.
        my_meth().

        CATCH zcx_my_exc INTO DATA(lo_error).

          DATA(lo_previous) = lo_error->previous.

          DO.
            IF lo_previous->previous IS NOT BOUND.
              EXIT.
            ENDIF.

            lo_previous = lo_previous->previous.
          ENDDO.

          ct_error = VALUE #( ( [...]
                                  status     = 'O'
                                  msgid    = ???
                                  msgno    = ???
                                  text       = lo_previous->get_text( ) ) ).
          cv_xerror = abap_true.
          RETURN.

      ENDTRY.
Im Debugger sehe ich die Werte (siehe Anhang) in der Objektvariable. Ein Zugriff mit lo_previous->xy funktioniert hier aber nicht.

Wie macht man das? Man muss da irgendwie dran kommen... Vielen Dank.

gesponsert
Stellenangebote auf ABAPforum.com schalten
kostenfrei für Ausbildungsberufe und Werksstudenten


Re: Exception Parameter auslesen

Beitrag von a-dead-trousers (Top Expert / 4486 / 231 / 1206 ) »
Casten:

Code: Alles auswählen.

CASE TYPE OF lo_previous.
  WHEN TYPE zcx_rm_base INTO DATA(lr_base).
     ...
ENDCASE.
Der Vorteil bei dem CASE TYPE-Construct ist, dass man sich nicht mit CX_SY_MOVE_CAST_ERROR oder "leeren" Objektreferenzen herumschlagen muss.

Folgende Benutzer bedankten sich beim Autor a-dead-trousers für den Beitrag:
19KnarfRed81

Theory is when you know something, but it doesn't work.
Practice is when something works, but you don't know why.
Programmers combine theory and practice: Nothing works and they don't know why.

ECC: 6.18
Basis: 7.50

Re: Exception Parameter auslesen

Beitrag von 19KnarfRed81 (ForumUser / 28 / 14 / 3 ) »
Super, vielen Dank. Das funktioniert bestens. :-)

Re: Exception Parameter auslesen

Beitrag von gtoXX (Specialist / 214 / 44 / 37 ) »
Es geht noch anders. Schau dir mal die SAP Klasse CL_MESSAGE_HELPER an.
Wenn du die Nachrichten ID brauchst ist dein Code nicht nötig.

GET_TEXT_PARAMS liefert dir die Parameter und ihre Werte.
CHECK_MSG_KIND liefert dir auch den T100KEY.


Oder caste auf IF_T100_MESSAGE. Im Attribut T100KEY steht alles drin.
"Code lügt nicht ^^"

Re: Exception Parameter auslesen

Beitrag von a-dead-trousers (Top Expert / 4486 / 231 / 1206 ) »
gtoXX hat geschrieben:
05.06.2024 14:54
Es geht noch anders. Schau dir mal die SAP Klasse CL_MESSAGE_HELPER an.
Wenn du die Nachrichten ID brauchst ist dein Code nicht nötig.

GET_TEXT_PARAMS liefert dir die Parameter und ihre Werte.
CHECK_MSG_KIND liefert dir auch den T100KEY.


Oder caste auf IF_T100_MESSAGE. Im Attribut T100KEY steht alles drin.
Das geht aber nur wenn das Interface in der Klasse wirklich verwendet wird. Laut den Screenshots ist das aber nicht der Fall, da MESSAGE_ID, MESSAGE_TYPE usw. zwar PUBLIC definiert aber nicht Teil von IF_T100_MESSAGE sind.
Theory is when you know something, but it doesn't work.
Practice is when something works, but you don't know why.
Programmers combine theory and practice: Nothing works and they don't know why.

ECC: 6.18
Basis: 7.50

Seite 1 von 1

Aktuelle Forenbeiträge

Feldroutine ADSO Transformation
vor einer Woche von codemaster1 2 / 64327
Stücklisten
vor einer Woche von Selma.schwarz 1 / 66070
Belege
vor einer Woche von Selma.schwarz 1 / 64183

Newsletter Anmeldung

Keine Beiträge verpassen! Wöchentlich versenden wir lesenwerte Beiträge aus unserer Community.
Die letzte Ausgabe findest du hier.
Details zum Versandverfahren und zu Ihren Widerrufsmöglichkeiten findest du in unserer Datenschutzerklärung.

Vergleichbare Themen

Exception Class/Parameter für Constructor
von Thomas R. » 26.04.2013 20:45
Exception Abfangen bei missing parameter im form (Gelöst)
von mnd » 14.02.2013 08:31
Web-Dynpro Anwendung Parameter auslesen
von NLengner » 04.07.2019 16:47
Exception - MSG
von HH_ABAP » 20.06.2023 08:15
Exception ?
von simethandreas » 21.10.2009 14:15

Aktuelle Forenbeiträge

Feldroutine ADSO Transformation
vor einer Woche von codemaster1 2 / 64327
Stücklisten
vor einer Woche von Selma.schwarz 1 / 66070
Belege
vor einer Woche von Selma.schwarz 1 / 64183

Unbeantwortete Forenbeiträge

Stücklisten
vor einer Woche von Selma.schwarz 1 / 66070
Belege
vor einer Woche von Selma.schwarz 1 / 64183