一.想要修改科目 比如加核算维度,开启往来核算等。自己删除了凭证等,还是提示存在业务,无法修改。
排查思路:
如果想要修改 是不能存在任何业务数据的 最简单的方式 去查这个科目的科目余额表 如果还能查出数据 说明 凭证/初始化没删干净 再去对应的地方检查
如果科目余额表是空的 但是还是报这个问题的话 可能是科目余额初始化存在脏数据 最快的办法是找到之前做过初始化的组织执行反初始化再初始化的操作 一般就能清除后台脏数据。
二.版本化提示当期及后期有业务,无法版本化。
排查思路:与上面一致。
系统目前的校验逻辑 是这四个 科目余额表/科目余额初始化 往来余额 凭证
提供查询数据的脚本 方便定位:
--1.是否有业务发生四大校验
select * from t_gl_voucher v left join t_gl_voucherentry ve on ve.fid=v.fid left join t_bd_account a on a.fid=ve.faccountid where v.forgid=1007337526081357824 and a.fnumber='220102';
select * from t_gl_initbalance v left join t_bd_account a on a.fid=v.faccountid where v.forgid=1007337526081357824 and a.fnumber='220102';
select * from t_gl_acccurrent v left join t_bd_account a on a.fid=v.faccountid where v.forgid=1007337526081357824 and a.fnumber='220102';
select * from t_gl_balance where faccountid in (select fmasterid from t_bd_account where fnumber ='220102') and forgid=1007337526081357824;
推荐阅读