Methodenname in Systemvariable?

Die Objektorientierung mit ABAP®: Vererbung, Dynamische Programmierung, GUI Controls (u.a. ALV im OO).

Methodenname in Systemvariable?

Postby Celin1755 » Fri Mar 12, 2004 10:55 am

Gibt es eine Systemvariable oder sonstige Variable in der der aktuelle Methodenname steht?

Mein Programm ruft eine Methode auf und bei einem technischen Fehler will ich den Methodenname in der Nachricht als Messagevariable ausgeben.

Vielen Dank schon mal für eure Antworten :-)
Celin1755
..
..
 
Posts: 17
Joined: Tue Dec 16, 2003 4:12 pm

Postby ewx » Fri Mar 12, 2004 1:52 pm

Hi gucky,

eine Systemvariable gibt's nicht, aber du könntest mal folgendes ausprobieren:
http://www.tricktresor.de/content/index.php?navID=106&aID=57

Für Unterprogramme funktioniert's. Evtl. Geht's auch für Methoden.

Sach mal bescheid, ob's geklappt hat.

Gruß, Enno.
ewx
.....
.....
 
Posts: 2840
Joined: Mon Aug 04, 2003 9:02 pm

Postby Willy1492 » Fri Mar 12, 2004 8:01 pm

Die C-Funktion zeigt den ABAP-Callstack genauso an, wie er z.B. bei einem Dump in der ST22 oder bei der Anzeige des ABAP Call Stacks im Debugger angezeigt wird - mit den gleichen Fehlern z.B. bei PERFORMs (der interne Anweisungszähler zeigt schon auf die nächste ausführbare Anweisung - daher werden die falschen Quelltext-Zeilennummern angezeigt).

Methoden-Aufrufe bereiten da keine Probleme.

Natürlich muss man ein geeignetes SAP-Release mit passendem Kernel-Patch haben.
Sonst gibt es die Kernel-Function noch nicht und es kommt zu einem nicht abfangbaren Laufzeitfehler.
Oder es kommt zu 6.10 unter nicht näher beschriebenen Umständen zu einem Abbruch des Workprozesses.
(Am besten mal die passenden Hinweise im OSS suchen: ABAP_CALLSTACK als Suchbegriff, und dann die 2 Hinweise lesen, bei denen der Begriff im Kurztext vorkommt.)

Deine Vermutung
    Wird bei dem CALL-Befehl unter DEPTH die Zahl 99 angegeben, so wird die Tabelle TAB mit der gesamten Aufrufhierarchie gefüllt.

ist m.E. falsch. Wenn 99 angegeben ist, wird der Call Stack bis zu 99 Ebenen zurückgeliefert.
Um den kompletten Call Stack zu bekommen (falls es überhaupt Fälle mit mehr als 99 Ebenen gibt), muss man -1 angeben.
Willy1492
....
....
 
Posts: 581
Joined: Tue Dec 03, 2002 4:44 pm

Postby Willy1492 » Wed Mar 17, 2004 10:40 pm

Und falls man die SAP-Kernel-Function nicht nutzen will oder nicht nutzen kann, hier noch ein alter Thread aus dem Forum von abaps.de mit möglichen Alternativen:
http://www.wotech.com/cgi-bin/config.pl?read=401
Willy1492
....
....
 
Posts: 581
Joined: Tue Dec 03, 2002 4:44 pm


Return to ABAP Objects®

Who is online

Users browsing this forum: No registered users and 6 guests