SQL语句在EXCEL2010环境下的审计应用,本文主要内容关键词为:语句论文,环境论文,SQL论文,此文献不代表本站观点,内容供学术参考,文章仅供参考阅读下载。
EXCEL2010具有强大的数据分析功能,搭建了在此环境下的SQL语句运行环境。笔者学习了SQL-Server数据库操作和EXCEL2010强大的数据应用功能,并在此基础上研究了SQL语句在EXCEL2010中的应用,并将这些方法在审计实施中进行了积极的尝试,取得较好的应用效果。
一、EXCEL2010使用SQL语句功能介绍
EXCEL2010将SQL语句运行环境嵌入EXCEL2010数据分析模块中。在数据分析时,用户通过OLE DB接口获取外部数据源的方式,在获取外部数据源的同时,在数据连接属性定义选项中的文本命令处,输入SQL语句并运行,对同一EXCEL文件中的不同表(sheet)进行关联、检索和对比分析,EXCEL2010可按SQL语句指令自动生成新的运行结果表(sheet)。该工具具有以下优势:一是EXCEL2010直接嵌入了SQL语句,审计人员可在SQL操作结果的基础上,应用EXCEL已有功能,使数据分析工作更便捷、灵活。二是对于EXCEL,审计人员非常熟悉,在EXCEL2010平台运行SQL语句可避免单独使用EXCEL操作烦琐、速度慢、易出错等问题。三是SQL语句较简单,简单英文,规则易懂,可以说在EXCEL2010操作平台上使用SQL命令,比SQL-Server环境下使用SQL语句更简单,更易学。
二、审计应用案例
案例1:快速发现A石化公司积压物资3943万元
2012年年初,审计组开展A石化公司管理效益审计。审计查阅了A公司2007-2010年会计报表,公司有关存货积压物资各年数据均为零。审计经验判断,石化企业生产部门为方便装置检维修、应对非计划停车及保障安全生产等需要,申报的备件、配件等物资采购计划盲目性大,通常采购追求多而全,致使实际需求与计划严重脱节,一般都会形成大量的积压物资。通过审计访谈,公司物资管理人员不承认存在积压物资,说通过加强管理,近几年已经消耗了以前形成的积压物资,说积压物资根本不存在。
为全面查清积压物资究竟有多少,笔者将A石化公司物资管理ERP系统中的2008年年末、2011年年末库存数据分别转至两个EXCEL文件后,通过SQL语句进行自动比对,即2008年年末库存明细表中的某物资名称同样在2010年年末库存表中也存在,即两个表物资名称、规格型号、数量、金额4个条件完全匹配一致时,即可判定为积压物资。编辑的SQL语句如下:
SELECT A.物料描述,A.库存地点,A.期初数量,A.期初金额,B.期末数量,B.期末金额
FROM[2009$]A,[2011$]B
WHERE A.物料描述=B.物料描述AND A.期初数量=B.期末数量AND A.期初金额=B.期末金额
通过在EXCEL2010中运行SQl语句后,自动生成了2009年年初和2011年年末库存数据对比表(见表1)。
A石化公司ERP存货库存数据每年存有2.5~3万条记录,依靠传统的计算机手段在短时间内很难准确查清积压物资确切数量。笔者通过该方法,用了不到20分钟的时间即查清了公司存在积压物资3943万元的问题。
案例2:测试销售业务是否执行了相应的价格,据此发现油品降级降价销售影响企业效益3787万元问题
在审计过程中,审计人员经常对销售企业销售价格进行测试,审查判断企业执行的销售价格是否偏离上级规定的销售价格。传统的审计方法是通过EXCEL逐项筛选产品规格型号、筛选销售日期,并在此条件下手工对应输入相应的应执行价格,之后计算应执行价格与销售价格差异。该操作方法费时费力、容易出错,且准确度不高。
笔者在EXCEL2010中应用了SQL语句快速实现了价格测试。表2为A石化公司销售系统转出的销售数据,表3为A公司的价格调整文件整理表。笔者以销售表中的开票期为时点,当两表品种代码一致时,且销售表开票日期归属于价格表中的价格执行日与价格终止日之间,计算机自动生成下表,并添加一列“应执行价格”,实现了销售表与价格表的匹配和对接(见表4),这样可快速查出实际销售价格低于价格文件规定价格的销售业务。编辑的SQL语句如下:
SELECT A.品种代码,A.开票日期,A.单价,B.执行价格
FROM[销售$]A,[价格区间$]B
WHERE FORMAT (A.开票日期,”yyyy/m/d")BETWEEN B.价格执行日AND B.价格终止日
对海量的销售业务数据,通过上述方法,快速、准确、完整地发现了A石化公司未执行规定价格的销售业务。特别是,发现了因上级部门销售计划与生产计划不衔接,公司产品适销不对路,2009-2011年,生产的96565吨柴油通过降级或再调和为其他油品进行销售,直接影响效益3787万元。