问题现象:用友821版本数据升级用友861操作控件AdjustQc.ClsAdjust 错误信息: 申请单据ID失败!
问题现象: 821版本数据升级用友861操作,升级2003、2004两个年度数据到850sp版本时,提示错误信息如下【库存用友U8501补丁期初整理程序 2005-12-23 14:56:52 数据库名: UFDATA_001_2004 库存用友U8501补丁期初整理程序, 控件AdjustQc.ClsAdjust 错误信息: 申请单据ID失败!】
问题分析:由于85以前版本数据存在库存总帐st_totalaccount,升级到850版本后就没有这个表了。升级时需要将st_totalaccount中imonth=1的记录升级为库存期初 (rdrecord.bisstqc=1); 库存总帐st_totalaccount中无id字段,插入rdrecord时需要调用存储过程sp_getid来申请单据ID。目前的问题即是在调用sp_getid时发生异常错误。 问题处理过程:尝试过将库存总帐st_totalaccount数据清空,升级成功(此时不需要进行sp_getid操作);对升级错误进行sql事件跟踪,在sql后台出错事务回滚之前的最近sql执行语句是 {select * from accinformation where csysid='aa' and cid='37'} ,该行记录为系统标志号,发现其cvalue字段值为null,将此远程标识号赋值给后台@remoteid变量时出错。将远程标识改为‘00’再进行升级,2003、2004年度均成功升级到861(未加载861hotfix补丁的环境) 修改语句如下(对03、04两个年度库分别执行): update accinformation set cvalue='00' where csysid='aa' and cid='37'