Methode als Operand in CASE, Zustand im Debugger sehen

Die Frage ist als "gelöst" markiert. Den entsprechend Beitrag findest du hier.

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

Methode als Operand in CASE, Zustand im Debugger sehen

Beitrag von Romaniac (Specialist / 198 / 57 / 26 ) »
Hallo zusammen,

wie kann ich im Debugger den Rückgabewert (Returning Parameter) einer Methode sehen wenn ich diese als Operand in einer CASE Anweisung verwende? In meinen Fall kann ich zwar sehen in welchem WHEN Zweig der Cursor landet, aber es würde mich generell interessieren:

Code: Alles auswählen.

* Kontierungsobjekt ermitteln
        CASE me->get_accounting_object( <lw_freight_costs> ). "<-- Wie ist der Rückgabewert?

* COPA Direktkontierung
          WHEN const_accounting_copa.
            me->t_bapi_fi_doc_criteria = me->get_copa_accounting( <lw_freight_costs> ).

* Auftragsposition
          WHEN const_accounting_opos.
            <lw_accountgl>-orderid    = <lw_freight_costs>-vbeln_va.
            <lw_accountgl>-order_itno = <lw_freight_costs>-posnr_va.

* Innenauftrag
          WHEN const_accounting_iord.
            <lw_accountgl>-orderid = lw_ca_iord-aufnr_fvorg.
        ENDCASE.
Gruß Wolfgang
Geht nicht gibts nicht

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


Re: Methode als Operand in CASE, Zustand im Debugger sehen

Beitrag von Obelix1 (ForumUser / 35 / 3 / 0 ) »
Den Rückgabewert einer Methode kennst Du erst nachdem die Methode ausgeführt wurde, und dann hat in diesem fall das CASE seine Entscheidung bereits getroffen.
Du müsstest also zunächst das Ergebnis der Methode in eine Variable stellen (die kannst Du dann mit dem Debugger anschauen) und dann das CASE auf die Variable loslassen.

VG
Wolfgang

Re: Methode als Operand in CASE, Zustand im Debugger sehen

Beitrag von Thanatos82 (Expert / 699 / 32 / 123 ) »
Hi,

wenn deine CASE-Anweisung bereits auf einen WHEN Bereich geht, dann ist das Ergebnis der Methode gleich dem Parameter hinter dem WHEN.
Und in deinem Beispiel scheinen da Konstanten hinterlegt zu sein. Also kennst du das exakte Ergebnis.
Wenn du allerdings das Ergebnis der Methode, also den Returning-Parameter noch an anderer Stelle benötigst, dann musst du dir das Ergebnis in einer eigenen Variable festhalten.

Code: Alles auswählen.

DATA(lv_result) = me->get_accounting_object( <lw_freight_costs> ).
Dann kannst du deine CASE-Anweisung im Prinzip auch auf den Inhalt dieser Variablen abfragen und nicht auf die Methode.
Gruß,
der Matze

Re: Methode als Operand in CASE, Zustand im Debugger sehen

Beitrag von Romaniac (Specialist / 198 / 57 / 26 ) »
Das mit der Variable ist klar, ist aber so eleganter wenn ich die Methode direkt in dem CASE verwenden kann. In meinem Programm kenne ich natürlich die Ergebnisse und habe dafür Konstanten erstellt(die ich auch in der Methode dem Returnparameter zuweise).

Aber ich habe schon öfter SAP Programme debuggt wo ich gerne gewusst hätte was als Rückgabewert kommt (ohne die Methode zu debuggen, irgendwann muss ja de Returning Parameter versorgt werden), hier kann ich ja keine Variable anlegen.

Hat mich nur interessiert ob das nicht irgendwo doch sichtbar wäre im Debugger?

Gruß Wolfgang
Geht nicht gibts nicht

Re: Methode als Operand in CASE, Zustand im Debugger sehen

Beitrag von lausek (ForumUser / 64 / 2 / 20 ) »
Hallo Wolfgang,

schau mal unter dem Reiter 'Auto' in der Variablenanzeige. Dort sollte es dann ein Returning Symbol geben und dahinter steht der jeweilige Methodenname.

Wird allerdings nur so lange angezeigt, wie man die Aufrufstelle nicht verlässt - logischerweise.

Folgende Benutzer bedankten sich beim Autor lausek für den Beitrag (Insgesamt 4):
black_adeptewxa-dead-trousersRomaniac


Re: Methode als Operand in CASE, Zustand im Debugger sehen

Beitrag von Romaniac (Specialist / 198 / 57 / 26 ) »
Hallo Lausek,

vielen Dank, genau das habe ich gesucht!

Gruß Wolfgang
Geht nicht gibts nicht

Seite 1 von 1

Vergleichbare Themen

3
Antw.
2816
Views
Vergleiche (<, >, <>, etc.) bei CASE
von kl » 28.02.2005 22:31 • Verfasst in ABAP® für Anfänger
4
Antw.
476
Views
CASE im SELECT
von ralf.wenzel » 13.12.2022 20:04 • Verfasst in ABAP® Core
3
Antw.
9174
Views
Switch Case
von Spookykid » 07.04.2011 17:07 • Verfasst in ABAP® für Anfänger
0
Antw.
1651
Views
Inverser Case
von cosmo » 20.09.2004 15:26 • Verfasst in Tips + Tricks & FAQs
2
Antw.
1360
Views
CL_ABAP_MESSAGE_DIGEST case insensitive?
von weisslinde » 16.01.2019 10:16 • Verfasst in ABAP® Core

Über diesen Beitrag


Die Frage ist als "gelöst" markiert. Den entsprechend Beitrag findest du hier.

Unterstütze die Community und teile den Beitrag für mehr Leser und Austausch

Aktuelle Forenbeiträge

Zwischensumme Adobe Forms
vor 3 Tagen von Lucyalison 1 / 64
Interne Tabelle
vor 5 Tagen von black_adept 2 / 133
MaLo-Checker in ABAP
vor einer Woche von A6272 6 / 254

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.

Aktuelle Forenbeiträge

Zwischensumme Adobe Forms
vor 3 Tagen von Lucyalison 1 / 64
Interne Tabelle
vor 5 Tagen von black_adept 2 / 133
MaLo-Checker in ABAP
vor einer Woche von A6272 6 / 254

Unbeantwortete Forenbeiträge

Zwischensumme Adobe Forms
vor 3 Tagen von Lucyalison 1 / 64
Group Items auf einer Filterbar
vor einer Woche von Bright4.5 1 / 107
tRFC Transaktionen SM58
vor 4 Wochen von A6272 1 / 140