利用排除法处理用友GRP R9导入期末余额为负值

时间:2022-09-27 12:13:34

【摘 要】数据采集转换是使用AO进行审计分析的前提和重要环节,采集转换中的异常处理是这个环节的关键技术。本文总结了使用排除法处理用友GRP R9数据导入AO出现科目期末余额为负值的异常。本方法对其他财务核算软件数据导入AO时,出现类似错误的处理和纠错也具有借鉴和推广价值。

【关键词】排除法 导入 期末余额 负值

数据采集转换是使用AO进行审计分析的前提和重要环节,采集中的出错处理和异常纠错对不少审计人员来说是一难题。笔者在实践中总结出使用排除法处理用友GRP R9数据导入出现科目期末余额为负的异常。下面,简述如何采集GRP R9财务数据、转换数据和出错处理的解决方法和技巧。

一、采集数据,三道保险,有备方能无患

用友GRP R9财务软件的后台数据库是sql server2000,审计人员可以使用三种方式获取数据。一种是直接获取财务软件备份数据,第二种是使用取数工具直接连接后台数据库将数据导出成access格式数据,第三种是获取后台数据库备份文件(.bak)恢复到审计人员计算机中后使用。

在三种方式中,使用第一种方式获取的数据可以直接使用AO自带的模板转换,使用第二、三种方式获取的数据需要使用手工制作模板的方式来导入数据。

二、导入正常,结果诡异,必须手工处理

首先使用AO自带的模板(用友安易GRP_R9年度备份数据)导入数据,导入过程正常,但是导入后的数据中有几个科目的年底余额为负数,特别是“111-零余额帐户用款额度”,年底余额应该为0,如果为负数肯定存在异常。所以审计人员考虑必须分析后台数据,手工制作模板。

三、层层排除,抽丝剥茧,巧妙解决问题

(一)分析数据结构,做好导入准备

首先,将后台数据库备份文件恢复到本机的sql server2005系统中,其中四张关键表及数据元素如下:

1.GL_Kmxx(科目表)。数据元素:kmdm(科目代码),kmmc(科目名称),gsdm(会计年度),yefx(借贷方向)。

2.GL_Kmye(科目余额表)。数据元素:kmdm(科目代码),kjnd(会计年度),kmncj(借方期初余额),kmncd(贷方期初余额)。

3.GL_Pzml(凭证主表)。数据元素:kjqj(会计期间),pzrq(凭证日期),pzh(凭证号),pzly(凭证类型)。

4.GL_Pznr(凭证辅表)。数据元素:kjqj(会计期间),pzrq(凭证日期),pzh(凭证号),kmdm(科目代码),zy(摘要),jdbz(借贷标志),je(金额),pzly(凭证类型)。

(二)规范数据格式,成功导入AO

数据库备份文件包含建账以来所有年度的数据,并且凭证主表和凭证辅表中kjqj字段的格式为“年+月”共六位,而AO导入时必须选择年度字段,因此数据在导入AO前首先要进行处理。

首先在企业管理器中对[GL_Pzml]的pzrq字段进行处理,将字符型改成日期型。然后执行以下语句:

select * into km2010 from [GL_Kmxx] where gsdm='2010'

select * into ye2010 from [GL_Kmye] where kjnd='2010'

update [GL_Pzml] set pzh=substring(pzh,3,len(pzh)-2)

update [GL_Pzml] set pzh=ltrim(rtrim(pzh))

select * into pzzb2010 from [GL_Pzml] where left(kjqj,4)='2010'

update [GL_Pznr] set pzh=substring(pzh,3,len(pzh)-2)

update [GL_Pznr] set pzh=ltrim(rtrim(pzh))

select * into pzfb2010 from [GL_Pznr] where left(kjqj,4)='2010'

处理结束后,开始数据导入,凭证主表与凭证辅表的关联字段选择“kjqj(会计期间)+pzh(凭证号)”。

(三)问题依旧存在,必须排除分析

数据导入顺利完成,但“账表重建”后,科目余额表仍然存在几个科目的年底余额为负数,包括“111-零余额帐户用款额度”。

审计人员打开AO中的凭证表、科目表、科目余额表,都没有发现异常,审计人员重新整理了思路,使用排除法进行了分析。

第一步,分析可能是部分凭证缺失。比对导入后的凭证数量与原始表中的凭证数量,发现未存在缺失,排除该可能。第二步,分析可能是科目余额表导入存在错误。对科目余额表导入前后进行了比对,以“111-零余额帐户用款额度”为例,原始科目余额表中分别记录了期初余额、每月借方发生额和每月贷方发生额。将每月借方发生额和每月贷方发生额进行合计,得到该科目2010年全年的借方发生额和贷方发生额。经过与导入后科目余额表中的借贷方发生额进行比对,发现该科目期初余额和借方发生额导入没有错误,但贷方发生额比原始表中多出了245800元,这正是导致111科目期末余额为“-245800”的原因。由此,审计人员判断可能是凭证表中部分记录重复导入,而凭证表数量在导入前后并未发生变化,因此分析可能是原始凭证表中存在作废或者多余的凭证。第三步,打开原始凭证表,重新分析其字段,查找凭证类型是否有标志“有效”或者“作废”的字段,发现存在12月31号pzly(凭证类型)字段取值为’GA’的所有凭证,其对应的zy(摘要)字段内容全部都是“**的结转”,分析可能是该部分凭证出现了问题,由于纸质账还未送到,因此审计人员尝试着把这一部分凭证先去掉,再重新导入AO。

DELETE from pzzb2010 where pzly like 'GA'

DELETE from pzfb2010 where pzly like 'GA'

经过处理,导入成功,科目的年初余额和年末余额均已正常。经过其他一系列核对,发现全部吻合,至此,账簿导入成功。

参考文献:

[1]《计算机审计数据采集与分析技术》,董化礼 刘汝焯,清华大学出版社

[2]《会计信息系统与审计》,乔鹏 李湘蓉,清华大学出版社

作者简介:

崔瑞瑞,女,硕士研究生,中级审计师,网络工程师,主要从事审计数据挖掘分析、信息系统审计方面的研究,曾任河南省审计学会会员。

上一篇:VLAN技术及其在企业局域网中的应用 下一篇:媒介技术演化的软决定论