调用CONVERT_TO_LOCAL_CURRENCY时,要注意货币单位小数点的问题

原文首发于http://www.itpub.net/thread-1063918-1-1.html[@more@]
例子程序
  1. REPORT ztest.
  2. DATA: USD TYPE WRBTR, JPY TYPE WRBTR, JPY_E TYPE BAPICURR-BAPICURR.
  3. DATA: USD_K TYPE WAERS, JPY_K TYPE WAERS.
  4. DATA: RET TYPE BAPIRETURN.
  5. JPY = '10000.01'.
  6. USD_K = 'USD'.
  7. JPY_K = 'JPY'.
  8. CALL FUNCTION 'CONVERT_TO_LOCAL_CURRENCY'
  9. EXPORTING
  10. date = SY-DATUM
  11. foreign_amount = JPY
  12. foreign_currency = JPY_K
  13. local_currency = USD_K
  14. IMPORTING
  15. LOCAL_AMOUNT = USD
  16. .
  17. WRITE: JPY CURRENCY JPY_K, JPY_K,
  18. USD CURRENCY USD_K, USD_K.
  19. ULINE.
  20. JPY_E = JPY.
  21. CALL FUNCTION 'BAPI_CURRENCY_CONV_TO_INTERNAL'
  22. EXPORTING
  23. currency = JPY_K
  24. amount_external = JPY_E
  25. max_number_of_digits = 23
  26. IMPORTING
  27. AMOUNT_INTERNAL = JPY
  28. RETURN = RET
  29. .
  30. IF RET IS NOT INITIAL.
  31. MESSAGE ID RET-CODE(2) TYPE RET-TYPE NUMBER RET-CODE+2(3)
  32. WITH RET-MESSAGE_V1 RET-MESSAGE_V2 RET-MESSAGE_V3 RET-MESSAGE_V4.
  33. ENDIF.
  34. CALL FUNCTION 'CONVERT_TO_LOCAL_CURRENCY'
  35. EXPORTING
  36. date = SY-DATUM
  37. foreign_amount = JPY
  38. foreign_currency = JPY_K
  39. local_currency = USD_K
  40. IMPORTING
  41. LOCAL_AMOUNT = USD.
  42. WRITE: JPY CURRENCY JPY_K, JPY_K,
  43. USD CURRENCY USD_K, USD_K.
测试的输出结果为
1,000,001 JPY 8,714.61 USD
10,000 JPY 87.15 USD
你看懂了么?

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/54246/viewspace-1023948/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/54246/viewspace-1023948/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值