錯誤提示:定義的應(yīng)用程序或?qū)ο箦e誤
錯誤代碼:3631(E2FH) Source :Microsoft OLE DB Providerfor SQL Server Detail :違反了 PRIMARY KEY 約束 'pk_Balance'。 不能在對象 't_Balance' 中插入重復(fù)鍵。如圖所示:

分析: 一般出現(xiàn)“定義的應(yīng)用程序或?qū)ο箦e誤”的提示,一般首先都考慮是程序問題,然后修復(fù)程序之后,問題依舊,而且演示賬套又是正常的,這就意味著不關(guān)程序的事,根據(jù)錯誤代碼的描述,可以判斷出是數(shù)據(jù)庫的問題,并且是在科目余額表中不允許重復(fù)的字段里出現(xiàn)了重復(fù)的內(nèi)容,最終導(dǎo)致不能結(jié)賬。該問題一般都是出現(xiàn)在專業(yè)版比較舊的版本里頭,并且是由迷你版、標(biāo)準(zhǔn)版升級上來的賬套居多。
解決辦法: 這種情況下的錯誤,一般需要使用SQL語句來處理。建議在備份賬套的情況下,在查詢分析器中選擇正確的賬套數(shù)據(jù)庫實體后,執(zhí)行以下SQL再結(jié)賬。
go
declare @Fyear int,@Fperiod int
select @Fyear=fvalue from t_systemprofile where fkey='currentyear' and fcategory='gl'
select @Fperiod=fvalue from t_systemprofile where fkey='currentperiod' and fcategory='gl'
delete from t_balance where fyear*100+fperiod>@Fyear*100+@Fperiod
delete from t_profitandloss where fyear*100+fperiod>@Fyear*100+@Fperiod
delete from t_quantitybalance where fyear*100+fperiod>@Fyear*100+@Fperiod
go
上一篇:金蝶迷你版/標(biāo)準(zhǔn)版憑證錄入界面異常怎么辦?
|