马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?注册账号
×
用友软件最大单据号修复工具,用于填制收付款单或者其他单据时提示:违反了"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 ufsystem update 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为对应的账套号 对应单据名称
| | | | 采购请购单
| | PU_AppVouch/ PU_AppVouchs | | 采购订单
| | | | 采购到货单
| | PU_ArrivalVouch/ PU_ArrivalVouch s | | 采购入库单
| | | | 采购发票
| | PurBillVouch/ PurBillVouch s | | 销售报价单
| | SA_QuoMain/ SA_QuoDetails | | 销售订单
| | | | 销售发(退)货单
| | DispatchList/ DispatchList s | | 销售发票
| | SaleBillVouch/ SaleBillVouch s | | 委托代销发货(退)单
| | DispatchList/ DispatchList s | | 委托代销结算单
| | SA_SettleVouch/ SA_SettleVouch s | | 委托代销调整单
| | DispatchList/ DispatchList s | | 销售调拨单(红、蓝)
| | SaleBillVouch/ SaleBillVouch s | | 销售零售日报(红、蓝)
| | SaleBillVouch/ SaleBillVouch s | | 代垫费用单
| | ExpenseVouch/ ExpenseVouch s | | 销售支出单
| | SalePayVouch/ SalePayVouch s | | 委外发票
| | OM_PurBillVouch/ OM_PurBillVouch s | | 产成品入库单
| | | | 其他入库单
| | | | 材料出库单
| | | | 其他出库单
| | | | 调拨单
| | | | 盘点单
| | | | 限额领料单
| | | | 不合格品记录单
| | | | 不合格品处理单
| | | | 货位调整单
| | AdjustPVouch/ AdjustPVouch s | | 收/付款单
| | Ap_CloseBill/ Ap_CloseBills | | 商业/银行承兑汇票
| | Ap_CloseBill/ Ap_CloseBills | |
注意:其中销售订单子表、发货单子表、代垫费子表、销售支出单子表中的主键并不是通过表ua_identity中的ichildid+1得到,而是他本身是一个标识。如果这个单据报此错误,可能是由于主键的标识丢失。 延伸:保存销售订单、发货单、代垫费或者销售支出单的时候提示一下错误: 以销售订单的解决方式为例: 执行语句: use ufsystem update 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 ufsystem update 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'
|