信息类型0008 BET01小数位不正确

2020-09-02 02:01发布

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

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


我正在尝试编写一个自定义ABAP程序,该程序读取信息类型0008并与"工资类型金额"字段(BET01)一起使用,但是我很难从中获取准确的值。 当我在PA20或SE16中查看数据时(查看表PA0008),该值正确显示为一个小数点后5位的值。 在这种情况下,值为2688.10667,这是正确的。

但是,当我尝试在程序中读取此值时,它的值为2,688,106.67,小数点后移了3位! 我尝试使用HR_READ_INFOTYPE,直接SELECT语句和解耦的框架读取它,但是得到的结果相同。 无论我追求什么记录,似乎都将数字移到仅填充两位小数。

如果很重要,则该值以美元为单位,但是对于欧元或其他任何将其值扩展到小数点后2位的货币,我都存在相同的问题。 它似乎不是特定于货币的。

似乎SE16和PA20中的显示器可以处理它,因此我猜测必须有一些转换例程,但我看不到数据类型附带一个转换例程。 如何获取它以正确返回此值?

谢谢。

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

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


我正在尝试编写一个自定义ABAP程序,该程序读取信息类型0008并与"工资类型金额"字段(BET01)一起使用,但是我很难从中获取准确的值。 当我在PA20或SE16中查看数据时(查看表PA0008),该值正确显示为一个小数点后5位的值。 在这种情况下,值为2688.10667,这是正确的。

但是,当我尝试在程序中读取此值时,它的值为2,688,106.67,小数点后移了3位! 我尝试使用HR_READ_INFOTYPE,直接SELECT语句和解耦的框架读取它,但是得到的结果相同。 无论我追求什么记录,似乎都将数字移到仅填充两位小数。

如果很重要,则该值以美元为单位,但是对于欧元或其他任何将其值扩展到小数点后2位的货币,我都存在相同的问题。 它似乎不是特定于货币的。

似乎SE16和PA20中的显示器可以处理它,因此我猜测必须有一些转换例程,但我看不到数据类型附带一个转换例程。 如何获取它以正确返回此值?

谢谢。

付费偷看设置
发送
3条回答
CPLASF-自律
1楼-- · 2020-09-02 02:28

HI,

请检查保存此金额值的字段的数据类型,因为它可能没有能力处理5个小数位和仅2个小数位。

谢谢,

Ameet

南山jay
2楼-- · 2020-09-02 02:07

嗨,

请检查您的信息类型字段所使用的数据类型。

谢谢,

Ameet

代楠1984
3楼-- · 2020-09-02 02:31

使用FM'CURRENCY_AMOUNT_SAP_TO_DISPLAY'将sap内部格式转换为显示格式。< br>

一周热门 更多>