zoukankan      html  css  js  c++  java
  • ABAP 四舍五入函数

    ABAP 四舍五入函数

    ABAP 中处理数据的函数方法很多,其中涉及到四舍五入的有两个(可能还有更多):ROUNDHR_NZ_ROUNDING_DECIMALS

    前者位于Basis功能开发包 SZME 里面,在标准中用于计量单位的计算;

    后者主要用于HR模块,位于 PB43 开发包,处理HR模块中的主数据。

     

    HR_NZ_ROUNDING_DECIMALS 函数可以直接输入数值,然后在 CONV_DEC 参数中输入需要保留的小数点即可输出。

    ROUND 函数则有点灵活,可以通过 SIGN 参数( ‘+’,’-’ )控制向上取舍,或者向下取舍。

    例如:

    输入 88.54350 ,如果SIGN = ‘+’ ,保留2位小数,会得到: 88.55000;如果 SIGN = ‘-’,会得到:88.54000

    输入 -88.54350,如果SIGN = ‘+’ ,保留2位小数,会得到: -88.54000;如果 SIGN = ‘-’,会得到:-88.55000

    查看示例:

    01
    02
    03
    04
    05
    06
    07
    08
    09
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    DATA : dat  TYPE p DECIMALS 9 VALUE '12.5445' ,
           dat1 TYPE p DECIMALS 9 .
      
    DATA   dat2 TYPE p DECIMALS 9 VALUE '12.540'.
      
    * 方法一
    CALL FUNCTION 'HR_NZ_ROUNDING_DECIMALS'
      EXPORTING
        value_in                 = dat
        conv_dec                 = 2      " 设置保留几位小数
      IMPORTING
        value_out                = dat1
      EXCEPTIONS
        no_rounding_required     = 1
        decimals_greater_than_10 = 2
        rounding_error           = 3
        OTHERS                   = 4.
      
    WRITE: /'方法一(保留2位小数):'.
    WRITE: / dat, ' => ' ,dat1.
    WRITE: / '----------------------------------------------------'.
      
    * 方法二
    CALL FUNCTION 'ROUND'
      EXPORTING
        decimals      = 0       " 保留多少位小数
        input         = dat2
        sign          = '+'     " + 向上取舍 - 向下取舍 (负数也一样)
      IMPORTING
        output        = dat1    " 输出返回结果
      EXCEPTIONS
        input_invalid = 1
        overflow      = 2
        type_invalid  = 3
        OTHERS        = 4.
      
    WRITE: /'方法二(保留0位小数):'.
    WRITE: / dat2, ' => ' ,dat1.
    WRITE: / '----------------------------------------------------'.
  • 相关阅读:
    json
    mybatis 一对一关联对象查询
    下拉框多级联动
    时间轴和操作元素属性
    上传
    多选框获取和全选
    字符串操作,截取最后一个逗号
    idea快捷键使用
    获取下拉框的文本和值,下拉框默认选中
    toString()函数分析
  • 原文地址:https://www.cnblogs.com/springzt/p/4320494.html
Copyright © 2011-2022 走看看