Skip to content

Avoid Obsolete & Forbidden Statements ​

WarningAnti-Patterns & Bad PracticesQuickFix Ready#EC OBSOLETERemote Enabled

Overview ​

Avoid obsolete statements (MOVE, REFRESH, FORM, etc.).

ATC Finding Message: Avoid obsolete or deprecated statement; use modern Clean ABAP construct

Rationale ​

Statements such as MOVE, REFRESH, TABLES, STATICS, FORM, and LEAVE are legacy constructs that are discouraged by Clean ABAP and several are forbidden in ABAP Cloud. They bypass modern type checking and object-oriented structure, and they make the code harder to migrate. Replace them with direct assignments, modern table operations, and class methods.

Non-Compliant ​

abap
MOVE lv_source TO lv_target.

Compliant ​

abap
lv_target = lv_source.

Automated QuickFix ​

This rule provides an automated QuickFix directly in Eclipse ABAP Development Tools (ADT):

  1. Position the cursor on the flagged statement.
  2. Press Ctrl + 1 (Quick Assist).
  3. Select the automated refactoring to apply the clean syntax immediately.

Configuration & Thresholds ​

This check can be fine-tuned directly in the ATC Check Variant Editor (CHKV) in Eclipse ADT:

Parameter NameData TypeDefault Value
CHECK_MOVEBooleantrue
CHECK_REFRESHBooleantrue
CHECK_COMPUTEBooleantrue
CHECK_TABLESBooleantrue
CHECK_FIELD_GROUPSBooleantrue
CHECK_TEST_SEAMSBooleantrue
CHECK_BREAKBooleantrue
CHECK_STATICSBooleantrue
CHECK_DEFINEBooleantrue
CHECK_EXPORT_MEMORYBooleantrue
CHECK_FORMBooleantrue
CHECK_LOOP_CTLBooleantrue
CHECK_ADDBooleantrue
CHECK_ADD_CORRBooleantrue
CHECK_TYPE_POOLSBooleantrue
CHECK_RANGESBooleantrue
CHECK_HEADER_LINEBooleantrue
CHECK_LOADBooleantrue
CHECK_PACKBooleantrue
CHECK_UNPACKBooleantrue
CHECK_EXTRACTBooleantrue
CHECK_COMMON_PARTBooleantrue
CHECK_FREE_MEMORYBooleantrue
CHECK_PROVIDEBooleantrue
CHECK_CONTEXTSBooleantrue
CHECK_INITIAL_SIZEBooleantrue
CHECK_CATCH_SYSTEMBooleantrue
CHECK_GET_REFERENCEBooleantrue
CHECK_INFOTYPESBooleantrue
CHECK_COMMUNICATIONBooleantrue
CHECK_SET_EXT_CHECKBooleantrue
CHECK_OCCURSBooleantrue
CHECK_FS_STRUCTUREBooleantrue
CHECK_PARAMETERBooleantrue
CHECK_SELECT_NO_INTOBooleantrue
CHECK_EXIT_SQLBooleantrue
CHECK_SORT_BY_FSBooleantrue
CHECK_CALL_TRANSFBooleantrue
CHECK_REGEXBooleantrue
CHECK_OCCURENCESBooleantrue
CHECK_REPLACE_INTOBooleantrue
CHECK_LOOP_EXTRACTBooleantrue
CHECK_SORT_EXTRACTBooleantrue

Suppression ​

To suppress findings for this rule, append the pseudo-comment to the statement:

abap
" Standard pseudo-comment:
... "#EC OBSOLETE

" SAP CI_ prefix format:
... "#EC CI_OBSOLETE

Technical Details ​

Released under the MIT License.