Skip to main content

Posts

Showing posts from July, 2017

ABAP fails again, on literal/packed to numeric parameters.

Yet another ABAP packed/literal bug: CLASS cl_test DEFINITION . PUBLIC SECTION . CLASS - METHODS test IMPORTING i_num TYPE numeric . ENDCLASS . CLASS cl_test IMPLEMENTATION . METHOD test . WRITE : / i_num . ENDMETHOD . ENDCLASS . START-OF-SELECTION . DATA : l_f TYPE decfloat34 . " This works correctly: l_f = '10.1231231233' . l_f = '10.12312312334234234' . l_f = '10.12312312334234234345345' . " This has some kind of MOD overflow error on packed's maximum decimals of 16: cl_test => test ( '10.1231231233' ). " OK: "10.1231231233" P(16) DECIMALS 10 cl_test => test ( '10.12312312334234234' ). " FAIL: "10.1" P(16) DECIMALS 1 cl_test => test ( '10.12312312334234234345345' ). " FAIL: "10.1231231" P(16) DECIMALS 7