Was ist der ABAP-Cleaner und wie kann er Ihnen nutzen?
Der ABAP Cleaner ist ein Open-Source-Tool zur Verbesserung und Vereinheitlichung von ABAP-Quellcode. Er hilft Entwicklern bei der Code-Formatierung, Bereinigung und Vereinfachung von ABAP-Programmen. Das Hauptziel ist es, die Lesbarkeit und Wartbarkeit von ABAP-Code zu verbessern, indem er automatisch Formatierungen und Umstrukturierungen durchführt. Entwickelt wurde er von SAP-Experten, um Best Practices in der ABAP-Programmierung zu unterstützen.
Als kleines, aber feines SAP-Beratungshaus wissen wir, wie wichtig es ist, den Code-Bestand nicht nur fehlerfrei, sondern auch bestmöglich lesbar und wartbar zu halten – insbesondere beim Wechsel von SAP R/3 auf S/4HANA.
Aus diesem Grund bieten wir Ihnen hier einen Guide mittels dem Sie den ABAP-Cleaner installieren, konfigurieren und anschließend für sich nutzen können.
Das Wichtigste gleich vorweg – Was sind die Vorteile des ABAP-Cleaners
Der ABAP-Cleaner:
- automatisiert mühsame Codeformatierung, spart Zeit und Konzentration.
- erlaubt mehr Konzentration auf komplexes Refactoring und Code-Verbesserungen.
- ermöglicht konsistenten, gut formatierten Code für bessere Lesbarkeit und Wartbarkeit.
- vereinfacht die Einarbeitung neuer Entwickler durch die Automatisierung von Regeln und Richtlinien für sauberen Code.
- reduziert Fehler im Code durch verbesserte Lesbarkeit und Unterstützung der Fehlererkennung.
ABAP Cleaner: Vereinfachte Automatisierung für mehr Effizienz in der Datenpflege
Der ABAP Cleaner bietet derzeit über 65 Bereinigungsregeln, von denen jede auf Knopfdruck in Ihren ABAP-Code implementiert werden kann. Der ABAP Cleaner arbeitet ähnlich wie Pretty Printer, bietet aber eine größere Auswahl an Bereinigungsregeln und anpassbaren Formatierungsoptionen. Da er die Funktionalität von Pretty Printer enthält, benötigen Sie Pretty Printer möglicherweise nicht mehr.
Wie wird der ABAP-Cleaner installiert?
Der ABAP Cleaner, der im April 2023 als Open Source Initiative auf GitHub gestartet wurde, ist weiterhin in Entwicklung.
Um das ABAP Cleaner Plug-in in ABAP Development Tools (ADT) zu installieren, starten Sie ADT, gehen Sie zu „Hilfe/Neue Software installieren…“, fügen Sie den Link https://sap.github.io/abap-cleaner/updatesite in das Feld „Arbeiten mit“ ein, drücken Sie die Eingabetaste und folgen Sie den Installationsanweisungen, um die Installation von ABAP Cleaner zu bestätigen (Hinweis: Der Inhalt ist derzeit nicht signiert). Weitere Informationen und Hinweise zur Fehlerbehebung finden Sie unter Voraussetzungen und Installation.
Verwendung des ABAP Cleaner Plug-Ins in Verbindung mit den ABAP Development Tools
Nach der Installation des ABAP Cleaners im ADT werden im Menü Quelltext drei neue Menüpunkte angezeigt.
- Automatisches Bereinigen: Die Verwendung der automatischen Bereinigung ist so einfach wie die Verwendung von Pretty Printer: Markieren Sie eine beliebige Menge an Code, von einer einzelnen Anweisung bis zum gesamten Code, im aktuellen Code-Editor und drücken Sie Strg+4 oder wählen Sie das Menü „Quellcode/Clean Up With Automated ABAP Cleaner“.
- Interaktives Bereinigen: Um die interaktive Bereinigung zu verwenden, markieren Sie einen beliebigen Code im Editor (oder keinen Code, um die aktuelle Methode zu bereinigen usw.) und drücken Sie Strg+Umschalt+4 oder wählen Sie das Menü „Quelltext/Bereinigen mit dem interaktiven ABAP Cleaner…“.
- Schreibgeschützte Vorschau: Die Nur-Lese-Vorschau im ABAP Cleaner zeigt die vorgeschlagenen Code-Änderungen an, ohne das Original zu verändern. Sie dient als Sicherheitscheck, bevor die Änderungen angewendet werden Strg + Alt + Umschalt + P
Anzeige von Unterschieden in der Codierung
Diff-Ansicht: Das Hauptfenster des ABAP Cleaners zeigt auf der linken Seite den eingehenden Code und auf der rechten Seite die Bereinigungsergebnisse.
Gelber und oranger Hintergrund kennzeichnen Änderungen, roter und grüner Hintergrund kennzeichnen gelöschte und hinzugefügte Zeilen. Mit den Pfeiltasten links und rechts (und vielen anderen Tastenkombinationen) können Sie zur vorherigen oder nächsten Abweichung navigieren.
Verwendete Regeln
In der aktuellen Auswahl verwendete Regeln: Wenn Sie Anweisungen in der Diff-Ansicht auswählen, finden Sie in der Liste „In der aktuellen Auswahl verwendete Regeln“ die angewendeten Bereinigungsregeln.
- Sie können die Häkchen entfernen, um eine Änderung lokal rückgängig zu machen. Beachten Sie, dass dies NICHT die Bereinigungsregel im Allgemeinen deaktiviert, sondern nur die aktuell in der Diff-Ansicht ausgewählten Änderungen.
- Anstatt eine Regel aus der Liste lokal zu deaktivieren, können Sie mit Strg+Klick auf die Regel die Konfigurationsoptionen generell an Ihre Bedürfnisse anpassen oder die Bereinigungsregel im aktuellen Profil sogar komplett deaktivieren (siehe „So konfigurieren Sie den ABAP Cleaner“ weiter unten).
Einstellung für die Bereinigung
In der rechten oberen Ecke finden Sie drei wichtige Einstellungen für Ihre Bereinigung.
- Bereinigungsprofile:
- Wählen Sie ein Profil aus, in dem der Aktivierungsstatus und detaillierte Konfigurationen der Bereinigungsregeln gespeichert werden.
- Passen Sie die Profile nach Bedarf an.
- Das zuletzt bei der interaktiven Bereinigung ausgewählte Profil wird für die automatische Bereinigung (Strg+4) verwendet.
- Standard-Bereinigungsbereich:
- Legt den Bereinigungsbereich fest, wenn kein Code ausgewählt ist (Strg+Umschalt+4).
- Optionen: aktuelle Anweisung, Methode, Klasse oder gesamtes Codedokument.
- Regeleinschränkung nach ABAP Release:
- Schränkt die Regeln auf eine Syntax ein, die mit einem bestimmten ABAP Release kompatibel ist.
- Verhindert, dass neuere Syntax verwendet wird, wenn diese nicht vom Release unterstützt wird.
- Die Auswahl erfolgt automatisch anhand des ABAP-Releases Ihres Codes im ADT-Plugin.
- Eine weitere Einschränkung kann für den Downport von Code auf frühere ABAP-Releases erforderlich sein.
Änderungen übernehmen:
Nachdem Sie die vom ABAP Cleaner vorgeschlagenen Änderungen überprüft und akzeptiert haben, klicken Sie einfach auf ‚Übernehmen und Schließen‘, um die Änderungen zu übernehmen. Dadurch werden die Änderungen nahtlos in Ihren ADT-Editor übertragen, so dass Sie sie aktivieren können. Wenn Sie die vorgeschlagenen Änderungen nicht übernehmen möchten, können Sie auch auf ‚Abbrechen‘ klicken, um alle vorgeschlagenen Änderungen zu verwerfen und zum ursprünglichen Code zurückzukehren.
Wie ist der ABAP-Cleaner zu konfigurieren?
Der ABAP Cleaner enthält zwei Reinigungsprofile:
- Das Standardprofil aktiviert fast alle Bereinigungsregeln mit empfohlenen Standardwerten.
- Das Essential-Profil aktiviert nur Regeln, die dem Clean ABAP Styleguide entsprechen, derzeit etwa 40%.
Die Automatisierung geht über die Anforderungen des Styleguides hinaus und fördert Konsistenz und Lesbarkeit.
- Konsistenz ist eine der wichtigsten Regeln des Styleguides, was die Vorteile der automatischen Formatierung verdeutlicht.
- Erkunden Sie die verfügbaren Bereinigungsregeln und Konfigurationen, indem Sie im Fenster des ABAP Cleaners auf „Konfigurieren…“ klicken.
Passen Sie die Profile und Regeln so an, dass sie den Formatierungspräferenzen Ihres Teams entsprechen.
Die Bereinigungsregeln kennenlernen
Der ABAP Cleaner bietet derzeit 69 Bereinigungsregeln, die in Regeln für Leerzeilen, Leerzeichen, Deklarationen, Syntax, Befehle, Pretty Printer und Ausrichtung unterteilt sind:
Wenn Sie in der Liste Regeln im aktuellen Profil auf eine Bereinigungsregel klicken, werden auf der rechten Seite des Fensters detaillierte Informationen zu dieser Regel angezeigt. Dies ist der beste Weg, um herauszufinden, was der ABAP Cleaner bietet. Sie finden dort:
- Eine Beschreibung und eventuelle Einschränkungen der ausgewählten Regel.
- Verweise auf den Clean ABAP Styleguide, das Projekt Code pal for ABAP oder die ABAP-Schlüsselwortdokumentation, die zeigen, worauf die Regel basiert:
- Optionen, mit denen Sie die Bereinigungsregel so konfigurieren können, dass Sie genau das Formatierungs- und Bereinigungsergebnis erhalten, das Sie und Ihr Team wünschen:
Beispiele
Beispiele, die in einer Diff-Ansicht zeigen, was die Regel ändert und wie die Optionen das Ergebnis beeinflussen. Sie können Ihren eigenen Code in diese Diff-Ansicht einfügen, um die aktuelle Bereinigungsregel und die Auswirkungen ihrer Einstellungen auf Ihren Code zu testen.
Durch Aktivieren oder Deaktivieren einer Regel in der Liste wird diese Regel im aktuellen Profil aktiviert oder deaktiviert.
Aktivieren und Konfigurieren neuer Bereinigungsregeln aus Updates
Der ABAP Cleaner wird ständig weiterentwickelt und führt neue Bereinigungsregeln und Optionen ein: ADT informiert Sie automatisch über verfügbare Updates für den ABAP Cleaner. Über die Konfigurationseinstellungen können Sie diese Voreinstellung anpassen. Seien Sie vorsichtig und deaktivieren Sie die automatische Aktivierung. Neue Regeln bleiben zunächst inaktiv, die bisherigen Einstellungen bleiben erhalten. Verwenden Sie „Hervorheben“: Funktionen hinzugefügt nach <Version> (<Datum>)“, um die neuesten Aktualisierungen zu erkennen. Neue Regeln werden grün hervorgehoben, Regeln mit neuen Optionen gelb.
Team-Profile synchronisieren :
- Die Synchronisierung der ABAP Cleaner-Einstellungen innerhalb Ihres Teams ist für die Konsistenz unerlässlich.
- ABAP Cleaner bietet die Möglichkeit, Profile zu synchronisieren, um diese Bemühungen zu unterstützen.
- Klicken Sie auf die Schaltfläche „Ordner“ im Abschnitt „Profile“, um synchronisierte Ordner einzurichten.
- Geben Sie bis zu drei zusätzliche Ordner für Teamprofile an.
- Durch die Verwendung von synchronisierten Ordnern, auf die Ihr Team über Plattformen wie SharePoint oder OneDrive zugreifen kann, können Profile leicht gemeinsam genutzt werden.
- Teamprofile werden mit einem Kurznamen hinzugefügt (z.B. „Team A: Standard“) und sind schreibgeschützt.
Der Architekt oder Hauptentwickler Ihres Teams kann ein Quellprofil lokal verwalten und bei Bedarf zur Verteilung in synchronisierte Ordner exportieren.
Ändern und Erstellen von Profilen :
Jedes Profil enthält alle aktiven oder inaktiven Regeln und ihre detaillierten Konfigurationsoptionen. Im Abschnitt Profile können Sie eines der vorkonfigurierten Profile auswählen, um es anzuzeigen oder zu bearbeiten. Sie können auch eigene Profile erstellen oder bestehende Profile kopieren, löschen, umbenennen, importieren und exportieren:
Technisch gesehen ist ein Profil eine kleine JSON-ähnliche Textdatei mit der Endung .cfj, die in den Anwendungsdaten auf Ihrem lokalen Rechner gespeichert wird.
Fazit: Der ABAP Cleaner als Schlüssel zur Effizienz
Der ABAP Cleaner ist mehr als nur ein Formatierungstool – er ist ein Katalysator für Effizienz und Qualität in der SAP-Softwareentwicklung. In Zeiten knapper IT-Budgets und zunehmender Systemkomplexität bietet er Entwicklern und Unternehmen einen entscheidenden Wettbewerbsvorteil.
Ihre Vorteile auf einen Blick:
– Drastische Zeitersparnis bei Codeformatierung
– Konsistente Codequalität über Teams hinweg
– Vereinfachter Onboarding-Prozess für neue Entwickler
– Optimale Vorbereitung für S/4HANA-Migrationen
– Reduzierung technischer Schulden
Bleiben Sie auf dem Laufenden
Möchten Sie mehr über SAP-Entwicklung und innovative Tools erfahren? Folgen Sie uns auf LinkedIn für regelmäßige Updates und Insights aus der Welt der Softwareentwicklung.
Disclaimer: Der ABAP Cleaner wird kontinuierlich weiterentwickelt. Informieren Sie sich stets über die aktuellsten Versionen und Funktionen auf der offiziellen GitHub-Seite.