处理总账对账不平的总结
首先:处理总账对账不平,恢复记账到出现对账不平的期间的期初或者年初。先确保明细账表无问题(期初明细账和凭证记录正确)。 一、 凭证及明细账表 select * from gl_accvouch
凭证上每条分录对应后台一条记录,重要字段cbill制单人标示,ccheck凭证审核人标示,cbook记账人标示.md借方数,mc贷方数,cdept_id部门辅助,·····。iperiod为会计期间。检查科目辅助属性,科目不带的辅助项值都应该为空值,若非空置,将其置为空值。科目带有辅助核算属性的都应值。
审核凭证时,会在ccheck列打上对应的审核标示, 凭证记账时,会在cbook列打上对应的记账标示, 快速判定是不是凭证及明细账表的问题
现象:出现对账不平后,记账后有问题,恢复记账后没有问题,可以判定为gl_accvouch表记录问题。若是期初的话,典型的是,打开往来明细期初,没有数据。
问题可能一:1122科目不带部门辅助核算,而在凭证表中1122科目对应的记录上部门字段为非空,检查语句
select * from gl_accvouch where ccode=’1122’ and cdept_id is not null,修复语句
update gl_accvouch set cdept_id=null where ccode=’1122’
问题可能二:1122科目是客户往来辅助,而在凭证表中1122科目对应的记录上存在客户字段为空值,或者有值但是不在客户档案中,那么凭证肯定有问题,检查语句
select iperiod,ino_id,* from gl_accvouch where ccode=’1122’ and ccus_id is null,
select iperiod,ino_id,* from gl_accvouch where ccode=’1122’ and ccus_id not in (select ccuscode from customer )
得出有问题凭证期间及凭证号,与客户确认,让客户前台修改凭证。
二、科目总账表
select * from gl_accsum
总账表,每个科目12条记录,iperiod从1到12,注意借贷方向,cbegind_c(cbegind_c_engl)该会计期间期初数mb的借贷方向,期间md借方发生,期间mc贷方发生,期末cendd_c(cendd_cengl)该会计期间期末数me的借贷方向
录入期初时或记账时,首先判断该科目在科目总账表内有无记录,无则增加12条记录。然后开始将该科目在记账范围的明细账表的借方发生汇总写入对应期间的md,贷方发生汇总写入对应期间mc,然后算出期末me应该增加的净额。然后改写me=me+净额,并且将改写之后期间的mb=mb+净额,me=me+净额。然后判定me的值,对比科目的借贷方向,修改期末借贷方向。尚未记账的会计期间的mb,me应该等于最后已记账期间的me。恢复记账时,逆向操作数据,问
题出在科目总账表的
现象一:记账记到三月,三月结账后,三月的对账都平,
可能原因一、结果4月账不平,先查出改科目3月余额为1000,执行语句
update gl_accsum set mb=1000,me=1000 where ccode=’1122’ and iperiod>’3’
问题可能二、记录数不为十二条,执行语句 select
ccode
from
gl_accsum
group
by
ccode
having
count(iperiod)<>12,890版本及890以上版本使用总账下面的期末对账下的【检查】检查记录数,不用写上面的语句了。
现象二:若是期初辅助账,明细账都正确,去掉科目的辅助核算属性,在期初余额中修改正确数字后,再加上相应的辅助即可。
现象三:总账上下级不平,只有后台修改。例如:1122有两个下级科目,112201为600,112202为400,而1122为1005。执行语句: update gl_accsum set mb=1000,me=1000 where ccode=’1122’ and iperiod>=’2’
现象三,3月记账正常,4月记账报错,可能原因是该科目没有第4会计期间的记录软件写不上,报错。
确定属于科目总账问题的,如缺记录的,多记录的,或者上述问题都不用花费时间去定位具体问题点了,恢复到期初,记下期初正确数字,后台删除 delete gl_accsum where ccode=’1122’,不带辅助的直接加上期初数;带辅助核算属性的的去掉辅助后,加上期初数,再加上对应
辅助核算属性。
三、 辅助总账 select * from gl_accass
辅助总账表,按照每个每个科目的每个辅助类型组合,12条记录,iperiod从1到12。记账、恢复记账数据处理方式同科目总账表。 第一种可能是gl_accvouch表中有错误记录,恢复记账后,参照第一条将gl_accvouch表处理正确后,直接记账。
第二种可能是某科目辅助总账表不正确而明细账表而正确,恢复到期初,去掉1122科目的客户辅助属性,在前台期初余额中将1122科目 的期初余额改为0,后再将1122科目加上客户辅助属性。执行语句delete gl_accass where ccode=’1122’,delete gl_accmultiass where ccode=’1122’然后再到期初余额1122科目下的期初往来明细点击汇总,再记账(记账时,提示尚未进行多辅助账升级,那就升级就是)注:两种可能原因的分辨点是,记账后就出现对账不平,恢复后就对了,一般是前一种可能,否则按照第二种可能,实在不想找原因,那就先按照找第一种可能处理,处理不了,按照第二种可能处理,问题保证解决。
四、多辅助明细账汇总表 select * from gl_accmultiass
多辅助明细账表,按照每个科目的每个辅助类型组合,12条记
录,iperiod从1到12。记账恢复记账同科目总账表。若是该多辅助账表有问题,造成账表查询有问题,890或者高于890版本的版本直接彻底删除这张表,执行语句:delete gl_accmultiass
然后点击记账会提示,尚未进行对辅助账表升级,利用软件去将本表写正确。
注:gl_accnultiass表是852版本之后出现的,个人认为这张表是为了提高辅助账查询效率而建立的,可以测试一下,凡是有这张表有问题的都可以这样操作,清空表后,软件记账时会提示尚未进行多辅助账升级,请升级多辅助账。
五、总账现金流量数据表
GL_CashTable现金流量表,通过指定现金流量的方式记录现金流量的,发生的现金流量都在这张表。
问题现象,现金流量表不正确,一是检查是不是现金流量凭证都录入了现金流量项目,二是流入的现金流量对应现金流量科目的借方,流出的现金流量对应现金流量科目的贷方。前台改凭证。现金流量科目可以随时设置,随时取消。
六、1、RP_bankrecp 银行对账单
2、gl_accvouch单位日记账,凭证标志 iflag,银行两清标志 iflagbank 空值为未核销,20为核销,凭证明细账表iperiod值大于12的,有部分是草稿;有部分是常用凭证;有部分是上年结转下来的未
勾对、未核销单位日记账,与银行对账有关系。
七、会计科目档案 select * from code
科目表,重要字段,cclass(科目类型),igrade(编码级次),bproperty(科目性质),bend(是否末级)。辅助类型bperson(个人)······。
七、帐套参数表
select cValue,* from accinformation where cSysID=’gl’ and cid in (’603’,’01’,’00’)
cValue值的格式应该是这样的2012-03-01,否则查询账表会有问题。从通升级上来的cValue值的格式是这样的2012-03。注意修正。
重要提醒,操作数据都要备份,对软件业务逻辑不清楚的情况下,首选账套备份,其次库文件备份,
backup database ufdata_xxx_xxxx to disk=’d:\\维护备份\%ufdata_xxx_xxxx20120311.bak’
再次,表备份,例如:select * into gl_accsum20120311bak from gl_accsum,
补充说明: U8v10.0 版本及之后的版本注意年度字段iyear。
重庆用友分公司 罗强