MakionDocs ← makion.dev

Come funziona il cleaner

Il cleaner ABAP è il formattatore e normalizzatore di codice di Makion. È deterministico e preserva il comportamento: cambia solo spazi, maiuscole/minuscole, interruzioni di riga e modernizzazioni sicure dei token, e non cambia mai cosa fa il codice. Il cleaner viene eseguito tramite lo strumento SAP durante un'attività, prima che l'agente scriva o attivi un oggetto.

Configuralo nella scheda ABAP cleaner, visibile a un amministratore del progetto. Tutto ciò che imposti qui vale solo per questo progetto.

Cosa fa — e cosa non fa — il cleaner#

Il cleaner riscrive la forma dell'ABAP, mai il suo significato. Può reindentare le istruzioni, normalizzare le maiuscole/minuscole delle parole chiave, sistemare spaziature e righe vuote, allineare le colonne delle dichiarazioni e applicare modernizzazioni sicure (per esempio trasformando MOVE src TO tgt. in tgt = src.). Ogni regola preserva il comportamento per progettazione — vedi il catalogo completo nella Reference delle regole del cleaner.

Il cleaner non viene mai eseguito su oggetti CDS / DDLS / DDLX / SRVD. Riformattarli ne rovinerebbe le annotazioni. Si applica solo al codice sorgente ABAP.

Attivare il cleaner#

La casella principale Pulisci il codice prima dell'attivazione è l'interruttore on/off dell'intero cleaner in questo progetto. È DISATTIVATA per impostazione predefinita.

Quando è ATTIVA, nel compositore della Chat compare una casella per attività Pulisci questo task, così puoi decidere di eseguire il cleaner per una singola attività. Con l'interruttore principale disattivo, il cleaner non gira mai e quella casella è nascosta.

Controlli della scheda#

Controllo Cosa fa
Pulisci il codice prima dell'attivazione Casella principale. Disattivata per impostazione predefinita. Quando è attiva, abilita il cleaner per questo progetto e rivela Pulisci questo task nel compositore della Chat.
Release ABAP di destinazione Campo numerico (es. 757; intervallo 700799). Regola le regole di modernizzazione — alcune riscritture richiedono una release ABAP minima e non scatteranno su una destinazione inferiore.
Regole Il catalogo delle regole, raggruppate per categoria. Ogni regola ha una casella, un nome, una descrizione, un esempio prima → dopo e un id di regola. Disabilitato a meno che l'interruttore principale non sia attivo.
Salva Salva la configurazione del cleaner per questo progetto.

Release ABAP di destinazione#

Alcune modernizzazioni esistono solo a partire da una data release ABAP — per esempio, le espressioni costruttore come NEW richiedono 7.40, e gli assegnamenti composti come x += n richiedono 7.54. Il valore Release ABAP di destinazione indica al cleaner quale release stai puntando, così applica solo le riscritture che il tuo sistema può compilare. Impostalo sulla release del tuo sistema.

Regole#

Il catalogo delle Regole è raggruppato per categoria — Casing, Declarations, Layout, Spacing, Alignment, Comments, Whitespace, Modernize e Readability. Ogni regola è attivabile singolarmente e configurabile tramite il profilo del progetto. Senza un profilo, si applica il valore predefinito integrato di ogni regola. I controlli delle regole sono disabilitati a meno che l'interruttore principale non sia attivo.

Per l'elenco completo di tutte le 45 regole — cosa fa ciascuna, il suo valore predefinito e il suo gruppo — vedi la Reference delle regole del cleaner.

Eseguirlo per un'attività#

  1. Nella scheda ABAP cleaner, attiva Pulisci il codice prima dell'attivazione e scegli le regole che vuoi.
  2. Imposta Release ABAP di destinazione sulla release del tuo sistema.
  3. Clicca Salva.
  4. Nella Chat, spunta Pulisci questo task sull'attività che vuoi pulire. Il cleaner viene eseguito prima che l'agente scriva o attivi l'oggetto.

Poiché il cleaner preserva il comportamento, è sicuro lasciarlo abilitato — sistemerà e modernizzerà il codice prodotto dall'agente senza cambiare cosa fa. Regola le singole regole per adattarle allo stile della tua squadra.