问题现象: |
有外币美元,在入库单录入时,本币金额,原币金额都正确,生成发票时金额也对,但是结算以后只要一个入库单记录多,10条以上,结算后,入库单本币金额就变了,但发票的金额不变。如原入库单本币金额为690692.92,发票也是690692.92,但结算以后发票金额没变,入库单本币金额却变成为690692.95,但原币金额不变,老有差异。 |
问题原因: |
发票结算后回填金额是用发票的本币价税合计(purbillvouchs.isum)值回填入库单的本币金额,而不是用发票的本币金额(purbillvouchs.imoney)值。可能是用户修改过发票上的金额,发票保存时本币金额以界面上输入的金额为准,而本币价税合计是后台通过原币金额×数量得出的。 |
解决方案: |
对于已经结算并且修改过本币金额的发票,可以通过以下语句修改: update purbillvouchs set isum=imoney where isum<>imoney and id not in(select ibsid from pursettlevouchs) 对于以后业务为了防止发生该类问题,可以通过以下触发器实现: create trigger imoneytoisum on purbillvouchs for insert as if exists(select * from inserted where isum<>imoney and itaxprice=0) update purbillvouchs set isum=inserted.imoney from purbillvouchs inner join inserted on purbillvouchs.id=inserted.id |
相关补丁: |
|
版本: |
8.61 |
模块: |
采购管理 |
产品: |
U861--供应链--采购管理 |
问题名称: |
采购结算入库单金额变化 |
最后更新: |
2006-08-24 00:00:00 |