会计软件国家标准接口数据的正确性验证方法
2012-07-17李帅
李 帅
2010年发布的GB/T24589.1—2010《财经信息技术会计核算软件数据接口》(企业)和GB/T24589.2—2010《财经信息技术会计核算软件数据接口》(行政事业单位)两个标准,输出的接口数据文件都是XML文件。要使用这样的数据,首先是要对输出的标准数据进行验证,其次是要将基于XML数据转换为所需要的格式。本文主要以GB/T24589.1-2010进行探讨,从数据角度讲,两个标准从方法论上都是相同的。
一、会计软件国家标准接口数据应用中存在的问题
GB/T24589系列国家标准输出的数据格式都是XML,XML文件的构成就是一个文本文件,它将数据结构、属性、数据都集成到了一起,是目前数据交换的通用格式标准。XML是The Extensible Markup Language(可扩展置标语言)的简写,XML被广泛用来作为跨平台之间交互数据的形式,主要针对数据的内容,通过不同的格式化描述手段可以完成最终的形式表达。
要应用该按照标准接口输出的数据,首先要确信该数据是正确的。实际上,有一些因素是会影响数据正确性的,主要的影响因素如下:
(1)会计系统的数据本身有问题,输出的数据自然也存在问题
在会计信息系统中,在软件控制和内部控制上可能存在一些不足,也存在部分的业务数据还没有处理完毕,而输出的XML标准数据程序并没有相关控制,输出的数据正确性就不能得到保证。
(2)会计软件的输出转换存在隐含问题
从会计信息系统输出标准数据,设计输出程序时需要将内部的数据转换成与标准相一致XML格式,由于对标准的理解不够,编制的转换程序就可能存在隐含错误。由于测试数据不可能穷尽各种情况,编制的程序很难得到全面的验证,因而输出XML数据就不可能确保绝对正确。
(3)由于XML是文本文件,XML文档被恶意篡改
通过转换的输出的XML文件,实际上是一个XML文件,如果输出单位要有意进行修改,这就十分容易办到。
(4)被病毒、木马程序等恶意更改
影响计算机系统安全的病毒程序、木马程序,甚至恶意的黑客,都很容易改变XML而不被发现。
二、标准接口数据的验证模型分析
会计信息由会计数据构成,而这些会计数据之间不是孤立的,相互间存在许多关系,要验证会计数据的正确性,就需要知道这些数据间存在的内部关系,通过数据间的内部关系来验证数据的正确性是一种较为可行的方法。
1.数据验证关系
(1)报表数据与总账、员工薪酬、固定资产、应收应付数据进行验证
标准接口数据中,通过“报表集”和“报表项数据”提供了会计报表,报表除常规的资产负债表、利润表、现金流量表外,还可以根据需要提供其他报表。
报表数据是总括数据,通过报表编制的逆过程,可以分析出每项数据与总账等的数据关系。通过这种数据关系分析,就可以进行验证。
(2)报表内数据关系
一张报表内,具有合计、小计、项目之间的运算关系,也存在项目之间的其他关系。
(3)报表之间的数据进行验证
会计数据是一个有机的整体,因此报表之间的数据多数具有相互的对应关系,如相等、合计、大于小于等关系。
(4)总账数据的内部关系
总账中的最关键数据是凭证数据和科目余额及发生额,这两者之间主要就是分类汇总关系。凭证内部存在借贷平衡、科目对应关系、数据的合理性等等关系。可与余额及发生额内部存在主要的逐层次的汇总关系、期初与本期发生和期末之间的关系,各科目之间也存在关系。还存在辅助核算项目之间的关系。
(5)员工薪酬数据与总账数据的关系
员工薪酬与总账的关系主要是有关凭证是通过员工薪酬数据生成的,因此具有数据对应关系。
(6)固定资产数据与总账数据的关系
固定资产的增加、减少、计提折旧等信息,都将以凭证的信息方式传递给总账系统,与有关凭证存在对应关系。
(7)应收应付数据与总账数据的关系
应收应付数据是总账的应收应付相关科目数据的补充,数据之间存在对应关系。
(8)编码利用的关系
在会计数据之间,编码成了标示数据、联系数据的纽带。如科目编码,在科目余额及发生额、凭证等数据表中均存在。而代码在一个系统中是唯一的,因此可通过代码的验证检查代码是否有误。
(9)与以前各期数据进行关系
会计数据各期间之间存在数据结转,数据之间具有连续的运算关系,通过这些关系可以验证是否存在异常。由于在会计年度之间,会计科目等有可能调整,因此部分明细可能存在不完全的直接对应关系,但总和数据是一致的。在一个会计年度中间,每个会计月之间数据一般是直接传递的。
(10)集团企业内各独立核算单位之间的数据关系
对于一个集团企业,下属的独立核算单位从会计角度看是独立的,但在下属企业之间、集团与下属企业之间,一定存在许多联系。输入资金的投资、资产的转移、应收应付等,都会存在关系。集团的会计核算,更是会与下属单位存在更密切的关系,有的数据存在汇总关系。
2.数据之间的关系类型
(1)二维关系
①相等关系
相等关系就是指不同表之间、不同项目之间、凭证与账簿之间的数据存在直接的相等关系。如果出现不等,就存在数据错误的可能。
②大于、小于关系
对于一些具有小计、合计性质的数据,会存在总额相等,大于分项的关系。而分项与具有总项之间存在小于关系,如资产净值小于资产原值。
③计算关系
某些数据是根据某些数据计算而来,如应交税费就是根据相关项目计算而来,折旧是根据折旧率计算而来,等等。
(2)多维关系
就某个数据而言,它会存在多个维度的关系。一是它与有关数据存在关系,如销售收入与应交税费有关系,业余利润的计算有关系,还与应收账款有关系、与利润表有关系等等。通过这种关系,会形成一个数据关系图,这就是验证的依据所在。
(3)立体关系
会计上的每个数据都存在可逆的关系,就是一个数据,它都是由上一层的数据运算而来。上一层的数据又是由再上一层的数据运算而来,直至进入会计系统的原始数据。这就像一棵倒立树,形成一个立体的数据关系。
(4)构成比例的合理性关系
有些会计数据,根据有关法规政策或会计准则,其数据之间有一个合理的范围。如折旧费用,其每月的变化不大,若有大的变化,必定有相应的固定资产增加或减少。如其他应收款,如果数额变化较大或者所占比例较大,则可能会存在问题。
三、验证软件实现方法
要实现验证,最关键的是要分析出数据之间的关系,但这些关系计算机是无法识别的,只有通过计算机可理解的方式实现。方法是将这些关系公式化,形成规则库。然后设计计算机验证软件进行自动化验证,对不符合预定关系的,给出提示,生成分析报告,供验证参考。
主要需要建立以下规则表:
1.固定验证规则表
对于已经分析确定的规则,可以专门设计一个表来保存。这部分规则应该在大多数企业是通用的。
2.动态验证规则表
对于一些企业的特殊规则关系,专门存放在动态规则表中。对于一些临时需要检查的规则,也可存放在动态规则表中。
对于验证的结果,要专门存放,通过结果还可对数据的质量进行评估,分析数据出现错误多的规则,以寻找数据差错的原因。
标准接口数据的应用,首先是要确保数据是正确的,而要保证数据的正确性,首先的要会计系统的数据本身要确保正确无误。然后的转换中能够正确转换。但这些过程由于技术原因、人为原因,都有可能产生错误,因此数据的验证是必要的。由于标准接口还是在初期的应用阶段,我们需要寻找解决数据验证的方法,以确保数据的正确性。
[1]毛华扬.会计软件数据接口标准构成及架构探讨[J].中国管理信息化.2008年8月.
[2]GB/T24589.1-2010财经信息技术会计核算软件数据接口第一部分:企业.北京:中国标准出版社,2010年8月.
[3]GB/T24589.2-2010财经信息技术会计核算软件数据接口第二部分:行政事业单位.北京:中国标准出版社,2010年8月.