Die Notwendigkeit für Debugging
Es lässt sich nicht vermeiden, dass in Programmen Fehler auftreten. Diese Fehler können sich aber auf unterschiedliche Weise bemerkbar machen. Wenn ein Benutzer eine fehlerhafte Anwendung startet, kann sie abstürzen, es können unerwartete Ereignisse auftreten oder es kann überhaupt nichts passieren. Aus der Sicht der Benutzer, also auf der Ebene der Benutzungsoberfläche, ist es unmöglich zu erkennen, wie und warum dieser Fehler aufgetreten ist.
Als Entwickler müssen Sie das Programm nun genauer und zeilenweise untersuchen, um festzustellen, welche Anweisungen und Kombinationen von Werten in den verschiedenen Programmvariablen den Fehler verursacht haben. Hier kommt der Debugger ins Spiel.
Laufzeitfehler

Es ist wichtig, beim Schreiben von ABAP-Code regelmäßig eine Syntaxprüfung durchzuführen. Allerdings ist eine korrekte Syntax nicht immer eine Garantie dafür, dass Ihr Programm zur Laufzeit auch erfolgreich ausgeführt werden kann.
Beispielsweise können Berechnungen in Ihrem Programm abhängig von den verwendeten Werten ein Problem verursachen. Die Abbildung „In Programmen mit korrekter Syntax können Probleme auftreten" zeigt ein Programm, das zwar syntaktisch korrekt ist, aber dennoch einen Laufzeitfehler verursacht.
ABAP-Kurzdump

Wenn die Laufzeitumgebung auf eine nicht ausführbare Anweisung stößt, bricht sie das Programm ab und löst einen Laufzeitfehler aus. Jeder Laufzeitfehler wird mit einem Namen bezeichnet und einer bestimmten Fehlersituation zugeordnet. Die Laufzeitumgebung bricht das Programm ab, wenn ein Laufzeitfehler nicht abgefangen wird. Der ABAP-Laufzeitfehler kann ab ABAP 7.53 im ABAP Runtime Error Viewer angezeigt werden.
Der ABAP Runtime Error Viewer kann über verschiedene Einstiegspunkte geöffnet werden:
- Wenn der Fehler beim Ausführen der ABAP-Anwendung auftritt, wird in der unteren rechten Ecke ein Dialog angezeigt. Wählen Sie Anzeigen, um den Fehler anzuzeigen.
- Doppelklicken Sie in der Sicht Feed-Reader auf den Eintrag für den Laufzeitfehler.
Von der Symbolleiste aus können Sie zu der Quelltextposition navigieren, an der der Dump aufgetreten ist, und den Link zum Dump teilen.

Unten im Editor befinden sich drei Registerkarten:
Die erste liefert folgende Informationen:
- Kopfdaten
- Fehleranalyse
- Informationen darüber, wo das Programm abgebrochen wurde
- Quelltextauszug
- Die Zeile, in der der Fehler aufgetreten ist, wird hervorgehoben. Wählen Sie die Zeile, um zum Fehler im Quelltext zu navigieren.
- Aktive Aufrufe/Ereignisse
Die Registerkarte Langtext enthält die vollständigen Dump-Informationen. Es unterstützt die Funktionen „Gliederung" und „Schnellübersicht" (Strg+O auf Ihrer Tastatur).
Die Registerkarte Unformatierte Anzeige stellt die Dump-Informationen in einem technischen Format bereit, das nur für spezielle Analysesituationen erforderlich ist.
Über einen Kurzdump können Sie auch direkt zum ABAP Debugger navigieren, um die Werte der Variablen kurz vor dem Auftreten des Laufzeitfehlers einzusehen.
Laufzeitfehler sind völlig normal. Sie werden Ihnen wahrscheinlich bei der Entwicklung Ihrer Programme häufig begegnen. Dennoch sollten Sie Laufzeitfehler soweit wie möglich vermeiden. Ein Benutzer in Ihrem Produktivsystem kann verwirrt sein, wenn er einen Laufzeitfehler sieht, z.B. den Fehler in der Abbildung. Der Benutzer versteht möglicherweise keinen Verweis auf die ABAP-Anwendung und die dargestellten technischen Informationen.
Vermeiden von Laufzeitfehlern


Im obigen Beispiel wurde eine Logik hinzugefügt, um den Laufzeitfehler "Division durch Null" zu vermeiden.