用友U8采购订单非含税单价问题
问题现象:在用友U8V8.52erp软件供应链管理的采购管理模块中在采购订单录入界面,输入两笔记录,含税单价相同,数量不同,系统自动计算的不含税单价却不相同。例如税率若为17,单价为4位小数位,金额位2位小数位。第一条记录数量:20,含税单价33.33,非含税单价28.487;第二条记录数量:17,含税单价33.33,非含税单价却为28.4871。经分析,第一条记录的非含税单价=ROUND(原币价税合计666.60/1.17,2)/20=28.487,第二条记录的非含税单价=ROUND(原币价税合计566.61/1.17,2)/17=28.4871。能否对“原币价税合计666.6/1.17/20”进行ROUND保留小数位以避免含税单价相同,而非含税单价不同的现象?
原因分析:关于无税单价计算误差的问题,是由于计算无税单价时小数位的四舍五入先后顺序造成的,这样是为了保持“无税单价*数量=无税金额、无税金额*税率=税额、税额+无税金额=价税合计”等这些关系的平衡性。否则从单据界面上看(包括采购发票、到货单等单据)这些关系可能就不平衡了。
解决方案:在用友U8V8.52erp系统中采购单据中无税,含税单价的计算规则 如下: 数量=20;含税单价=33.33,此时含税金额=666.60 ,无税金额 =round(666.60/1.17,2)=569.74,因此无税单价=round(569.74/20,4)=28.4870; 而数量=17;含税单价=33.33,此时含税金额=566.61 ,无税金额 =round(566.61/1.17,2)=484.28,因此无税单价=round(484.28/17,4)=28.4871; 这是采购单据的统一计算规则,其目的是保证单据中数据项之间满足这种计算关系,所以在每一步计算的结果都会进行round计算,所以产生两次无税单价不同的问题。
本条用友U8ERP系统问题的解决方案来自用友财务软件官网知识库,原官方用友U8知识库如下表所示,请参阅:
用友U8知识库主体 | 用友U8知识库明细 |
---|---|
对应版本 | 用友U8V8.52 |
对应产品线 | 用友U8ERP |
对应模块 | 供应链-采购管理 |
问题现象 | 在采购订单录入界面,输入两笔记录,含税单价相同,数量不同,系统自动计算的不含税单价却不相同。例如税率若为17,单价为4位小数位,金额位2位小数位。第一条记录数量:20,含税单价33.33,非含税单价28.487;第二条记录数量:17,含税单价33.33,非含税单价却为28.4871。经分析,第一条记录的非含税单价=ROUND(原币价税合计666.60/1.17,2)/20=28.487,第二条记录的非含税单价=ROUND(原币价税合计566.61/1.17,2)/17=28.4871。能否对“原币价税合计666.6/1.17/20”进行ROUND保留小数位以避免含税单价相同,而非含税单价不同的现象? |
问题原因 | 关于无税单价计算误差的问题,是由于计算无税单价时小数位的四舍五入先后顺序造成的,这样是为了保持“无税单价*数量=无税金额、无税金额*税率=税额、税额+无税金额=价税合计”等这些关系的平衡性。否则从单据界面上看(包括采购发票、到货单等单据)这些关系可能就不平衡了。 |
解决方案 | 采购单据中无税,含税单价的计算规则 如下: 数量=20;含税单价=33.33,此时含税金额=666.60 ,无税金额 =round(666.60/1.17,2)=569.74,因此无税单价=round(569.74/20,4)=28.4870; 而数量=17;含税单价=33.33,此时含税金额=566.61 ,无税金额 =round(566.61/1.17,2)=484.28,因此无税单价=round(484.28/17,4)=28.4871; 这是采购单据的统一计算规则,其目的是保证单据中数据项之间满足这种计算关系,所以在每一步计算的结果都会进行round计算,所以产生两次无税单价不同的问题。 |
提交时间 | 2015-11-26 |
上述用友U8知识库的解决方案如果仍然未能解决您的问题,可以尝试到用友畅捷通服务社区搜索一下:https://www.iyyrj.com/ask/,或者加入QQ群:208289440,密码:yongyou8.com。