NC6X会计科目增加下级科目后删除脚本。一下由网友提供。
方案说明:
select * from bd_account where code like ‘上级编码%’ ;
// 记录上下级科目的pk_account,如果有多个的话,请通过pk_accchart区分
// 将下级科目的主键进行异化,将主键让出来给上级,1001和@@@@可以根据实际情况修改
update bd_accasoa set name2=pk_accasoa, pk_accasoa = replace(pk_accasoa,’1001′,’@@@@’) where pk_account=’下级pk_account’;
// 将上级科目的主键恢复成下级科目主键,并修改末级标志
update bd_accasoa set pk_accasoa=(select name2 from bd_accasoa a where a.pk_accchart=bd_accasoa.pk_accchart and a.pk_account=’下级pk_account’),endflag=’Y’ where pk_account=’上级pk_account’ and exists(select name2 from bd_accasoa a where a.pk_accchart=bd_accasoa.pk_accchart and a.pk_account=’下级pk_account’);
//删除下级科目
delete from bd_accasoa where pk_account=’下级pk_account’;
delete from bd_account where pk_account=’下级pk_account’;
做好备份,测试环境验证通过后执行到正式环境,如有问题请及时反馈!