今天将通10升级到U870的完整步骤记录如下:
1、将UF2KACT.LST文件修改成UFERPACT.LST,然将此文件用记事本打开,将VersionEx值改为“V8.21”(引号内的);
2、再将此账套引入到U821中,有的人会问了,干吗要引入到U821中,如果不引入到此版本中升级将出现如下错误:
采购数据库程序, DPRO_PU
错误信息:
-2147217900
列名 'cFree3' 无效。
执行如下语句时出错:
Alter Procedure PU_BatchRDToBV(
@sMaker varchar(20),
@CurPBVCode varchar(10),
@sPBVType varchar(2),
@sCurrency varchar(10),
@bCal bit,
@iExchRate Float,
@iUPriceBit tinyint,
@iTaxRate Float,
@bNeg bit,
@sCurDay Varchar(12),
@sUserName varchar(20),
@ID int,
@iVtid varchar(10),
@bRet bit output
)
As
Set NOCOUNT ON
3、升级时会出现BANK表中如下的错误:
D:\U8SOFT\Admin\SQLFILE850\Ufdata\DSTR_Public.sql
方法:将表BANK中的字段CBAccount,改为允许空,并将长度改为100后保存;
4、升级到一半时会出现另一种错误:
错误信息:
-2147217900
索引'cBName' 依赖于 列'CBAccount'。
执行如下语句时出错:
--<Strategy Ver='Tong10.2' RunType='skip'></Strategy>
Alter TABLE Bank alter column CBAccount varchar(50) NOT NULL
D:\U8SOFT\Admin\SQLFILE8600\Main\Ufdata\DSTR860_IA.sql
错误信息:
-2147217900
对象'FK__JustInVou__cPers__1348B5CC' 依赖于 列'cPersonCode'。
执行如下语句时出错:
--IF not EXISTS(Select name FROM sysindexes Where id=object_id('IA_enSubsidiary') and name='gz2')
Create NONCLUSTERED INDEX gz2 ON dbo.IA_enSubsidiary
(
cinvcode
) ON [PRIMARY]
--go
…………………………………………………………
--2004-7-16 需求新的要求,职员编码从8位扩充到20位
alter table ia_subsidiary Alter COLUMN cPersonCode varchar(20) null
--go
alter table JustInVouch Alter COLUMN cPersonCode varchar(20) null
注意红色字体:
不错就是修改表JustInVouch,将cPersonCode字段长度改为20,保存继续;
5、继续升级正常;
方法二:
1、前两步相同;
2、将账套在U821升级一下,再输出;
3、将U821中升级好的数据引入到U63.0中,并安装TONG升级到U63.0补丁继续升级;
http://tong.ufida.com.cn/upload/service_ser/u6/tongtou6.rar(补丁下载地址)
4、完成后输出,将数据解压后引入到U870中;
5、执行本博中曾提到的语句:
USE UFDATA_001_2007
Delete FROM ACCINFORMATION where csysid='om'
go
Alter TABLE dbo.Ven_Inv_Price_Rule
Drop CONSTRAINT btaxcost_default
go
Alter TABLE dbo.Ven_Inv_Price_Rule
Drop COLUMN btaxcost
go
delete from gl_msysname where sysseq='13'
go
6、继续升级应该没问题
济南用友主要服务于济南地区的中型、小微型企业客户,是山东用友软件金牌经销商,公司主要代理用友畅捷通T+、T1商贸宝、T3用友通、T6畅捷通ERP,用友U8等企业管理软件。(济南用友软件咨询热线:0531-82825553)