ABAP Cleaner: Neuer, besserer "Pretty Printer" für Eclipse und als Standalone
Um Fehler in der Clean ABAP Prüfung von vornherein zu vermeiden, sollte das Coding direkt nach den Clean ABAP Guidelines geschrieben werden. Damit sich hierbei aber weniger auf die Formatierung und stattdessen mehr auf die eigentlichen Probleme fokussiert werden kann, sollte der ABAP Cleaner verwendet werden.
Automatisierte Codeanpassung nach den Regeln der Clean ABAP Guideline
Der ABAP Cleaner passt Coding automatisiert vielen Punkten der Clean ABAP Guideline an. So werden Zeilen richtig eingerückt, Methodenaufrufe optimiert und nicht genutze Variablen gekennzeichnet. Der ABAP Cleaner kann somit als Pretty Printer mit zusätzlichen Funktionen für Clean ABAP angesehen werden.
Der große Vorteil am ABAP Cleaner ist, dass vollumfänglich konfiguriert werden kann, welche Regeln bei der automatischen Anpassung übernommen werden sollen und welche nicht. Wenn ein Projekt also nicht alle Vorgaben aus der Clean ABAP Guideline übernehmen möchte, können bestimmte Regeln aus dem ABAP Cleaner ausgeschlossen werden.
Installation des ABAP Cleaners für Eclipse oder als Stand Alone Version
Der ABAP Cleaner kann per GitHub in die ABAP Tools für Eclipse eingebaut werden oder per Stand Alone Version installiert werden. Durch die Stand Alone Version ist es möglich, auch Coding aus der SE80 per Copy & Paste zu formatieren. In der Eclipse sind die Features hingegen vollumfänglich integriert, sodass ein Kopieren nicht notwendig ist. Wenn man allerdings erst einmal vorsichtig testen möchte, wie der Code sich durch den ABAP Cleaner verändert, kann man das Coding aber auch erst einmal in die Stand Alone Version kopieren. Oder man verwendet die eingebaute Vorschau im ABAP Cleaner (Interactive ABAP Cleaner). Hier wird angezeigt, welche Zeilen von Änderungen betroffen sind und durch zwei Vorher-Nachher Fenster visualisiert. Hier kann auch noch einmal konfiguriert werden, welche Regeln angewandt werden sollen und welche nicht.
Link zu GitHub: ABAP Cleaner: https://github.com/SAP/abap-cleaner
Tastenkürzel in Eclipse bei installiertem ABAP Cleaner:
- Sofort bereinigen (ohne Vorschau über das eingestellte Standard-Profil): Strg. + 4
- Interaktiv bereinigen (mit Vorschau): Strg. + Shift + 4
Installation in Eclipse
Damit der ABAP Cleaner in Eclipse genutzt werden kann, müssen vorher die ADT Tools (ABAP Development Tools) in der Eclipse installiert werden. Weitere Infos dazu gibt es auf folgender Seite:
https://tools.hana.ondemand.com/#abap
Danach kann der ABAP Cleaner folgendermaßen installiert werden:
Eclipse öffnen -> Help -> Install new Software.
Work with: https://sap.github.io/abap-cleaner/updatesite
-> Enter -> Auswählen von „ABAP Cleaner for ABAP Development Tools (ADT) -> Next -> Finish
Interaktiver ABAP Cleaner mit Vorschau zu den Änderungen:
Konfiguration von Profilen und Vorschau der Funktionen: Configure Button in „Cleanup Settings“
In dem interaktiven ABAP Cleaner kann über den „Configure“ Button die Konfiguration von verschiedenen Profilen im ABAP Cleaner vorgenommen werden. Es können mehrere Profile angelegt werden, die die Regeln des ABAP Cleaners ein- oder ausschließen, etwa je nach Projekt oder Kundensystem.
Vorgehen: Profil auswählen -> Regeln links suchen und auswählen (werden durch Beispiel illustriert) -> Optionen anpassen -> Speichern
Standalone ABAP Cleaner Software
Hierbei handelt es sich um ein eigenständiges Programm, in das man z.B. den ABAP Code aus der SE80 über die Zwischenablage reinkopieren kann. Dann kann der Code dort optimiert und wieder rauskopiert werden. Das Programm kann auch eingesetzt werden, falls der ABAP Cleaner erstmal nicht am Original-Coding der Eclipse getestet werden soll.
Download-Link Standalone Version: https://github.com/SAP/abap-cleaner/releases
EXE-Datei starten
-> Code aus SE80 kopieren und in abap-cleaner-Programm einfügen
Verwandte Themen
- Clean ABAP: Modernes ABAP Coding
- Clean ABAP Guideline: Git mit allen aktuellen Vorgaben zu ABAP
- Code PAL für Clean ABAP: ATC Check für Clean ABAP und ABAP Guidelines
Haben Sie Fragen? Nehmen Sie Kontakt zu uns auf!