地址:佛山市南海天安数码城天安时代大厦A座303-304
电话:0757-82727826
QQ:604872612
邮箱:604872612@qq.com
网址:www.fshcloud.com
金蝶KIS系列的金蝶KIS版多辅助核算处理采集技术
金蝶云之家的金蝶KIS版本采用ACCESS为后台数据库,审计人员可从金蝶安装目录中找到“.Ais”文件及“System.mda”工作组文件,通过修改工作组文件,以独占方式打开,撤消密码操作,将“.Ais”文件中的表导入至另一ACCESS文件中,再还原工作组文件,便不再提供登录名及密码打开。下面以某医院2010年数据为例,详细讲解这个版本的多辅助核算处理及采集方法。
一、 金蝶KIS商贸版的数据库中表及相关字段释义:
1、 GLAcct-科目表,主要字段包括:FacctID(科目编码)、FAcctName(科目名称)、FDC(借贷方向,D-借,C-贷)、FCLsID(核算类别),FTrans(是否往来核算)等。
2、 GLBal-余额表,主要字段包括:FPeriod(会计期间)、FAcctID(科目编码)、FCLsID(核算项目类别)、FobjID(核算项目代码)、FCyID(币别)、FBase(是否为折合本位币)、FBegBal(期初余额)、FDebit(借方发生额)、FCredit(贷方发生额)、FYtdDebit(本年累计借方发生额)、FYtdCredit(本年累计贷方发生额)、FEndBal(期末余额),该表按月提供了各核算项目的辅助余额,既是余额表,又是辅助余额表,余额以正负性区分,正为借,负为贷。
3、 GLvch-凭证表,主要字段包括:FSerialNum(顺序号)、FDate(日期)、FPeriod(会计期间)、FGroup(凭证字)、FNum(凭证号)、FEntryID(分录序号)、FExp(摘要)、FAcctID(科目代码)、FCLsID(核算项目类别)、FObjID(核算项目代码)、FDebit(借方)、FCredit(贷方)、FPreparer(制单人)、FChecker(审核人)、FPoster(记账人)、FAttachment(附件数)、FPosted(是否记账)、FDeleted(删除标志),凭证表提供了辅助核算内容,故此表既是凭证表又是辅助凭证表。
4、 GLCLs-核算项目表,主要字段包括:FCLsID(核算项目类别代码)、FCLsName(类别名称),该表提供了辅助核算项的信息,即辅助类型内容。
5、 GLobj-核算项目明细表,主要字段包括:FCLsID(核算项目类别)、FobjID(核算项目代码)、FobjName(核算项目名称)、FDeleted(删除标志)等,该表提供了每个辅助核算项(类型)下的辅助编码及名称,是一张典型的单表结构辅助信息表。
二、 审计人员根据表的结构,整理出适合AO2011辅助账采集方式的导入表,由上述内容可知,整理出的表结构如下:
(一) 辅助账采集表的格式
1、 凭证表:凭证表与辅助凭证表为同一张表(即导入AO2011时该表作两次导入),辅助账导入选择单表横排结构;
2、 辅助余额表:单表竖排结构;
3、 辅助信息表:单表存储。
(二) 处理代码
1、 科目表分析语句:
SELECT FacctID AS 科目编码,
,FAcctname AS 科目名称
,IIF(FDC=‘D’,‘借’,‘贷’) AS 科目方向
FROM GLAcct
ORDER BY FACCTID;
2、 余额表分析语句
SELECT v.FAcctid AS 科目编码
,Sum(v.FBegbal) AS 余额
FROM (SELECT DISTINCT FAcctID,FCLsID,FObjID,FBegbal
FROM GLBal
WHERE FPeriod = 1
AND FBegbal<>0)v
WHERE v.FCLsID)=0
GROUP BY v.FAcctID;
说明:因该表列出了各辅助核算项的辅助余额,即每个科目下的辅助核算项明细余额,故需要使用分组方法汇总出每个科目的余额,避免因科目编码重复导致采集失败,DISTINCT语句将综合本位币及人民币核算中重复的记录剔除,保留其一。
3、 凭证表处理语句
SELECT FDate AS 凭证日期
,FNum AS 凭证号
,FGroup 凭证类型
,FAcctid AS 科目编码
,FExp AS 摘要
,FDebit AS 借方
,FCredit AS 贷方
,IIF(FCLsID=4,FObjid,NULL) AS 其他应收款辅助核算
,IIF(FCLsID=5,FObjID,NULL) AS 其他应付款辅助核算
,IIF(FCLsID=6,FObjID,NULL) AS 应付账款辅助核算
,IIF(FCLsID=7,FObjID,NULL) AS 应收医疗款辅助核算
,IIF(FCLsID=8,FObjID,NULL)AS 应付社会保障金辅助核算
,IIF(FCLsID=9,FObjID,NULL) AS 应付工资辅助核算
,FPreparer AS 制单人
,FChecker AS 复核人
,FPoster AS 记账人
,FAttachment 附件数
,IIF(FPosted=TRUE,‘已记账’,‘未记账’) 是否记账
FROM GLvch
WHERE FPdeleted=FALSE
ORDER BY FPeriod,FNum,,FEntryID;
说明:FCLsID列的值是参照GLCLs的核算项目类别代码来设置辅助核算列,将原凭证表一列存储多辅助核算类型修改成每列核算一种辅助类型,这种数据展现方式既适合AO2011辅助凭证表导入的特点,也符合审计人员查看数据的方式,从凭证表的处理方式看,该软件对往来核算进行了更明细的分类。
4、 辅助核算信息表处理语句
SELECT c.FCLSname AS 辅助类型
,o.FObjID AS 辅助编码
,o.FObjname AS 辅助名称
FROM GLCLs AS C
INNER JOIN GLObj AS O
ON C.FCLsID=O.FCLsID
WHERE o.FObjID <>‘*’
ORDER BY o.FCLsID;
说明:辅助核算信息表仅为一张表,存储了各个辅助类型的辅助项目信息,o.FObjID 为星号的是项目小计名称,应剔除。
5、 辅助余额表处理语句
SELECT c.FCLsname AS 辅助类型
,b.FObjID AS 辅助编码
,o.FObjname AS 辅助名称
,b.FAcctID AS 科目编码
,b.FBegBal AS 余额
FROM ((GLbal AS b
INNER JOIN GLCls AS c
ON b.FCLsID=c.FCLsID)
INNER JOIN GLobj AS o
ON b.FCLsID=o.FCLsID
AND b.FObjID =o.FObjID)
WHERE b.FCyID = 'RMB'
And b.FPeriod=1
And c.FCLsID >= 4
And b.FBegBa l<> 0;
说明:因ACCESS的特殊性,多表联结时每个联结需使用小括号分开,“b.FCyID = ‘RMB’”及“c.FCLsID >= 4”是从余额表中只取辅助核算项的本位币余额及存在的辅助核算项余额,避免冗余数据,大于4需要根据GLCLs表数据的特点自行判断。
上述语句,仅使用了查询的方式,在导入AO之前要生成相应的表,可在from语句之前使用into XXXX表即可。
从上述1-5语句处理中可以看出,辅助核算数据的采集主要包括:辅助余额、辅助核算凭证记录及辅助核算信息三个内容,其数据之间的逻辑关系是:辅助余额表、辅助凭证表中的所有辅助核算项目均引用辅助核算信息表中内容(即主外键约束),辅助核算余额表中相同科目的余额合计应与余额表同一科目余额相等。
三、 数据导入
根据上述步骤处理的结果,在导入AO2011过程中,应注意以下事项:
(一) 科目表、余额表及凭证表导入
1、 凭证主表与凭证明细表为同一张表;
2、 余额表只存储余额,借贷方向以正负性表示,正值表示借方,负值表示贷方。
(二) 辅助账采集
1、 辅助信息表以单表存储;
2、 辅助余额表以单表竖排方式存储,并以正负性区分借贷方向;
3、 辅助凭证表选择凭证表,并以单表横排方式存储,各辅助核算列应与辅助类型一一对应。
通过上述处理,导入AO2011后,在“账表分析→辅助账审查→按辅助项(或按会计科目)”即可以两种方式查看辅助核算信息。