百科问答

百科问答 国内资讯 公司资讯 政策法规 培训资料 产品下载

用友财务软件U8V10.0以上末级科目修复脚本

发布时间:2024-11-18 

特价活动:>>>> 用友U8、T6、T+、T3软件产品4折优惠,畅捷通T+cloud、好会计、好业财、好生意云产品8折优惠,另有话费赠送。

 

用友财务软件U8V10.0以上末级科目修复脚本



最近有客户问了这个问题,今天记录一下,懂得人自然会懂得;

正确食用方法:登陆企业管理器,运行以下SQL语句或者下载txt文件复制运行SQL语句即可


-----备份科目表
SELECT * INTO codebak_hbyb FROM code
-------------10.0 以上末级科目检查
if EXISTS (select * from sysobjects where name='temp_aa' and xtype='u')
drop table temp_aa
select top 0 bend c ,ccode,ccode_name,bend,iyear into temp_aa from code ---------------------------------游标检查末级标志 DECLARE @ccode nvarchar(200), @ccode_name nvarchar(200),@bend nvarchar(200),@iyear nvarchar(20) ,@ccode1 nvarchar(200) DECLARE ccode_test CURSOR FOR SELECT ccode,ccode_name,bend,iyear FROM code order by iyear,ccode OPEN ccode_test FETCH NEXT FROM ccode_test INTO @ccode,@ccode_name,@bend,@iyear WHILE @@FETCH_STATUS = 0 BEGIN set @ccode1=@ccode+'%' insert into temp_aa select case when count(*)>1 then 0 else 1 end, @ccode,@ccode_name,@bend,@iyear from code where ccode like @ccode1 and iyear=@iyear FETCH NEXT FROM ccode_test INTO @ccode,@ccode_name,@bend,@iyear END CLOSE ccode_test DEALLOCATE ccode_test ------------------------------------游标检查末级标志 select * from temp_aa where c<>bend -----------查询末级标志不对的科目 ----------------更新 if EXISTS (select * from temp_aa where c<>bend) begin update c set c.bend=a.c from code c inner join temp_aa a on c.ccode=a.ccode and c.iyear=a.iyear where a.c<>a.bend end ------------更新
drop table temp_aa --------删除临时表


X畅捷通软件官方正版.用友软件.企业云服务

截屏,微信识别二维码

客服QQ:5151867

(点击QQ号复制,添加好友)