Debuggen im Userexit

Alles rund um die Sprache ABAP®: Funktionsbausteine, Listen, ALV
12 Beiträge • Seite 1 von 1
12 Beiträge Seite 1 von 1

Debuggen im Userexit

Beitrag von Mr. ABAP (ForumUser / 97 / 0 / 0 ) »
Hallo,

ich habe gerade einen User-Exit erweitert. Dabei kann ich leider nicht debuggen, auch wenn ich entweder nen Breakpoint setze oder programmiertechnisch hinterlege. Hat jemand Ahnung warum und kann mir vielleicht nen Tip geben?

Gruss und Danke
Mr. ABAP

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


User-Exit debuggen

Beitrag von ST22 (Specialist / 279 / 43 / 41 ) »
Hallo,

ist der Exit auch aktiv? Das ausprogrammieren allein reicht nicht. Guck mal in der CMOD nach.

Gruß

ST22

Beitrag von Mr. ABAP (ForumUser / 97 / 0 / 0 ) »
Der Exit ist definitiv aktiv. Ganz sicher. Ich füge einen neuen Eintrag in eine Z-Tabelle ein und das macht er ja auch. Sprich, er springt auf jeden Fall den Exit an, aber ich würde halt gern debuggen!

Debuggen im Userexit

Beitrag von ST22 (Specialist / 279 / 43 / 41 ) »
Dann verläuft die Verbuchung vielleicht im Update-Task? Bau dir mal eine Endlosschleife in den Userexit und geh dann über die SM51 in die Prozessübersicht. Such dir den Prozess mit deiner Endlosschleife und gehe über Programm->PRogramm->Debugging.

Gruß

ST22

Beitrag von pepedoc (ForumUser / 51 / 0 / 0 ) »
Was macht der User-Exit denn genau, kannst Du das Coding hier mal listen?
Prinzipiell solltest Du aber im Breakpoint landen. Du kannst ja mal folgendes tun.

if sy-uname = 'DEINUSERNAME'.
BREAK-POINT.
ENDIF:

einfügen. Falls Du irgendwie in nen Background- oder Verbuchungstask rutschst, so sieht Du hinterher im SYSLOG (Transaktion SM21) einen Eintrag "Breakpoint reached" bzw. "Breakpoint erreicht".

Ansonsten stoppst Du dann definitiv in dem Coding.

Viele Grüße,

Peter
Linux is Userfriendly, its only just selective who its friends are...

Beitrag von Mr. ABAP (ForumUser / 97 / 0 / 0 ) »
danke euch 2 für die hinweise.

@st22: was sollte dann danach passieren? ich hab mal einen wait eingebaut und bin wie du das beschrieben hast in die prozessübersicht und programm debuggen. da tut sich aber nichts...

@pepedoc: genau diese anweisung hab ich drin im coding.

if sy-uname = 'MEINUSERNAME'.
BREAK-POINT.
Endif.

in der sm21 erhalte ich folgende Meldung:
"Breaktpoint erreicht"
Jedoch in der Detailsicht der Hinweis kommt:
"Ein Break-Point-Befehl in einem ABAP/4-Programm wurde in einem Systemzustand durchlaufen, in dem kein Debugging mehr möglich ist. (z.B. Verbuchung, Batch, Konvertierungsexit)."

Ich weiss momentan nicht so recht weiter... Habt ihr viell. ne Ahnung?

Beitrag von poldi (Specialist / 116 / 0 / 0 ) »
Hallo Mr. ABAP,

die Meldung in der SM21 deutet darauf hin, dass der EXIT im Verbucher läuft. Dazu gleich zu Anfang der Transaktion Debugging einschalten und dann im
Debugger bei

Einstellungen --> Verbuchungsdebugging

einschalten. Das Ganze sollte dann beim ersten Verbucherstatement anhalten.

Viele Grüße
Wilfried
Wir sind lustig und haben es gar nicht nötig!

Beitrag von Mr. ABAP (ForumUser / 97 / 0 / 0 ) »
ich komm zwar dann ins debugging, jedoch nicht an die stelle. die übersprint er trotzdem. ausser ich sag z.b. breakpoint bei anweisung, dann bleibt er dort stehen, sonst nicht. diesen vorgang müsste ich dann bei jedem aufruf machen. da werd ich ja nicht mehr glücklich...

Beitrag von poldi (Specialist / 116 / 0 / 0 ) »
Warst Du auch im Verbuchungsdebugging? Das kommt "irgendwann" in der Regel nach dem Sichern. Aufpassen: In der Leiste ganz unten wird nach Einstellungen --> Verbuchungsdebugging angezeigt ob es an oder aus ist. Am besten Verbuchungsdebugging nach dem Sichern (wenn das zutrifft) einschalten. Dann wird ja angehalten und dann mit <F8> weitermachen. Dann müßtest Du im Verbucher sein.

Viele Grüße
Wilfried
Wir sind lustig und haben es gar nicht nötig!

Beitrag von Mr. ABAP (ForumUser / 97 / 0 / 0 ) »
also bevor ich den "Sichern-Button" drücke, aktiviere ich das Debugging und sag dann Menü Einstellungen Verbuchungsdebugging und sag dann F8, dann sollte er ja bei meinem Breakpoint stehen bleiben. Macht er aber leider nicht. Verbucht sofort.

Beitrag von poldi (Specialist / 116 / 0 / 0 ) »
Ist ein User-exit gemäß Transaktionen CMOD und SMOD? Wenn ja, weiß ich ier auch nicht mehr weiter. Wie heißt dann der EXIT?

Nur als Hinweis: Es gibt auch Feld-Exits und die kann man nicht debuggen, wenn ich mich richtig erinnere.

Wenn der USER-EXIT in einem Makro untergebracht ist (man weiß ja bei SAP nie ... ich hatte das mit AUTHORITY-CHECK erlebt) hat man auch schlechte Karten.

Viele Grüße
Wilfried
Wir sind lustig und haben es gar nicht nötig!

Beitrag von Mr. ABAP (ForumUser / 97 / 0 / 0 ) »
Das Setzen des Systemdebuggings hat geholfen. Keine Ahnung warum. Ist zwar umständlich, da es jedes mal neu gesetzt werden muss, aber egal...

Seite 1 von 1

Vergleichbare Themen

3
Antw.
2384
Views
RFC debuggen
von aeon » 03.05.2005 09:12 • Verfasst in ABAP® Core
1
Antw.
2775
Views
RFC JOB Debuggen
von autohandel7 » 04.12.2018 12:10 • Verfasst in Basis
4
Antw.
2972
Views
RFC debuggen
von dimes » 04.09.2008 12:44 • Verfasst in ABAP® Core
4
Antw.
3282
Views
Zahllauf debuggen
von Margolwes » 12.03.2019 09:43 • Verfasst in Financials
3
Antw.
661
Views
Smartforms debuggen
von L0w-RiDer » 16.01.2020 13:19 • Verfasst in ABAP® für Anfänger

Über diesen Beitrag


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

Aktuelle Forenbeiträge

Regex in where
vor 5 Stunden von tar 8 / 184
Daten an Tabelle binden
Gestern von Bright4.5 3 / 1489

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

Regex in where
vor 5 Stunden von tar 8 / 184
Daten an Tabelle binden
Gestern von Bright4.5 3 / 1489

Unbeantwortete Forenbeiträge

aRFC im OO-Kontext
vor 5 Wochen von ralf.wenzel 1 / 3261
Hilfe bei SWEC/SWE2
September 2024 von retsch 1 / 9822