小呆瓜 发表于 2015-10-12 13:19:57

用友软件最大单据号修复工具

用友软件最大单据号修复工具,用于填制收付款单或者其他单据时提示:违反了"primart key"约束 “aaaaaAp_closebill_pk”。不能在对象“AP_closebill”中插入重复键
分析:此类问题为ua_identity表中cvouchtype为sk所对应的ifatherid和ichildid数值太小。因为表Ap_CloseBill中的主键标识是通过ua_identity表中cvouchtype为sk所对应的ifatherid+1得到的,如果ifatherid过小的话,那么ifatherid+1的值可能在此表中已经存在了,这样就违反了主键唯一性错误,因此会报这个错误。解决方法:use ufsystemupdate UA_Identity set UA_Identity.ifatherid= (select max(id) from ufdata_991_2007..Ap_CloseBill),UA_Identity.ichildid= (select max(autoid) from ufdata_991_2007..Ap_CloseBills)where UA_Identity.cvouchtype='sk' and cacc_id='991'注意:如果在保存其他单据的时候提示类似的问题,请参照一下表进行更改。其中ufdata_991_2007为出错的账套数据库,Ap_CloseBill为对应的关联主表,id 为主表标识,autoid为子表标识,Ap_CloseBills为对应的关联子表,sk为对应的cvouchtype,991为对应的账套号
对应单据名称
cvouchtype相关联主表/子表字段标识
采购请购单
PuAppPU_AppVouch/ PU_AppVouchsID/Autoid
采购订单
PomainPO_Pomain/PO_PodetailsPOID/ID
采购到货单
PuArrivalPU_ArrivalVouch/ PU_ArrivalVouch sID/autoid
采购入库单
rdRdrecord/ Rdrecord sID/Autoid
采购发票
PurbillPurBillVouch/ PurBillVouch sPBVID/ID
销售报价单
QuoMainSA_QuoMain/ SA_QuoDetailsID/autoid
销售订单
SomainSO_SOMain/SO_SODetailsID/isosid
销售发(退)货单
DispatchDispatchList/ DispatchList sDLID/idlsid
销售发票
BillvouchSaleBillVouch/ SaleBillVouch sSBVID/Autoid
委托代销发货(退)单
DispatchDispatchList/ DispatchList sDLID/idlsid
委托代销结算单
SettleVouchSA_SettleVouch/ SA_SettleVouch sID/Autoid
委托代销调整单
DispatchDispatchList/ DispatchList sDLID/idlsid
销售调拨单(红、蓝)
BillvouchSaleBillVouch/ SaleBillVouch sSBVID/Autoid
销售零售日报(红、蓝)
BillvouchSaleBillVouch/ SaleBillVouch sSBVID/Autoid
代垫费用单
ExpenseExpenseVouch/ ExpenseVouch sID/ID
销售支出单
SalepaySalePayVouch/ SalePayVouch sID/ID
委外发票
WwpurbillOM_PurBillVouch/ OM_PurBillVouch sPBVID/ID
产成品入库单
rdRdrecord/ Rdrecord sID/Autoid
其他入库单
rdRdrecord/ Rdrecord sID/Autoid
材料出库单
rdRdrecord/ Rdrecord sID/Autoid
其他出库单
rdRdrecord/ Rdrecord sID/Autoid
调拨单
tdTransVouch/ TransVouch scTVcode/autoID
盘点单
chCheckVouch/ CheckVouch scCVCode/autoID
限额领料单
maMatchVouch/ MatchVouch scVouchCode/autoid
不合格品记录单
scScrapVouch/ScrapVouchsID/Autoid
不合格品处理单
scScrapVouch/ScrapVouchsID/Autoid
货位调整单
adAdjustPVouch/ AdjustPVouch sID/ Autoid
收/付款单
SkAp_CloseBill/ Ap_CloseBillsiID/ID
商业/银行承兑汇票
SkAp_CloseBill/ Ap_CloseBillsiID/ID
注意:其中销售订单子表、发货单子表、代垫费子表、销售支出单子表中的主键并不是通过表ua_identity中的ichildid+1得到,而是他本身是一个标识。如果这个单据报此错误,可能是由于主键的标识丢失。延伸:保存销售订单、发货单、代垫费或者销售支出单的时候提示一下错误:以销售订单的解决方式为例:执行语句:use ufsystemupdate UA_Identity set UA_Identity.ifatherid= (select max(id) from ufdata_991_2007.. SO_SOMain),UA_Identity.ichildid= (select max(isosid) from ufdata_991_2007.. SO_SODetails)where UA_Identity.cvouchtype='somain' and cacc_id='991'

收/付款单:use ufsystemupdate UA_Identity set UA_Identity.ifatherid= (select max(iID) from ufdata_001_2015.. Ap_CloseBill),UA_Identity.ichildid= (select max(ID) from ufdata_001_2015.. Ap_CloseBills)where UA_Identity.cvouchtype='sk' and cacc_id='001'

nazi8888 发表于 2015-10-12 16:23:22

不错的方法,学习了!

acong 发表于 2016-1-6 14:18:00

收藏了感谢分享 :victory:

crbjh 发表于 2017-4-21 10:44:39

学习。。。。。

风帆刘工 发表于 2017-5-4 14:07:01

收藏了,好东西,值得学习

wshzh137 发表于 2017-5-25 08:52:44

谢谢分享。。。。。。。。。。。。

vinbill 发表于 2019-1-2 16:07:36


谢谢分享。。。。。。。。。。。。

200317084 发表于 2020-10-8 17:54:39

学习了,谢谢楼主分享

zr51cfok000 发表于 2022-6-20 00:09:08

友小工具之最大单据号修改工具

sarahconner 发表于 2023-4-14 16:44:12

谢谢分享

89424007 发表于 2023-4-19 14:34:15

友小工具之最大单据号修改工具
页: [1]
查看完整版本: 用友软件最大单据号修复工具