• ◆◆0[问题解决]ALV可输入状态下输入金额/数量字段小数位数提前的问题


    1, 问题描述

    ALV单元格在可输入状态下,金额和数量类型的字段小数点的位置会发生错误,数量是quan类型,金额是curr类型,如下:

    错误情况如下:qty输入66,结果显示0.066小数点提前3位,差1000倍,price输入7,结果显示0.07,小数点提前两位,差100倍。

    2, 问题解决

    方法如下:

    1、对于货币字段,catalog中再添加一个“指定数据类型”的属性datatype,如下:
    wa_fieldcat-datatype      = 'CURR' .     " 指定数据类型
    这样在修改数据并保存时,才能将数据保持原样,否则输入的数据会自动将小数点提前2位;

    2、对于数量字段,也要添加一个“指定数据类型”的属性,才能保持数据的正确性,如下:
    wa_fieldcat-datatype      = 'QUAN' .  " 指定数据类型
    wa_fieldcat-inttype         = 'C' .       "这个是指定字段的类型为C

    完整代码:

    测试结果:

    以上。

  • 相关阅读:
    14 循环结构
    12.Maps
    11 Lists
    10 正则表达式
    8 Operator overloading
    9 Strings
    7 数据类型
    6 GPath
    4 练习: 使用eclipse开发
    5 类、对象、方法
  • 原文地址:https://www.cnblogs.com/lvdong18847870057/p/12539485.html
Copyright © 2020-2023  润新知