Referencia de reglas del cleaner
Este es el catálogo completo de las 45 reglas que el cleaner ABAP puede aplicar. Cada regla se lista con su valor por defecto (Activada o Desactivada) y lo que hace. Las tablas están agrupadas por categoría, coincidiendo con la lista Reglas de la pestaña Cleaner ABAP.
Todas las reglas preservan el comportamiento — cambian la forma del código, nunca lo que hace. El cleaner trabaja en una tubería fija: Lex → ejecutar las reglas habilitadas en un orden fijo → volver a emitir. Cada regla se puede activar y configurar individualmente a través del perfil del proyecto; sin perfil, se aplica el valor por defecto de abajo.
Cinco reglas están Desactivadas por defecto: chain_split, concatenate_to_template, describe_lines, identifier_case, align_assignments. Todo lo demás está activado por defecto.
Algunas reglas de Modernize requieren una release mínima de ABAP y no se activarán por debajo de ella — define la Target ABAP release en la pestaña del cleaner. Consulta Cómo funciona el cleaner.
Casing#
| Regla |
Por defecto |
Qué hace |
keyword_case |
Activada |
Normaliza las palabras clave de ABAP a minúsculas (o mayúsculas). |
identifier_case |
Desactivada |
Normaliza los identificadores que no son palabras clave a minúsculas (o mayúsculas). |
Layout#
| Regla |
Por defecto |
Qué hace |
pragma_position |
Activada |
Mueve los pragmas al final de la línea antes del . / ,; corrige los mal colocados. |
indent |
Activada |
Vuelve a indentar las sentencias según la profundidad del bloque (solo el espacio inicial). |
Spacing#
| Regla |
Por defecto |
Qué hace |
spacing_operators |
Activada |
Exactamente un espacio alrededor de los operadores binarios ya espaciados. |
space_before_period |
Activada |
Elimina los espacios en blanco antes de un . de cierre en la misma línea. |
spacing_commas_parens |
Activada |
Un espacio después de las comas separadoras, ninguno antes; ordena los paréntesis con espacios. |
space_around_text_literal |
Activada |
Añade los espacios en blanco que falten alrededor de los literales '…' / `…`. |
closing_brackets_position |
Activada |
Sube una línea que solo contiene ) o ] al final de la línea anterior. |
Alignment#
| Regla |
Por defecto |
Qué hace |
align_declarations |
Activada |
Alinea las columnas TYPE / LIKE y VALUE en cadenas y series de declaraciones. |
align_assignments |
Desactivada |
Alinea el = de asignaciones simples consecutivas. |
align_perform |
Activada |
Alinea los bloques TABLES / USING / CHANGING de las llamadas PERFORM multilínea. |
align_clear_free |
Activada |
Alinea los operandos tras CLEAR: / FREE:, los componentes de SORT…BY y las clases de excepción de CATCH. |
align_aliases |
Activada |
Alinea la columna FOR de declaraciones ALIASES consecutivas. |
align_parameters |
Activada |
Alinea el = de los parámetros uno por línea dentro de corchetes multilínea de llamada / constructor. |
| Regla |
Por defecto |
Qué hace |
comment_type |
Activada |
Convierte los comentarios * de línea completa en comentarios "; el código comentado y los marcos se conservan. |
comment_normalize |
Activada |
Exactamente un espacio después de los marcadores de comentario " y *. |
Whitespace#
| Regla |
Por defecto |
Qué hace |
condense_blank_lines |
Activada |
Colapsa series de líneas en blanco (máximo 1 por defecto) y elimina el espacio en blanco final. |
final_newline |
Activada |
Asegura que el archivo termine con exactamente un salto de línea. |
Modernize#
Reglas que reescriben ABAP antiguo a equivalentes modernos. Cuando una regla necesita una release mínima de ABAP, se indica; la reescritura solo se activa cuando tu Target ABAP release es suficientemente alta.
| Regla |
Por defecto |
Qué hace |
equals_sign_chain |
Activada |
a = b = c = 1. → una asignación por línea. |
comparison_operators |
Activada |
EQ / NE / LT / LE / GT / GE → = <> < <= > >= en expresiones lógicas. |
not_is |
Activada |
NOT x IS INITIAL → x IS NOT INITIAL. |
calculation_assignment |
Activada |
x = x + n. → x += n. (también - * /; requiere ≥ 7.54). |
move_to_assignment |
Activada |
MOVE src TO tgt. → tgt = src. (solo MOVE simple). |
create_data_to_new |
Activada |
CREATE DATA dref TYPE t. → dref = NEW t( ). (≥ 7.40). |
create_object_to_new |
Activada |
CREATE OBJECT ref TYPE cls. → ref = NEW cls( … ). (≥ 7.40). |
call_method_functional |
Activada |
CALL METHOD obj->m. → obj->m( … ). (≥ 7.40). |
raise_type_to_new |
Activada |
RAISE EXCEPTION TYPE cls. → RAISE EXCEPTION NEW cls( … ). (≥ 7.52). |
receiving_keyword |
Activada |
meth( … RECEIVING r = tgt ). → tgt = meth( … ). |
omit_exporting |
Activada |
Elimina EXPORTING en llamadas funcionales que no tienen IMPORTING / CHANGING / RECEIVING / EXCEPTIONS. |
concatenate_to_template |
Desactivada |
CONCATENATE a b INTO t RESPECTING BLANKS. → t = |{ a }{ b }|. (≥ 7.40). |
assert_equals_subrc |
Activada |
assert_equals( act = sy-subrc exp = n ) → assert_subrc( … ). |
assert_equals_boolean |
Activada |
assert_equals( … exp = abap_true/false ) → assert_true / assert_false( … ). |
arithmetic_compound |
Activada |
ADD n TO x. → x += n. (≥ 7.54). |
assert_parameter_order |
Activada |
Reordena los argumentos de cl_abap_unit_assert: primero el valor esperado, luego el real. |
condense_to_function |
Activada |
CONDENSE x. → x = condense( … ). (≥ 7.02). |
translate_to_case |
Activada |
TRANSLATE x TO UPPER/LOWER CASE. → x = to_upper/to_lower( x ). (≥ 7.40). |
describe_lines |
Desactivada |
DESCRIBE TABLE itab LINES n. → n = lines( itab ). (≥ 7.02). |
pseudo_comment_to_pragma |
Activada |
Pseudocomentarios "#EC obsoletos → ##PRAGMA (≥ 7.02). |
Readability#
| Regla |
Por defecto |
Qué hace |
empty_commands |
Activada |
Elimina las sentencias que solo son puntuación (un . : , aislado); los comentarios se conservan. |
chain_split |
Desactivada |
Divide una cadena DATA: en una sentencia por miembro; las cadenas BEGIN OF / INCLUDE no se tocan. |
chain_of_one |
Activada |
DATA: x TYPE i. → DATA x TYPE i. (quita los dos puntos cuando una cadena tiene un solo miembro). |
one_command_per_line |
Activada |
Pone en su propia línea las sentencias que comparten una línea. |
Declarations#
| Regla |
Por defecto |
Qué hace |
implicit_type |
Activada |
DATA lv_x(10). → DATA lv_x(10) TYPE c LENGTH 10. (explicita el tipo / longitud implícitos). |
escape_char_parameters |
Activada |
Añade o quita el carácter de escape ! en los nombres de parámetros de METHODS. |
Páginas relacionadas#
- Cómo funciona el cleaner — la pestaña, el interruptor maestro y la release objetivo.
- Chat — donde Limpiar esta tarea ejecuta el cleaner para una sola tarea.