DATA p1 TYPE p DECIMALS 2 VALUE '1.6'. DATA p2 TYPE i . CALL FUNCTION 'ROUND' EXPORTING DECIMALS = 0 input = p1 SIGN = '+ ' IMPORTING OUTPUT = p2 EXCEPTIONS INPUT_INVALID = 1 OVERFLOW = 2 TYPE_INVALID = 3 OTHERS = 4 . IF sy-subrc <> 0. MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4. ENDIF. WRITE p2.
输出的结果是2,注意:
1.如果sign参数传入的是'-',则输出的是1,
2.如果不传入参数输出的是2,如果P2定义的和p1是一样的类型时,输出的是原来的数据。
3.如果是’+‘,并且P2定义的和P1一样的类型时,输出的是2.00