金额累加出现溢出,dump(CX_SY_ARITHMETIC_OVERFLOW)

有一个report处理小币种问题的时候出现dump(CX_SY_ARITHMETIC_OVERFLOW)。分析颇久(其实主要是分析dump的时候的一些研究,具体可以看本博客里面的另外一篇文章:JOB cancel和dump的ST22分析)


通常这种情况很少出现,但是我们也要以防万一,解决方案主要有:


最简单常用的办法就是直接把常用的十三位金额的字段(bseg-dmbtr)换成十五位的金额字段(vbap-netwr).然后在赋值方面也没有问题(vbap-netwr = bseg-dmbtr)。

如果15位还不够的话就只好自己自定义一个字段,自定义金额长度。

金额累加出现溢出,dump(CX_SY_ARITHMETIC_OVERFLOW)_第1张图片

(自己建一个domain,再建一个data element)然后程序里再定义一变量:      G_COST    TYPE    Z_DEMO



你可能感兴趣的:(ABAP经验分享)