SAP Query im ABAP Debugger untersuchen

SAP Query ist ein Tool in SAP ERP bzw. SAP S/4HANA, mithilfe man Daten aus verschiedenen Tabellen ausgeben kann. In den Transaktionen SQ01, SQ02 und SQ03 kann man die SAP Query, das InfoSet und die Benutzergruppe ohne ABAP erstellen. Unter Umständen möchte man die Logik in der SAP Query erweitern, die im Standard nicht abbildbar ist. Dafür kann man mit der Programmiersprache ABAP eigene Logik in der SAP Query im InfoSet in der Transaktion SQ02 hinzufügen. Im Artikel „ABAP Code in SAP Query“ ist im Detail beschrieben, welche Möglichkeiten es hierbei gibt.

Treten Probleme im Code auf und man möchte die genaue Ursache untersuchen oder Erweiterungsmöglichkeiten finden, benötigt man den ABAP Debugger. In diesem Artikel möchte ich daher im Detail erklären, wie man den ABAP Debugger für die SAP Query startet.

ABAP Debugging anschalten

Die einfachste Möglichkeit, die SAP Query im ABAP Debugger zu untersuchen und den Debugger zu starten, ist der Shortcut /h im Kommandofeld.

Hierfür startet man die Transaktion SQ01, wählt die gewünschte SAP Query aus und führt die SAP Query mit der F8-Taste aus. Daraufhin gibt man im Kommandofeld /h ein und drückt die Enter-Taste. Es erscheint die Meldung „Debugging wurde eingeschaltet“ mit der Meldungsnummer SY432 in der Nachrichtenzeile.

SAP Query - Debugging einschalten

Die nächste Aktion, die man nun ausführt, wird im ABAP Debugger ausgeführt. Deshalb führt man nun die Selektion der SAP Query aus, in dem man den Ausführen-Button klickt oder die F8-Taste benutzt. Als Nächstes wird der Debugger gestartet und man kann die SAP Query im ABAP Debugger untersuchen.

SAP Query im ABAP Debugger

Insbesondere ist es sehr nützlich, die globalen Variablen zu untersuchen, um zu sehen, welche Variablen im ABAP-Code verwendet werden können.

Statische Breakpoints

Mit der BREAK oder BREAK-POINT-Anweisung kann man auch statische Breakpoints direkt im ABAP-Code einfügen. Mit dem Befehl BREAK-POINT wird bei jedem SAP-Benutzer mit Debugger-Berechtigung in den Debugger verzweigt. Es wird dringend empfohlen, diesen Befehl in der Regel nicht zu verwenden.

Unter Umständen kann man stattdessen den Befehl BREAK nutzen, da man hierbei den SAP-Benutzer angegeben kann, bei dem der ABAP Debugger starten soll.

" Debugger wird beim SAP-Benutzer ANDREASG gestartet
BREAK ANDREASG.

Bei beiden Varianten ist jedoch darauf zu achten, dass statische Breakpoints nicht in das Produktivsystem gelangen. Sie dienen lediglich dazu, schnell und einfach einen Breakpoint zu setzen. Vergisst man jedoch, den Breakpoint wieder zu entfernen, wird im Produktivsystem der Debugger gestartet. Und das ist in der Regel im Produktivsystem weder notwendig noch erwünscht.

Dynamische Breakpoints

Sobald man einmal den ABAP Debugger über eine der beiden oberen Varianten gestartet hat, kann man auch dynamische Breakpoints setzen. Entweder klickt man auf die linke gelbe Leiste an der gewünschten Stelle oder beim Cursor über die Menüfunktion „Breakpoints > Zeilen-Breakpoint > Setzen/Löschen“. Es erscheint die Meldung „Breakpoint wurde gesetzt“ und das rote Breakpoint-Symbol wird angezeigt. Über den Speichern-Button oder die Tastenkombination „Strg + S“ kann man den Breakpoint speichern.

ABAP Debugger - Breakpoint setzen

Bei der nächsten Ausführung der SAP Query wird automatisch der ABAP Debugger beim gesetzten Breakpoint gestartet.

Über den Autor

Andreas Geiger

Mein Name ist Andreas Geiger und ich bin ein erfahrener Senior SAP Berater. Mit mehr als 10 Jahren Berufserfahrung habe ich mehrere SAP-Projekte erfolgreich abgeschlossen und umfangreiche Kenntnisse in verschiedenen Bereichen wie SAP FI, SAP MM und ABAP erworben. Nun möchte ich mein Wissen mit Dir teilen, um Dir einen Mehrwert zu bieten und Dich bei Deiner täglichen Arbeit mit dem SAP-System zu unterstützen.

Mehr zu ERP UP

ERP UP unterstützen

Wenn Du mit ERP UP zufrieden bist, kannst Du mich gerne unterstützen. Dabei gibt es unzählige Möglichkeiten, wie Du mich einfach und schnell unterstützen kannst. Wie Du genau ERP UP unterstützen kannst, erfährst Du hier. Vielen Dank.

Schreibe einen Kommentar