问题现象: |
1、在《销售管理》中,查询发货单列表时,发现发货单单据,对应的开票数量相等,开票金额为负数,通过单据联查发货单对应的出库单、对应的发票都是正常的,但在此列表中显示为负值,不知是何原因?举例:发货单号为20050000004083,发货单金额为7819.46,而对应的开票金额为:-23458.44
2、、在《销售管理》中,销售订单数据被发货单参照完后,下次再作发货单参照时,已经补参照完的订单就不应再显示,但是系统仍然显示(显示的结果可发货数量为0),举例:客户编码号:SDYH,销售订单号:20050000003505,发货单号为20050000007652和20050000007653,但是再次选择发货单参照订单时,还显示,但可发货数量为0。 |
问题原因: |
1、问题分析:可能由于二次开发程序或其他原因导致发货单子表DISPATCHLISTS中isettlenum(累计开票金额)与对应发票上的实际金额不符所致,
2、问题分析:销售订单子表SO_SODetails中iQuantity(数量)、iFHQuantity(累计发货数量)的小数值不等,程序在参照查询订单进行过滤时导致如下条件有效abs(isnull(so_sodetails.iquantity,0))-abs(isnull(so_sodetails.ifhquantity,0)) end ) >0,但iQuantity(数量)-iFHQuantity(累计发货数量)进行按6位小数四舍五入后为0,从而会将该订单过滤出来,但可发货数量为0。 |
解决方案: |
1、解决办法:参照执行如下脚本修改发货单子表DISPATCHLISTS中isettlenum(累计开票金额)为“开票数量*原币含税单价”: update b set b.isettlenum=round(iSettleQuantity*iTaxUnitPrice,2) from dispatchlist a inner join dispatchlists b on a.dlid=b.dlid where round(isettlenum,2)<>round(iSettleQuantity*iTaxUnitPrice,2) and isettlenum0 and round(b.iquantity,6)=round(b.ifhquantity,6)
问题总结:您所提交的大部分问题都跟二次开发程序修改数据库有关,不建议采用自己开发程序直接修改数据库中的有关表、记录字段值,供应链模块单据的上下游关联性太强,一种单据有错,可能会导致下游多种业务处理时数据有误,甚至某些错误将无法修复。 |
相关补丁: |
|
版本: |
8.60 |
模块: |
销售管理 |
产品: |
U860----销售管理 |
问题名称: |
销售中的几个问题 |
最后更新: |
2005-06-28 00:00:00 |