In diesem Artikel verrate ich Dir geniale Debugging Tipps für Nachrichten in SAP ERP bzw. SAP S/4HANA. In der Programmiersprache ABAP können Nachrichten unterschiedlich genutzt werden. Es gibt einfache Möglichkeiten, Nachrichten in der SAP GUI im ABAP-Programmcode mithilfe des Debuggers zu untersuchen und den Grund für die Nachricht zu ermitteln.
Nachrichten werden im SAP-System in den unterschiedlichsten Formen verwendet. Ziel von Nachrichten ist es, dem Anwender wichtige Informationen zu dem Prozess und seinen Eingaben zu verraten. Dabei unterscheidet man zwischen Erfolgs-, Hinweis- und Fehlermeldung. So weiß der SAP-Anwender, ob seine Eingaben korrekt oder fehlerhaft sind und ggf. etwas korrigiert werden muss oder sollte.
Meldungen im Debugger untersuchen – Ursprung der Nachricht
Der einfachste und schnellste Weg, den Ursprung der Nachricht zu analysieren, ist es, die Detailansicht der Nachricht selber zu öffnen. Nachrichten können in den unterschiedlichsten Varianten angezeigt werden. Beispiele: PopUp-Nachricht oder Nachricht in der Statuszeile. Wenn man die angezeigte Nachricht bzw. Meldung in der Statuszeile links unten doppelt anklickt, so öffnet sich ein Fenster (Performance Assistent) und eine Erklärung der Meldung wird angezeigt.

Neben dem Titel und der Nachrichten-ID wird die Meldung erklärt. Die gängigsten Fehler und Hinweise sind in SAP ERP sehr ausführlich erklärt und bieten dem SAP-Benutzer auch sehr oft Hilfestellungen und mögliche Lösungen für das Problem. Wenn man bspw. in der Transaktion für das Vorerfassen einer Rechnung (FV60) ein falsches Steuerkennzeichen eingegeben hat, so wird diese Meldung angezeigt. Geübte SAP-Benutzer wissen natürlich sofort die Ursache des Problems und können es lösen, in dem man ein gültiges Steuerkennzeichen eingibt.

Dabei erhält man leider nicht bei allen Meldungen eine so gute und ausführliche Beschreibung. Teilweise muss man direkt im Debugger nach der Ursache des Problems suchen. Man kann direkt zum Ursprung der Nachricht springen, wenn man den zweiten Button von rechts in der Buttonleiste anklickt.

Dort kann man dann im Debugger einen Breakpoint setzen, um anschließend die Meldung im Debugger untersuchen zu können.

Breakpoints anlegen für Nachricht
Im Debugger kann man über die Menüfunktion „Breakpoints > Breakpoint bei > Breakpoint bei Message“ direkt einen Breakpoint für die spezifische Nachricht anlegen. In den Debugger gelangt man über die Eingabe von „/h“ im OK-Code-Feld.

Anschließend gibt man die ID und den Nachrichtentyp ein und bestätigt die Eingabe.

Daraufhin wird bei der nächsten Ausführung direkt der Breakpoint verwendet. Auch ohne über die Eingabe von „/h“ im OK-Code-Feld springt man in den ABAP Debugger an die Stelle der Nachricht.
Alternativ kann man einen Breakpoint beim ABAP-Befehl MESSAGE anlegen lassen. Hierzu ruft man die Menüfunktion „Breakpoints > Breakpoint bei > Breakpoint bei Anweisung“ auf oder nutzt „Umschalt + F5“. Daraufhin gibt man die Anweisung MESSAGE ein. Anschließend wird der Breakpoint gesetzt und bei der nächsten Ausführung ausgelöst.

Meldungen im Debugger untersuchen – Watchpoints
Watchpoints sind mächtige Werkzeuge, die man beim Debuggen benutzen kann. So kann man Meldungen im Debugger untersuchen, auch wenn man noch überhaupt nicht weiß, wo genau der Ursprung des Problems im ABAP-Coding ist.
Um Watchpoins im Debugger benutzen zu können, benötigen wir hierfür die Meldungsnummer. Diese wird in der Detailsicht im Peformance Assistant direkt unter dem Titel angezeigt. Man muss hierbei beachten, dass eine Meldung aus einer Nachrichtenklasse und einer Meldungsnummer besteht. Um Meldungen im Debugger untersuchen zu können, benötigen wir die Meldungsnummer ohne die Meldungs-ID. Als Faustregel kann man sich merken, dass man einfach die Zahl benötigt. In diesem Fall “740“.

Wenn man die Meldungsnummer kennt, startet man das Debugging kurz bevor die Meldung angezeigt wird. Dafür gibt man im OK-Code-Feld bzw. Kommandofeld /h ein. “/h” sorgt dafür, dass das Debugging eingeschaltet ist und bei der nächsten Interaktionen mit dem System der ABAP-Code im Debugger gestartet bzw. ausgeführt wird.
Sofort im Debugger erstellt man einen Watchpoint für die Variable SY-MSGNO und der Bedingung “SY-MSGNO = ‘740’“. Dann bestätigt man die Eingabe und legt damit den Watchpoint an. Man kann natürlich auch alternativ einen Watchpoint auf die Nachrichten-ID (z.B. “FF”) erstellen.

Anschließend kann man mit F8 die Ausführung im Debugger fortfahren. Der Debugger wird dann eingehalten, wenn die Bedingungen erfüllt ist. Also eine Meldung mit der ID “740” aufgerufen wird. Und das ist genau die Stelle, an der die Meldung erzeugt wird.

Verwendungsnachweis
Einer der wichtigsten Debugging Tipps für Nachrichten ist der Verwendungsnachweis.
In der Nachrichtenpflege (Transaktion SE91) kann man den Verwendungsnachweis aufrufen. Zuerst gibt man die Nachrichtenklasse an und geht daraufhin in den Anzeigemodus. Anschließend sucht man nach der Nachricht mithilfe der Nachrichtennummer. Als Nächstes wählt man diese aus und drückt den Button für den Verwendungsnachweis oder nutzt „Strg + Umschalt + F3“.

Bei „Verwendung in“ kann man die vorausgewählten Checkboxen stehen lassen (Programmen, Klassen, Web-Dynpro-Components). Daraufhin erhält man eine Liste mit allen ABAP-Programmzeilen, in denen diese Nachrichtennummer verwendet wird. Nun sucht man sich sein Programm heraus und untersucht die Ursache.
PopUps debuggen
Unter Umständen kann es vorkommen, dass man PopUps debuggen möchte. Also Interaktionen mit erscheinenden Fenstern. PopUps kann man einfach mit dem Systembefehl „/h“ in einer SAP-Verknüpfung debuggen. Eine Verknppfung kann man mit dem Button in der Buttonleiste anlegen. Hier gibt man den Typ „Systembefehl“ und den Befehl „/h“ an, wählt die zusätzlichen Systemeinstellungen und bestätigt die Eingaben.

Daraufhin wird auf dem Desktop eine SAP-Verknüpfung erzeugt. Man kann jetzt einfach das PopUp debuggen, indem man nach dem Erscheinen des PopUps doppelt auf die Verknüpfung klickt. Daraufhin wird das Debugging eingeschaltet durch den Systembefehl „/h“ in der Verknüpfung.
Alternativ kann man eine TXT-Datei erstellen mit folgendem Inhalt:
[FUNCTION] Command=/H Tittle=Debugger Type=SystemCommand
Diese Text-Datei kann man nach dem Erscheinen des PopUps per Drag&Drop auf das PopUp-Fenster ziehen, um das Debugging im Hintergrund ebenfalls zu aktivieren.
Meiner Meinung nach ein sehr praktischer und nützlicher Debugging Tipp für Nachrichten. Dieser Trick kann generell für das Debugging verwendet werden.
Meldung untersuchen – Customizing, Glossar, SAP Help Portal, SAP-Hinweise
Wenn auch eine intensive Analyse im Debugger nichts gebracht hat und man nicht weiter weiß, gibt es weitere Orte, die man nach Hilfe ersuchen kann: Customizing, Glossar, SAP Help Portal, SAP-Hinweise.
Abhängig von der Nachricht kann man in der Buttonleiste direkt in das Customizing abspringen und dort die Customizing-Einstellungen untersuchen.
Des Weiteren nützt ein Absprung ins Glossar, um die Theorie einmal nachzulesen und zu prüfen, ob man hier im SAP-Standard eine Funktion missachtet hat.
Das SAP Help Portal ist eine Internetseite direkt von SAP und sehr zu empfehlen. Dort findet man zu gängigen Problemen schnell und einfach ebenfalls Unterstützung.
Manchmal existiert in der Software ein Bug. Ein Problem, das bereits von der SAP behoben wurde. Dafür eignet es sich, nach SAP-Hinweisen zu suchen, um zu prüfen, ob nicht doch das Problem an der Software selber liegt. Auf support.sap.com findet man ebenfalls häufig eine sehr gute Hilfe.
Alle genannten Punkte kann man (abhängig von der Art der Meldung) direkt in der Buttonleiste in der Nachricht bzw. Meldung aufrufen und wird schon zum notwendigen Bereich geleitet.
Über den Autor
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.
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.