MakionDocs ← makion.dev

Wie der Cleaner funktioniert

Der ABAP-Cleaner ist Makions eigener Code-Formatierer und -Normalisierer. Er ist deterministisch und verhaltenserhaltend: Er ändert nur Leerraum, Groß-/Kleinschreibung, Zeilenumbrüche und sichere Token-Modernisierungen und ändert nie, was der Code tut. Der Cleaner läuft während einer Aufgabe über das SAP-Werkzeug, bevor der Agent ein Objekt schreibt oder aktiviert.

Konfigurieren Sie ihn im Reiter ABAP-Cleaner, der für einen Projekt-Admin sichtbar ist. Alles, was Sie hier einstellen, gilt nur für dieses Projekt.

Was der Cleaner tut — und was nicht#

Der Cleaner schreibt die Form von ABAP um, nie seine Bedeutung. Er kann Anweisungen neu einrücken, die Groß-/Kleinschreibung von Schlüsselwörtern normalisieren, Abstände und Leerzeilen aufräumen, Deklarationsspalten ausrichten und sichere Modernisierungen anwenden (zum Beispiel MOVE src TO tgt. zu tgt = src. machen). Jede Regel ist von Grund auf verhaltenserhaltend — siehe den vollständigen Katalog in der Cleaner-Regeln-Referenz.

Der Cleaner läuft nie auf CDS- / DDLS- / DDLX- / SRVD-Objekten. Diese neu zu formatieren würde ihre Annotationen zerstören. Er gilt nur für ABAP-Quelltext.

Den Cleaner einschalten#

Das Hauptkontrollkästchen Code vor Aktivierung bereinigen ist der Ein/Aus-Schalter für den gesamten Cleaner in diesem Projekt. Es ist standardmäßig AUS.

Wenn es AN ist, erscheint im Chat-Editor ein aufgabenspezifisches Kontrollkästchen Diese Aufgabe bereinigen, sodass Sie entscheiden können, den Cleaner für eine einzelne Aufgabe laufen zu lassen. Ist der Hauptschalter aus, läuft der Cleaner nie und dieses Kontrollkästchen ist ausgeblendet.

Steuerelemente des Reiters#

Steuerelement Was es tut
Code vor Aktivierung bereinigen Hauptkontrollkästchen. Standardmäßig AUS. Wenn AN, aktiviert es den Cleaner für dieses Projekt und blendet Diese Aufgabe bereinigen im Chat-Editor ein.
Ziel-ABAP-Release Zahleneingabe (z. B. 757; Bereich 700799). Steuert die Modernisierungsregeln — einige Umschreibungen benötigen ein Mindest-ABAP-Release und feuern bei einem niedrigeren Ziel nicht.
Regeln Der Regelkatalog, nach Kategorie gruppiert. Jede Regel hat ein Kontrollkästchen, einen Namen, eine Beschreibung, ein Vorher → Nachher-Beispiel und eine Regel-ID. Deaktiviert, solange der Hauptschalter nicht an ist.
Speichern Speichert die Cleaner-Konfiguration für dieses Projekt.

Ziel-ABAP-Release#

Manche Modernisierungen existieren erst ab einem bestimmten ABAP-Release — zum Beispiel benötigen Konstruktorausdrücke wie NEW das Release 7.40, und zusammengesetzte Zuweisungen wie x += n das Release 7.54. Der Wert Ziel-ABAP-Release sagt dem Cleaner, welches Release Sie anpeilen, sodass er nur Umschreibungen anwendet, die Ihr System kompilieren kann. Setzen Sie ihn auf das Release Ihres Systems.

Regeln#

Der Regeln-Katalog ist nach Kategorie gruppiert — Casing, Declarations, Layout, Spacing, Alignment, Comments, Whitespace, Modernize und Readability. Jede Regel ist einzeln umschaltbar und über das Profil des Projekts konfigurierbar. Ohne Profil gilt der eingebaute Standard jeder Regel. Die Regel-Steuerelemente sind deaktiviert, solange der Hauptschalter nicht an ist.

Die vollständige Liste aller 45 Regeln — was jede tut, ihr Standard und ihre Gruppe — finden Sie in der Cleaner-Regeln-Referenz.

Ihn für eine Aufgabe laufen lassen#

  1. Schalten Sie im Reiter ABAP-Cleaner Code vor Aktivierung bereinigen ein und wählen Sie die gewünschten Regeln.
  2. Setzen Sie Ziel-ABAP-Release auf das Release Ihres Systems.
  3. Klicken Sie auf Speichern.
  4. Setzen Sie im Chat bei der Aufgabe, die bereinigt werden soll, das Häkchen Diese Aufgabe bereinigen. Der Cleaner läuft, bevor der Agent das Objekt schreibt oder aktiviert.

Da der Cleaner verhaltenserhaltend ist, kann er gefahrlos aktiviert bleiben — er räumt den vom Agenten erzeugten Code auf und modernisiert ihn, ohne zu ändern, was er tut. Stimmen Sie einzelne Regeln auf den Hausstil Ihres Teams ab.