SAP B1本币与系统货币不一致时跨账期差异产生算法

近期一个项目中,B1设置本币为马来西亚林吉特货币MYR ,系统货币是RMB。在日常业务中也会用到美元USD作为往来货币。这时发现在应付发票和跨月付款时,付款单生成的日记账分录会有两行差异。自己琢磨了一下算法,不一定就是系统的算法,但至少有个解释,可以参考。后面发现问题再更新吧。

以下是示例。

5月USD汇率4.773
6月USD汇率4.69
5月RMB汇率0.6616
6月RMB汇率0.6620

应付发票在5月份制作,付款在6月,下方是分别的发票凭证和付款凭证

可以看到在付款凭证里面是有两行汇兑损益的,以下是算法和解释

1. 第一行汇兑损益:727715.69是5月发票上的应付金额MYR。715061.08是用6月USD和MYR的汇率重新计算的付款金额,差额就有了12,654.61 MYR. 再换算为系统货币RMB就是19115.73

2. 第二行汇兑损益:727715.69是5月发票上的应付金额MYR,1090047.38 RMB是发票上的5月金额。 按照6月汇率重新计算出6月应付的RMB金额就是727715.69/0.662=1099268.41。这之间有了差异为9,221.03,但是发现这跟实际凭证里面的数还差0.01。   用1099268.41-1080152.69发现等于19,115.72,与第一行汇兑损益也差0.01。于是发现,第一行汇兑随意是单纯用MYR和RMB的汇率计算的,与实际应付和实付的差额对不上,所以这0 .01也加在了第二行汇兑损益。

=727715.69-715061.08
美元汇率差异
=12654.61/0.662
美元汇率差异换算为人民币
第一行汇兑损益12,654.6119115.73
=727715.69/0.662
6月汇率应付
=1099268.41-1090047.38
6月汇率与实际5月发票应付
第二行汇兑损益1,099,268.419,221.03
=1099268.41-1080152.69
实际人民币差异
实际人民币差异和美元换算出的人民币差异
19,115.720.01
人民币差异总额
9,221.04
  • 7
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值