cancel
Showing results for 
Search instead for 
Did you mean: 

Meaning of Code Inspector message CL_CI_TEST_SCAN_STATISTICS2 / 0001

Sandra_Rossi
Active Contributor
0 Kudos
109

I want to know the number of statements (in ABAP Logger), by using the Code Inspector check "Statement Statistics":

Sandra_Rossi_1-1744961294693.png

Sandra_Rossi_2-1744963118546.png

The numbers I get are not clear:

Sandra_Rossi_0-1744961142908.png

1751 1064 0 0 0 0 0 0 0 43 399 55 665

What's the meaning of each number?

The documentation is not clear (*):

  • Operative statements only
  • Per modularization unit
    • (dialog module, form routine, function module, method)
  • No statements used more than once

Thank you.

Sandra

My system: ABAP 7.58.

(*) Complete text:

Appl. Comp. Check / Check Class / Message Code
BC-ABA-LA / CL_CI_TEST_SCAN_STATISTICS2 / 0001

Details of Analysis

  • 1751 1064 0 0 0 0 0 0 0 43 399 55 665

What is checked?
Statement Statistics

These statistics count the statements contained in the program objects. Comments, unlike macro definitions, are also counted.

The display option 'Sort' allows the result to be summarized by the set of objects (= 'No' sorting), by person responsible, or by package. The non-summarized result is produced when sorted by 'Object'.

The statement statistics contain the following parameters:

  • Operative statements only
    Determines the number of operative statements, meaning that declarative statements such as data declarations or object declarations are not counted.
  • Per modularization unit
    Splits up the statistics according to statements in the modularization units (dialog module, form routine, function module, method) and according to statements outside of these units.
  • No statements used more than once
    If this parameter is not set, the statements of all the includes used in a program object are counted as well. Includes can be used as often as desired, so multiple counts are produced here.
    If the parameter is set, the statements of includes included in more than one program across the system are not counted.
View Entire Topic
Sandra_Rossi
Active Contributor
0 Kudos

The answer is given by this code + reverse engineering of each variable:

Sandra_Rossi_0-1744964443587.png

Let's take an example to answer, for instance, these numbers

Sandra_Rossi_0-1744961142908.png

1751 1064 0 - 0 0 - 0 0 - 0 0 - 43 399 - 55 665

are 6 groups which are: Totals, Modules, Subroutines, Function Modules, Methods (of non-test classes), Methods of test classes.

DETAILS:

1st group:

  • l_total_cnt_c: total number of statements including declarative statements (TYPES, DATA, etc.) Statements in macros (DEFINE ... END-OF-DEFINITION) are excluded.
  • l_total_oper_cnt_c: all statements except declarative statements. It's zero if "Operative statements only" is NOT selected.
  • l_normal_cnt_c: . It's zero if "Operative statements only" is selected.

2nd group:

  • l_module_c: total number of modules (MODULE...ENDMODULE)
  • l_module_cnt_c: total number of statements inside modules. Declarative statements are not counted if "Operative statements only" is selected.

3rd group:

  • l_form_c: total number of subroutines (FORM...ENDFORM)
  • l_form_cnt_c: total number of statements inside subroutines. Declarative statements are not counted if "Operative statements only" is selected.

4th group:

  • l_function_c: total number of function modules (FUNCTION...ENDFUNCTION)
  • l_function_cnt_c: total number of statements inside function modules. Declarative statements are not counted if "Operative statements only" is selected.

5th group:

  • l_method_c: total number of methods (METHOD...ENDMETHOD) except those in test classes (CLASS ... FOR TESTING)
  • l_method_cnt_c: total number of statements inside all methods except those in test classes. Declarative statements are not counted if "Operative statements only" is selected.

6th group:

  • l_method_test_c: total number of methods in test classes (METHOD...ENDMETHOD in CLASS ... FOR TESTING)
  • l_method_test_cnt_c: total number of statements inside all methods of test classes. Declarative statements are not counted if "Operative statements only" is selected.

It was a quick answer so please tell me what is wrong, what is to improve.