不能保存已审核的单据 或 不能删除已审核的单据
金蝶云社区-云社区用户7mM51234
云社区用户7mM51234
2人赞赏了该文章 5,603次浏览 未经作者许可,禁止转载编辑于2017年08月08日 15:05:02
summary-icon摘要由AI智能服务提供

本文讨论了在金蝶系统中录入销售出库单时遇到的“不能保存已审核的单据”或“不能删除已审核的单据”的问题。问题分析指出可能是数据记录不匹配或单据最大号错误。金蝶官方提供了删除不匹配记录和更新单据最大号的解决方案,但可能不彻底。彻底解决方案涉及直接更新单据最大号表,并提供了表名对照表以便根据具体单据调整。

不能保存已审核的单据 或 不能删除已审核的单据

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

问题分析:(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 ICStockBill) where Ftablename='ICStockBill'

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

update ICMaxNum set FMaxNum=isnull(FMaxNum,1000) where FTableName='ICSale'


update ICMaxNum set FMaxNum=(select isnull(max(Finterid),1000) from ICSale) where FTableName='ICSale'

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


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

表名对照表(表体对应的表在表头后面加上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