此表主要控制单据编号的生成
问题:保存收款单的时候提示以下错误。
分析:
此类问题为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) where UA_Identity.cvouchtype='sk' and cacc_id='991' 注意:
如果在保存其他单据的时候提示类似的问题,请参照一下表进行更改。
报错中的这个表在图1中找到,然后更改下上面的语
句。ufdata_991_2007为出错的账套数据库,Ap_CloseBill为对应的关联主表(报错中在不能在此表中插入重复键),sk为此表在表Identity所对应的cvouchtype,991为对应的账套号 对应单据名称 cvouchtype 相关联主表/子表 字段标识(主表对应ifatherid,字表对应ichildid) ID/Autoid POID/ID ID/Autoid PBVID/ID ID/autoid ID DLID 采购请购单 采购订单 采购到货单 采购入库单 采购发票 销售报价单 销售订单 销售发(退)货单 PuApp Pomain PuArrival rd Purbill QuoMain Somain Dispatch PU_AppVouch/ PU_AppVouchs PO_Pomain/PO_Podetails Rdrecord/ Rdrecords PurBillVouch/ PurBillVouchs SA_QuoMain/ SA_QuoDetails SO_SOMain DispatchList PU_ArrivalVouch/ PU_ArrivalVouchs ID/autoid 销售发票 委托代销结算单 委托代销调整单 Billvouch SaleBillVouch/ SaleBillVouchs DispatchList DispatchList/ DispatchLists SaleBillVouch/ SaleBillVouchs SaleBillVouch/ SaleBillVouchs ExpenseVouch SalePayVouch Rdrecord/ Rdrecords Rdrecord/ Rdrecords Rdrecord/ Rdrecords Rdrecord/ Rdrecords TransVouch/ TransVouchs CheckVouch/ CheckVouchs MatchVouch/ MatchVouchs ScrapVouch/ScrapVouchs ScrapVouch/ScrapVouchs AdjustPVouch/ AdjustPVouchs Ap_CloseBill/ Ap_CloseBills Ap_CloseBill/ Ap_CloseBills SBVID/Autoid DLID ID/Autoid DLID/idlsid SBVID/Autoid SBVID/Autoid ID ID ID/Autoid ID/Autoid ID/Autoid ID/Autoid cTVcode/autoID cCVCode/autoID cVouchCode/autoid ID/Autoid ID/Autoid ID/ Autoid iID/ID iID/ID 委托代销发货(退)单 Dispatch Dispatch SettleVouch SA_SettleVouch/ SA_SettleVouchs 销售调拨单(红、蓝) Billvouch 销售零售日报(红、蓝) Billvouch 代垫费用单 销售支出单 委外发票 产成品入库单 其他入库单 材料出库单 其他出库单 调拨单 盘点单 限额领料单 不合格品记录单 不合格品处理单 货位调整单 收/付款单 商业/银行承兑汇票 Expense Salepay Wwpurbill rd rd rd rd td ch ma sc sc ad Sk Sk OM_PurBillVouch/ OM_PurBillVouchs PBVID/ID 注意:其中销售订单子表、发货单子表、代垫费子表、销售支出单子表中的主键并不是通过表ua_identity中的ichildid+1得到,而是他本身是一个标识。如果这个单据报此错误,可能是由于主键的标识丢失。
延伸:保存销售订单、发货单、代垫费或者销售支出单的时候提示一下错误:
以销售订单的解决方式为例: 执行语句: use ufsystem
UA_Identity.ichildid= (select max(isosid) from ufdata_991_2007.. SO_SODetails) where UA_Identity.cvouchtype='somain' and cacc_id='991' 对应单据名称 销售订单 销售发(退)货单 代垫费用单 销售支出单
cvouchtype Somain Dispatch Expense Salepay 相关联主表/子表 SO_SODetails DispatchLists ExpenseVouchs SalePayVouchs 字段标识 isosid idlsid ID ID 1、在输入应收系统的\"收款单\"的时候,总提示单据号重复。单据编号生成控制表修正之后也还是提示单据号重复。
解决方法:由于ua_account_sub表里面的对应001账套的应收系统的bclosing标志出错,把‘0’改为‘1’就可以了,因为标志错误,导致系统取了上一年度的最大单据号。 注释:在保存其他单据的时候提示单据号重复,首先检查UA_IDENTITY和vouchhistory表,看单据记录最大号有没有问题。如果确实没有问题再查看是否是ua_account_sub表的标志错误导致。
因篇幅问题不能全部显示,请点此查看更多更全内容