21 lines
523 B
Plaintext
21 lines
523 B
Plaintext
Nested ``IF``, ``CASE``, ``DO``, ``LOOP``, ``SELECT``, ``WHILE`` and ``PROVIDE`` statements is a key ingredient for making what's known as "Spaghetti code".
|
|
|
|
Such code is hard to read, refactor and therefore maintain.
|
|
|
|
== Noncompliant Code Example
|
|
|
|
With the default threshold of 3:
|
|
|
|
----
|
|
IF param1 = 2.
|
|
IF param2 = 4.
|
|
DO 3 TIMES. "Compliant - depth = 3, not exceeding the limit
|
|
IF sy-index = 2. "Noncompliant - depth = 4
|
|
CONTINUE.
|
|
ENDIF.
|
|
WRITE sy-index.
|
|
ENDDO.
|
|
ENDIF.
|
|
ENDIF.
|
|
----
|