问题:ABAP编译错误:Overflow when converting“1.12345e+12“

博客介绍了ABAP编程中遇到的溢出错误,当尝试转换'1.12345e+12'时发生。解决方案包括修改数据类型为CURR,设置溢出提示,以及在处理内表数值时转换数值格式。文章探讨了ABAP字典中的数据类型,如CURR和QUAN,并提供了相关参考资料,涉及数字计算溢出的处理和ABAP数据类型的深入理解。
摘要由CSDN通过智能技术生成

1、原因:数字计算溢出。

解决方案:

  • 修改结构表(修改数据类型为CURR)
  • 设置溢出提示
  • 显示在内表的数值转换一下数值格式再进行计算
    (使用p类型计算未报错,引用QUAN类型提示“Overflow when converting 12345678912.3”)

数据字典

1、ABAP字典中的内置数据类型
查询步骤:
事务码SE11——>点击“域”——>点击搜索按钮–(弹出框“查找 域”)——>点击“数据类型”行的搜索按钮–(弹出框“ABAP中的数据类型(1) 31 条目”)

ACCP 记账周期YYYYMM
CHAR 字符串
CLNT 集团
CUKY 货币关键字,被CURR字段引用
CURR 货币字段,作为DEC存储
DATS 日期字段(YYYYMMDD)用8个字符存入
DEC 计数器或带有逗号和正负号的数值区
FLTP 浮点数,精确到8个字节
INT1 1 字节整数,整数<=225
INT2 2 字节整数,仅用于LCHR或LRAW前的长度字段
INT4 4 字节整数,带符号的十进制数
LANG 语言代码
LCHR 长字节串,要求前面的INT2字段
LRAW 长字节串,要求前面的INT2字段
NUMC 只有数字的字符串
PREC 一个QUAN字段的精确
QUAN 数量字段,指向带UNIT格式的单位字段
RAW 不解释的字节排序
RAWSTRIN

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值