当前位置: 首页 /  审计信息化 /  数据采集与转换 / 

用友GRP-U8 R10政务管理软件AO数据采集方法

来源:衡阳市审计局 发布时间:2016-09-23 00:00:00

               一、采集背景介绍
  近日,在审计过程中发现,一些行政事业单位使用的财务软件《用友GRPR9 V9.7(收支分类改革升级版)》升级到用友GRP-U8R10),由于相关数据表的改动,使得AO2011的诸多数据采集方法都不能完整完成数据采集。本文通过SQL语句对数据进行整理,实现了用友GRP-U8R10)的完整AO采集。
  二、采集步骤
  第一步:获取财务软件SQL数据库备份
  通过用友GRP-U8R10)提供的后台数据管理工具,生成SQL数据库备份数据(.bat文件)。
  第二步:SQL2008R2还原备份数据
  打开SQL Server Management Studio,右键点击数据库->点击“还原数据库“->选择“设备源”->点击->“添加”,将上一步备份的SQL数据库备份文件添加进来,完成数据库数据还原。
  第三步:整理数据
  在SQL中执行下列语句整理数据:

  科目代码表整理(gl_kmxx)
     alter table gl_kmxx add kmdm_ok varchar(20)
        update gl_kmxx set kmdm_ok = rtrim(kmdm)
  --2013为采集数据年度,根据实际情况修改
   select kmdm_ok,kmmc into kmb from gl_kmxx where kjnd=2013
  科目余额表整理(gl_yeb
  --生成新的余额表
      select kmdm,ncj,ncd 
     into yeb 
      from GL_Yeb
      where kjnd = 2013 and yeblx = 'B' --B表示余额表类型,2013为会计年度   

  --二级科目余额汇总
      insert into yeb 
      select left(kmdm,5) ,case when (sum(ncj)-SUM(ncd)>0) then (sum(ncj)-SUM(ncd)) else 0 end ,case when (sum(ncj)-SUM(ncd)<0) then (sum(ncd)-SUM(ncj)) else 0 end  
     from yeb

    where LEN(kmdm) = 7  --如果有三级科目,则汇总到对应的二级科目,否则不汇总。

     group by left(kmdm,5)
  --一级科目汇总

      insert into yeb 

      select left(kmdm,3) ,case when (sum(ncj)-SUM(ncd)>0) then (sum(ncj)-SUM(ncd)) else 0 end ,case when (sum(ncj)-SUM(ncd)<0) then (sum(ncd)-SUM(ncj)) else 0 end  
      from yeb

    where LEN(kmdm) = 5   --如果有二级科目,则汇总到对应的二级科目,否则不汇总。

   group by left(kmdm,3)

  凭证表整理(gl_pzml,gl_pznr)

  select a.pzh, a.pzrq, b.zy, b.kmdm, b.jdbz, b.je into pzb from gl_pzml a, gl_pznr b where a.kjqj=b.kjqj and a.pzh=b.pzh and a.kjqj like '2013%'  --2013为采集数据年度,根据实际情况修改
  update pzb set pzrq=cast(pzrq as datetime);

  第四步:导出需要采集数据表
  右键点击还原的数据库名-> “任务”->点击“导出数据”,将上一步整理的三张数据表科目代码表(kmb)、科目余额表(yeb)、凭证表(pzb)导出到Excel表格中。

  第五步:AO采集数据并帐表重建