应收自动红票对冲错误用友软件股份有限公司王敏2010年08月18日问题现象:在应收款管理模块做红票对冲,自动红冲后将已经核销过的发票冲成负数,但是手工红冲时没有此现象。问题分析和客户沟通在另外一套账中做同样单据,然后进行红票对冲,不能重现此问题。另在同一账套做两张其他应收单红票对冲也没有问题,由此判断应该为数据问题。回顾:根据问题现象判断是销售发票表salebillvouch或者应收应付明细账ap_detail中的数据有错误。但是为什么手工做红冲的时候没有错误呢?另应收单也没有问题?难道。。。。。联系客户提供远程环境,在仔细研究出错的数据后,并和自己做的数据进行对比分析。出现错误的记录一般是红蓝混录的发票(即蓝发票里录有负存货但总额为正),或者红发票里录有正存货但总额为负,这些发票的累计回款金额都只写一条记录。(程序设计如此)。而且一正一负的记录都是同一个存货。再仔细看看,发现这些记录虽然做了核销。但是累计回款金额不等于发票金额。解决方案由于做了后续相关的业务,所以需要先取消红冲。然后手工修改销售发票子表的imoneysum累计本币收款金额,iexchsum累计原币回款金额,后再次进行红冲,就正确啦!通过跟踪SQL发现在做自动红冲时,系统从销售发票子表中取数。找同一张发票中按相同存货合计,累计回款金额不等于发票金额的记录进行冲销。由于累计回款金额错误,所以造成红冲错误。至于手工做红冲没有问题,是因为手工红冲时系统从ap_detail表中取数。AP_DETAIL表中记录正确,所以手工红冲没有问题。总结: