金蝶问题:不能保存已审核的单据 或者“不能删除已审核...
金蝶云社区-深圳二开刘玉
深圳二开刘玉
7人赞赏了该文章 9,056次浏览 未经作者许可,禁止转载编辑于2016年07月01日 15:18:38
summary-icon摘要由AI智能服务提供

文本简要概述:金蝶录入销售发票时遇“已审核单据不能保存或删除”错误,分析为数据库记录不匹配。金蝶官方提供删除不匹配记录及更新单据最大号表的方法,但常不能完全解决。彻底解决方案是直接更新单据最大号表,并给出了具体的SQL语句及表名对照表,以解决不同单据的类似问题。

问题描述:金蝶录入销售发票,保存时提示:“不能保存已审核的单据”或者“不能删除已审核的单据”

问题分析:(1)ICstockbill 与 Icstockbillentry 中记录不匹配 (2)Icmaxnum 中的 Fmaxnum 错误

金蝶官方解决方法:

第一,删除不匹配记录 Delete from ICStockBillEntry where Finterid not in (select Finterid from ICStockBill) Delete from ICStockBill where Finterid not in (select Finterid from ICStockBillentry)

第二,更新单据最大号表中记录 Update icmaxnum set Fmaxnum=(select max(FInterID) from ICStockBillEntry) where Ftablename='ICStockBill'

但是很多朋友在按照金蝶的解决方法之后,问题依旧。按照以上方法处理的话,不在ICStockbill表中的单据仍然无法更新,所以彻底的解决方法是:
使用直接更新单据最大号表中记录来解决,下列语句中的“ICSale”表示具体表的单据名称,本案中表示“销售发票”的对应表:
update ICMaxNum set FMaxNum=(FMaxNum 1) where FTableName='ICSale'

旗舰版或K3还需要对ic_maxnum表进行调整。最简单的方法是删除这个表里面的数据。系统会自动进行修正!


具体的单据表名称详见下面的信息,当你遇到具体的那个单据出现“不能保存已审核的单据”错误提示时,将对应的表名替换上面语句中的“ICSale”后在查询分析器中执行即可。

表名对照表(表体对应的表在表头后面加上Entry即可):


[tr][td=136]单据名称[td=138]单据表头
[tr][td]采购入库[td]ICStockBill
[tr][td]产品入库[td]ICStockBill
[tr][td]其他入库[td]ICStockBill
[tr][td]销售出库[td]ICStockBill
[tr][td]领料单[td]ICStockBill
[tr][td]其他出库单[td]ICStockBill
[tr][td]盘盈入库[td]ICStockBill
[tr][td]调拨单[td]ICStockBill
[tr][td]盘亏毁损[td]ICStockBill
[tr][td]生产任务单[td]ICMO
[tr][td]销售发票(专用)[td]ICSale
[tr][td]销售订单[td]SEOrder
[tr][td]销售报价单[td]PORFQ
[tr][td]销售发票(普通)[td]ICSale
[tr][td]凭证[td]t_Voucher
[tr][td]成本调整[td]ICStockBill
[tr][td]外购入库暂估补差[td]ICStockBill
[tr][td]采购订单[td]POOrder
[tr][td]费用分摊单[td]ICApportionFee
[tr][td]采购发票(专用)[td]ICPurchase
[tr][td]采购发票(普通)[td]ICPurchase
[tr][td]BOM单[td]ICBom
[tr][td]收款单据[td]t_RP_RBill
[tr][td]付款单据[td]t_RP_PBill
[tr][td]其他收款单[td]t_RP_ROtherBill
[tr][td]其他付款单[td]t_RP_POtherBill