主要原因是固定资产系统后台数据表中Fbalid数值过大引起,附件SQL语句重新整理Fbalid值,执行后结账即可,楼主可以测试一下是否可行。
--先禁用相关数据表约束
ALTER TABLE t_fabalcarditem NOCHECK CONSTRAINT FK_t_FABalCardItem_t_FABalance
ALTER TABLE t_fabalcard NOCHECK CONSTRAINT FK_t_FABalCard_t_FABalance
ALTER TABLE t_fabaldevice NOCHECK CONSTRAINT FK_t_FABaldevice_t_FABalance
ALTER TABLE t_fabalorgfor NOCHECK CONSTRAINT FK_t_FABalorgfor_t_FABalance
ALTER TABLE t_fabaldept NOCHECK CONSTRAINT FK_t_FABaldept_t_FABalance
ALTER TABLE t_fabalpurchase NOCHECK CONSTRAINT FK_t_fabalpurchase_t_FABalance
ALTER TABLE t_fabalexpense NOCHECK CONSTRAINT FK_t_FABalexpense_t_FABalance
--生成新旧内码对照表
select distinct(fbalid) AS Foldid,IDENTITY(int,1,1) as fnewid into #tmpa from t_fabalance
--用新内码更新就内码
update t_fabalcarditem set fbalid=#tmpa.fnewid from t_fabalcarditem carditem,#tmpa where
#tmpa.foldid=carditem.fbalid
update t_fabalcard set fbalid=#tmpa.fnewid from t_fabalcard carditem,#tmpa where
#tmpa.foldid=carditem.fbalid
update t_fabaldevice set fbalid=#tmpa.fnewid from t_fabaldevice carditem,#tmpa where
#tmpa.foldid=carditem.fbalid
update t_fabalorgfor set fbalid=#tmpa.fnewid from t_fabalorgfor carditem,#tmpa where
#tmpa.foldid=carditem.fbalid
update t_fabaldept set fbalid=#tmpa.fnewid from t_fabaldept carditem,#tmpa where
#tmpa.foldid=carditem.fbalid
update t_fabalexpense set fbalid=#tmpa.fnewid from t_fabalexpense carditem,#tmpa where
#tmpa.foldid=carditem.fbalid
update t_fabalpurchase set fbalid=#tmpa.fnewid from t_fabalpurchase carditem,#tmpa where
#tmpa.foldid=carditem.fbalid
update t_fabalance set fbalid=#tmpa.fnewid from t_fabalance carditem,#tmpa where
#tmpa.foldid=carditem.fbalid
update t_identity set fnext=(select max(fnewid)+1 from #tmpa) where fname='t_fabalance'
drop table #tmpa
--更新完毕,启用约束
ALTER TABLE t_fabalcarditem CHECK CONSTRAINT FK_t_FABalCardItem_t_FABalance
ALTER TABLE t_fabalcard CHECK CONSTRAINT FK_t_FABalCard_t_FABalance
ALTER TABLE t_fabaldevice CHECK CONSTRAINT FK_t_FABaldevice_t_FABalance
ALTER TABLE t_fabalorgfor CHECK CONSTRAINT FK_t_FABalorgfor_t_FABalance
ALTER TABLE t_fabaldept CHECK CONSTRAINT FK_t_FABaldept_t_FABalance
ALTER TABLE t_fabalpurchase CHECK CONSTRAINT FK_t_fabalpurchase_t_FABalance
ALTER TABLE t_fabalexpense CHECK CONSTRAINT FK_t_FABalexpense_t_FABalance
--完毕
稳健发展,追求卓越。