Now I see where is the problem.
It is mixture of "Predefined Types in ABAP Dictionary" (DDIC) and "ABAP types".
In debugger you see ABAP type.
From documentation:
Type | Permitted Positions m | Meaning | ABAP Type |
CHAR | 1-30000 | Character string | c, length m |
DEC | 1-31 | Packed number BCD format | p, length (m+1)/2 |
- If a data type CURR, DEC, DF34_DEC, DF16_DEC, or QUAN has an even number of characters (not recommended), the length of the associated ABAP type p is rounded up and hence becomes the next highest uneven number.
In DDIC you have lets say DEC length 31 and in debugger its p length = (31 + 1) / 2 = 16.