货币COP的BAPI_PR_CHANGE转储

2020-09-12 23:15发布

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


大家好,

当我调用BAPI_PR_CHANGE传递项目时使用的货币类型为COP且其值的倒数第二位为0(例如:12305)时,我得到一个转储,其说明"异常条件ERROR_CHECK_LIMIT已触发"。

标准代码调用FM CURRENCY_CONVERTING_FACTOR,对于货币类型COP获得一个因子100。
此代码将其除以该因子(例如:12305/100 = 123.05)。

接下来,它检查获得的[value-floor(value)= 0.05]是否在0.01到0.09之间。 如果是这样,那么它将引发异常。 它在类CL_LIMIT_MMSRV的方法CHECK_CURRENCY_DECIMALS中执行此操作。

有人知道为什么这样做吗? 我有什么建议可以避免这种情况?

谢谢,
沙特。

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


大家好,

当我调用BAPI_PR_CHANGE传递项目时使用的货币类型为COP且其值的倒数第二位为0(例如:12305)时,我得到一个转储,其说明"异常条件ERROR_CHECK_LIMIT已触发"。

标准代码调用FM CURRENCY_CONVERTING_FACTOR,对于货币类型COP获得一个因子100。
此代码将其除以该因子(例如:12305/100 = 123.05)。

接下来,它检查获得的[value-floor(value)= 0.05]是否在0.01到0.09之间。 如果是这样,那么它将引发异常。 它在类CL_LIMIT_MMSRV的方法CHECK_CURRENCY_DECIMALS中执行此操作。

有人知道为什么这样做吗? 我有什么建议可以避免这种情况?

谢谢,
沙特。

付费偷看设置
发送
6条回答
Violet凡
1楼 · 2020-09-12 23:42.采纳回答

您好,沙特

检查SAP注释'2277140-如果货币的小数位数为零,则PR在BAPI_PR_CREATE中创建失败'

注意

SAP小菜
2楼-- · 2020-09-12 23:32

Hi 沙特!

限制(0,01-0,09)是硬编码的还是从某些定制表中读取的?
您是否检查是否有要安装BAPI的OSS注释?

SAP小菜
3楼-- · 2020-09-12 23:41

您(或依据)是否使用关键字" CL_LIMIT_MMSRV"对系统中可用的OSS注释执行了一些搜索

否则,您应该

嗨西蒙妮,

使用CHECK_CURRENCY_DECIMALS方法计算极限(0,01-0,09)。 这就是发生的地方-

SAP小菜
5楼-- · 2020-09-12 23:42

这成功了! 谢谢! :)

黑丝骑士
6楼-- · 2020-09-12 23:29

感谢您的建议雷蒙德。

OY04的货币定义中COP的小数位数为0(与TCURX表中一样)。

此问题适用于日元等所有0个十进制货币。

转储屏幕截图-

一周热门 更多>

点击此处---> EasySAP.com 一起学习S4 HANA ...

相关问答