SAP Debugging-Transaktionen

In klassischen SAP-Systemen wie SAP ERP oder SAP S/4HANA wird Debugging über eine Reihe von speziellen Transaktionen, Funktionen und Einstellungen ermöglicht. Diese Werkzeuge dienen dazu, Fehler im Code zu analysieren, die Programmausführung zu überwachen und Datenflussprobleme zu identifizieren. Den Debugger öffnen Sie über den Befehl /h; für die weitere Analyse sind die folgenden Transaktionen hilfreich.

a) WE19 (IDoc-Testwerkzeug)

  • Funktion: Simulieren und Debuggen von IDocs.
  • Nützlich für:
    • Nachvollziehen des Datenflusses in EDI-/IDoc-Prozessen.
    • Fehleranalyse in Inbound- und Outbound-Szenarien.

b) SXMB_MONI (PI/PO Monitoring)

  • Funktion: Überwachung und Debugging von Nachrichtenflüssen in SAP PI/PO.
  • Nützlich für:
    • Identifizieren von Fehlern in Integrationsszenarien.
    • Debugging auf Nachrichtenebene.

c) SMQ1 / SMQ2 (qRFC-Monitoring)

  • Funktion: Debugging von asynchronen RFC-Queues.
  • Nützlich für:
    • Analyse blockierter oder fehlerhafter RFC-Nachrichten.
    • Nachverfolgung von Datenflüssen in Queues.

a) SU53 (Berechtigungsprüfung)

  • Funktion: Analyse fehlender Berechtigungen.
  • Nützlich für:
    • Unterstützung für Debugging bei fehlgeschlagenen Berechtigungsprüfungen.
    • Identifikation von Berechtigungsproblemen.

b) STAUTHTRACE

  • Funktion: Verfolgen von Berechtigungsprüfungen während der Laufzeit.
  • Nützlich für:
    • Detaillierte Debugging-Informationen zu Berechtigungen.

a) ST05 (SQL-Trace)

  • Funktion: Analyse von Datenbankabfragen und SQL-Performance.
  • Nützlich für:
    • Identifikation von ineffizienten Datenbankzugriffen.
    • Debugging von Datenbankproblemen.

b) ST12 (Single Transaction Analysis)

  • Funktion: Kombination von SQL-Trace und Runtime Analysis.
  • Nützlich für:
    • Detaillierte Debugging-Analyse einzelner Transaktionen.

c) RZ20 (Alert-Monitoring)

  • Funktion: Überwachung von Systemereignissen und Alerts.
  • Nützlich für:
    • Debugging von System- oder Anwendungsfehlern.

1.1 Haupttransaktionen für Debugging

a) SE80 (ABAP Development Workbench)

  • Funktion: Zentraler Einstiegspunkt für ABAP-Entwicklung.
  • Debugging-Optionen:
    • Programme, Funktionsbausteine und Klassen analysieren.
    • Code durchsuchen und Breakpoints setzen.

b) SE38 (ABAP Editor)

  • Funktion: Bearbeiten und Ausführen von ABAP-Programmen.
  • Debugging-Optionen:
    • Programme direkt im Debugger starten.
    • Syntaxprüfung und Breakpoints setzen.

c) SE37 (Funktionsbausteine)

  • Funktion: Testen und Debuggen von Funktionsbausteinen.
  • Debugging-Optionen:
    • Eingaben simulieren und die Ausführung im Debugger verfolgen.

d) SE24 (Klasseneditor)

  • Funktion: Entwickeln und Analysieren von Klassen und Methoden.
  • Debugging-Optionen:
    • Debuggen von Methoden in einer objektorientierten Umgebung.

1.2 Spezialisierte Debugging-Tools

a) SAT (ABAP Runtime Analysis)

  • Funktion: Performance-Messung und Debugging auf Runtime-Ebene.
  • Nützlich für:
    • Verstehen des Ablaufverhaltens komplexer Programme.
    • Identifizieren von Performanceproblemen.

b) ST22 (ABAP-Dumps)

  • Funktion: Analyse von Laufzeitfehlern und Dumps.
  • Nützlich für:
    • Einsicht in die Fehlerursache mit direktem Bezug zum Debugger.
    • Identifizieren von Codeabschnitten, die zu Fehlern führen.

c) SM50 (Workprozesse überwachen)

  • Funktion: Überwachung und Debugging von laufenden Workprozessen.
  • Nützlich für:
    • Analyse blockierter oder hängender Prozesse.
    • Debugging von Hintergrundprozessen.

d) SM66 (Globale Workprozess-Übersicht)

  • Funktion: Systemweite Analyse der Workprozesse.
  • Nützlich für:
    • Überprüfung von Laufzeitproblemen auf globaler Ebene.
    • Identifikation von Prozessen für das Debugging.

1.3 Debugging im Dialogmodus

a) /H (Debugging aktivieren)

  • Funktion: Aktiviert den Debug-Modus während der Programmausführung.
  • Nützlich für:
    • Nachvollziehen des Programmablaufs für laufende Prozesse.
    • Ad-hoc-Debugging ohne Änderungen am Code.

b) /N und /O (Neustart oder neuer Modus)

  • Funktion: Wechseln zwischen Transaktionen oder Modi während des Debuggings.

a) SWI1 (Workflow-Analyse)

  • Funktion: Analyse und Debugging von Workflows.
  • Nützlich für:
    • Überprüfung einzelner Workflow-Schritte.
    • Identifikation fehlerhafter Workflows.

b) SWUE (Workflow-Ereignis simulieren)

  • Funktion: Simulieren von Workflow-Ereignissen.
  • Nützlich für:
    • Debugging bei Event-getriebenen Prozessen.
    • Testen von Workflowszenarien.