商贸版4.0旗舰版2.0报错
1.根据旗舰版升级工具,首先把账套升级到6.01sp1,无错
2,根据升级工具提示迁移旗舰版2.0,可是一直提示系统中存在数量为0金额为0的单据,迁移不成功。如下截图
:
先说一下我升级的商贸版账套:1,不允许负库存出库和结账。
2.单据检查未发现金额为0或者数量为0情况,赠品除外。
反反复复 修改检查十几次,一直提示错误。
真心希望开发团队 能不能给想个办法,不让提示这个提示,客户着急用,刚升级到旗舰版,好几个账套
等着用,这一个账套我前前后后弄了4天,客户都跟我急眼了。
感谢
经过论坛朋友的热心帮助,再次修改强制升级,已经取得一大步,尽管还是没能升级成功,但是给出了错误提示
其一个账套提示:链接服务器 '(null)' 的 OLE DB 访问接口 'SQLNCLI10' 返回了对列 '[SQLNCLI10].FHelperCode' 无效的数据。SELECT * INTO [KIS_t_Account]
FROM OpenDataSource('SQLOLEDB', 'Provider=SQLOLEDB;data source=.;initial catalog=AIS20160729130826;user id=sa;password=ly.963852')
.AIS20160729130826.dbo.[t_Account]
另一个账套提示:对象名 'kis_t_CC_Bal_TempImp' 无效。declare @maxbalid as int
declare @prevLastDate datetime
declare @maxYearPeriod as int
declare @curYear as int
declare @curPeriod as int
declare @firstPeriod as int
select @maxbalid = MAX(FIdentity) from KIS_t_CC_bal
set @firstPeriod = 1
select @maxYearPeriod = max(a.FYear * 100 + a.FPeriod) from KIS_t_CC_Stock_BatchNo a
select top 1 @curYear = a.FYear, @curPeriod = a.FPeriod
from KIS_t_CC_Stock_BatchNo a
where (a.FYear * 100 + a.FPeriod) = @maxYearPeriod
set @prevLastDate = CONVERT(DATETIME, Convert(varchar(4), @curYear) + '-' + Convert(varchar(2), @curPeriod) + '-01', 120)
set @prevLastDate = @prevLastDate -1
select 0 as FBrNo,
FPeriod,
FStockID,
a.FItemID as FItemID,
FBatchNo,
FBegQty,
FReceive,
FSend,
CAST(0 as decimal(23,10)) as FYtdReceive,
CAST(0 as decimal(23,10)) as FYtdSend,
FEndQty,
FBegBal,
FDebit,
FCredit,
CAST(0 as decimal(23,10)) as FYtdDebit,
CAST(0 as decimal(23,10)) as FYtdCredit,
FEndBal,
CAST(0 as decimal(23,10)) as FBegDiff,
CAST(0 as decimal(23,10)) as FReceiveDiff,
CAST(0 as decimal(23,10)) as FSendDiff,
CAST(0 as decimal(23,10)) as FBillInterID,
FUnitID,
FBegQty as FAuxBegQty,
CAST(0 as decimal(23,10)) as FYtdBegQty,
CAST(0 as decimal(23,10)) as FYtdAuxBegQty,
CAST(0 as decimal(23,10)) as FYtdAuxReceive,
CAST(0 as decimal(23,10)) as FYtdAuxSend,
CAST(0 as decimal(23,10)) as FYtdBegBal,
CAST(0 as decimal(23,10)) as FYtdBegDiff,
CAST(0 as decimal(23,10)) as FYtdReceiveDiff,
CAST(0 as decimal(23,10)) as FYtdSendDiff,
(case when isnull(b.FISKFPeriod, 0) = 0 then '' else (case when a.FKFDate > '1900-01-01' then Convert(varchar(10), a.FKFDate, 120) else '' end) end) as FKFDate,
a.FKFPeriod as FKFPeriod,
0 as FSPID,
CAST(0 as decimal(23,10)) as FSecBegQty,
CAST(0 as decimal(23,10)) as FSecReceive,
CAST(0 as decimal(23,10)) as FSecSend,
CAST(0 as decimal(23,10)) as FSecYtdReceive,
CAST(0 as decimal(23,10)) as FSecYtdSend,
CAST(0 as decimal(23,10)) as FSecEndQty,
(case when isnull(b.FSecUnitID, 0) = 0 then 0 else b.FSecUnitID end) as FSecUnitID,
Convert(varchar(10), @prevLastDate, 120) as FStockInDate,
FAuxPropID,
(case when isnull(b.FSecUnitID, 0) = 0 then 0 else b.FSecCoefficient end) FSecCoefficient,
(case when isnull(b.FSecUnitID, 0) = 0 then 0 else a.FSecBegQty end) as FAuxUnitBegQty,
CAST(0 as decimal(23,10)) as FYtdAuxUnitBegQty,
CAST(0 as decimal(23,10)) as FYtdAuxUnitSend,
CAST(0 as decimal(23,10)) as FYtdAuxUnitReceive,
(case when b.FIsSerialNumMgr = 1 then -1 else 0 end) as FSNListID,
'' AS FMTONo
into #tempICInvInitialn78
from KIS_t_CC_Stock_BatchNo a , KIS_t_ICItem b, KIS_t_Stock c
where (b.FTrack <> 78 or (b.FTrack = 78 and b.FISBatchManager = 1)) and abs(a.FBegQty) > 0.00000001 and (a.FYear * 100 + a.FPeriod) = @maxYearPeriod and a.FItemID = b.FItemID and a.FStockID = c.FItemID and c.FTypeID <> 502
update t set
t.FYtdReceive = a1.FYtdReceive,
t.FYtdSend = a1.FYtdSend,
t.FYtdDebit = a1.FYtdDebit,
t.FYtdCredit = a1.FYtdCredit,
t.FYtdAuxReceive = a1.FYtdAuxReceive,
t.FYtdAuxSend = a1.FYtdAuxSend,
t.FYtdAuxUnitSend = a1.FYtdAuxUnitSend,
t.FYtdAuxUnitReceive = a1.FYtdAuxUnitReceive
from #tempICInvInitialn78 t,
(select FStockID,
a.FItemID,
FBatchNo,
sum(FReceive * 1.0) as FYtdReceive,
sum(FSend * 1.0) as FYtdSend,
sum(FDebit * 1.0) as FYtdDebit,
sum(FCredit * 1.0) as FYtdCredit,
sum(FReceive * 1.0) as FYtdAuxReceive,
sum(FSend * 1.0) as FYtdAuxSend,
sum(case when isnull(b.FSecUnitID, 0) = 0 then 0 else a.FSecReceive * 1.0 end) as FYtdAuxUnitReceive,
sum(case when isnull(b.FSecUnitID, 0) = 0 then 0 else a.FSecSend * 1.0 end) as FYtdAuxUnitSend,
FAuxPropID
from KIS_t_CC_Stock_BatchNo a , KIS_t_ICItem b, KIS_t_Stock c
where (b.FTrack <> 78 or (b.FTrack = 78 and b.FISBatchManager = 1)) and (a.FYear * 100 + a.FPeriod) < @maxYearPeriod and a.FItemID = b.FItemID and a.FStockID = c.FItemID and c.FTypeID <> 502 and
(a.FYear * 100 + a.FPeriod) >= (@curYear * 100 + @firstPeriod)
group by FStockID,
a.FItemID,
FBatchNo,
FAuxPropID
) as a1
where t.FStockID = a1.FStockID and
t.FItemID = a1.FItemID and
t.FBatchNo = a1.FBatchNo and
t.FAuxPropID = a1.FAuxPropID
select 0 as FBrNo,
a.FPeriod,
a.FStockID,
a.FItemID as FItemID,
a1.FBatchNo as FBatchNo,
a.FBegQty,
a.FReceive,
a.FSend,
CAST(0 as decimal(23,10)) as FYtdReceive,
CAST(0 as decimal(23,10)) as FYtdSend,
a.FEndQty,
a.FBegBal,
a.FDebit,
a.FCredit,
CAST(0 as decimal(23,10)) as FYtdDebit,
CAST(0 as decimal(23,10)) as FYtdCredit,
a.FEndBal,
CAST(0 as decimal(23,10)) as FBegDiff,
CAST(0 as decimal(23,10)) as FReceiveDiff,
CAST(0 as decimal(23,10)) as FSendDiff,
a.FIdentity as FBillInterID,
FUnitID,
a.FBegQty as FAuxBegQty,
CAST(0 as decimal(23,10)) as FYtdBegQty,
CAST(0 as decimal(23,10)) as FYtdAuxBegQty,
CAST(0 as decimal(23,10)) as FYtdAuxReceive,
CAST(0 as decimal(23,10)) as FYtdAuxSend,
CAST(0 as decimal(23,10)) as FYtdBegBal,
CAST(0 as decimal(23,10)) as FYtdBegDiff,
CAST(0 as decimal(23,10)) as FYtdReceiveDiff,
CAST(0 as decimal(23,10)) as FYtdSendDiff,
a1.FKFDate as FKFDate,
a1.FKFPeriod as FKFPeriod,
0 as FSPID,
CAST(0 as decimal(23,10)) as FSecBegQty,
CAST(0 as decimal(23,10)) as FSecReceive,
CAST(0 as decimal(23,10)) as FSecSend,
CAST(0 as decimal(23,10)) as FSecYtdReceive,
CAST(0 as decimal(23,10)) as FSecYtdSend,
CAST(0 as decimal(23,10)) as FSecEndQty,
(case when isnull(b.FSecUnitID, 0) = 0 then 0 else b.FSecUnitID end) as FSecUnitID,
Convert(varchar(10), @prevLastDate, 120) as FStockInDate,
a1.FAuxPropID as FAuxPropID,
(case when isnull(b.FSecUnitID, 0) = 0 then 0 else b.FSecCoefficient end) FSecCoefficient,
(case when isnull(b.FSecUnitID, 0) = 0 then 0 else a.FBegQty / b.FSecCoefficient end) as FAuxUnitBegQty,
CAST(0 as decimal(23,10)) as FYtdAuxUnitBegQty,
CAST(0 as decimal(23,10)) as FYtdAuxUnitSend,
CAST(0 as decimal(23,10)) as FYtdAuxUnitReceive,
(case when b.FIsSerialNumMgr = 1 then ((-1) * a1.FSourceIdentity) else 0 end) as FSNListID,
'' AS FMTONo,
a1.FIDIndex as FIDIndex
into #tempICInvInitial78
from KIS_t_CC_bal a , kis_t_CC_Bal_TempImp a1 , KIS_t_ICItem b, KIS_t_Stock c
where a.FClassTypeID = a1.FClassTypeID and a.FInterID = a1.FInterID and a.FID = a1.FID and a.FEntryID = a1.FEntryID and a.FIdentity = a1.FIdentity and
(b.FTrack = 78 and b.FISBatchManager = 0) and abs(a.FBegQty) > 0.00000001 and (a.FYear * 100 + a.FPeriod) = @maxYearPeriod and a.FItemID = b.FItemID and a.FStockID = c.FItemID and c.FTypeID <> 502
update t set
t.FYtdReceive = a1.FYtdReceive,
t.FYtdSend = a1.FYtdSend,
t.FYtdDebit = a1.FYtdDebit,
t.FYtdCredit = a1.FYtdCredit,
t.FYtdAuxReceive = a1.FYtdAuxReceive,
t.FYtdAuxSend = a1.FYtdAuxSend,
t.FYtdAuxUnitSend = a1.FYtdAuxUnitSend,
t.FYtdAuxUnitReceive = a1.FYtdAuxUnitReceive
from #tempICInvInitial78 t,
(select a1.FStockID,
a1.FItemID,
a1.FBatchNo,
a1.FAuxPropID,
sum(FReceive * 1.0) as FYtdReceive,
sum(FSend * 1.0) as FYtdSend,
sum(FDebit * 1.0) as FYtdDebit,
sum(FCredit * 1.0) as FYtdCredit,
sum(FReceive * 1.0) as FYtdAuxReceive,
sum(FSend * 1.0) as FYtdAuxSend,
sum(case when isnull(b.FSecUnitID, 0) = 0 then 0 else a.FReceive * 1.0 / b.FSecCoefficient end) as FYtdAuxUnitReceive,
sum(case when isnull(b.FSecUnitID, 0) = 0 then 0 else a.FSend * 1.0 / b.FSecCoefficient end) as FYtdAuxUnitSend,
a1.FIDIndex as FIDIndex
from KIS_t_CC_bal a , kis_t_CC_Bal_TempImp a1 , KIS_t_ICItem b, KIS_t_Stock c
where a.FClassTypeID = a1.FClassTypeID and a.FInterID = a1.FInterID and a.FID = a1.FID and a.FEntryID = a1.FEntryID and a.FIdentity = a1.FIdentity and
(b.FTrack = 78 and b.FISBatchManager = 0) and (a.FYear * 100 + a.FPeriod) < @maxYearPeriod and a.FItemID = b.FItemID and a.FStockID = c.FItemID and c.FTypeID <> 502 and
(a.FYear * 100 + a.FPeriod) >= (@curYear * 100 + @firstPeriod)
group by a1.FStockID,
a1.FItemID,
a1.FBatchNo,
a1.FAuxPropID,
a1.FIDIndex
) as a1
where t.FStockID = a1.FStockID and
t.FItemID = a1.FItemID and
t.FBatchNo = a1.FBatchNo and
t.FAuxPropID = a1.FAuxPropID and
t.FIDIndex = a1.FIDIndex
select
FBrNo,
FPeriod,
FStockID,
FItemID,
FBatchNo,
FBegQty,
FReceive,
FSend,
FYtdReceive,
FYtdSend,
FEndQty,
FBegBal,
FDebit,
FCred
2个账套 提示2个不同的错误提示,伙伴们再给看一下,该怎么处理 ? 万分感谢!
推荐阅读