巧用CASE函数处理不规则会计科目

作 者:
郑军 

作者简介:
郑军,巴中市审计局

原文出处:
现代审计

内容提要:


期刊代号:V3
分类名称:审计文摘
复印期号:2011 年 07 期

关 键 词:

字号:

      在AO应用中,发现一个被审计单位会计科目不按规则编码,科目长度不规则,二级科目长度有7位、8位、9位,三级科目长度有10位、11位、12位。因此,不能直接导入财务数据,需对会计科目表进行处理后才能导入AO系统。采集语句如下:

      select faccountid as科目内码,fname as科目名称,ffullname as科目全称,

      case

      when flevel=1 then fnumber

      when len (fnumber)=7 and flevel=2 then left (fnumber,4) +'00'+right (fnumber,2)

      when len (fnumber)=8 and flevel=2 then lefi(fnumber,4)+'0'+right(fnumber,3)

      when len (fnumber)=9 and flevel=2 then left(fnumber,4)+right(fnumber,4)

      when lan(fnumber)=11 and flevel=3 then

      left (fnumber,4)+'0',+substrlng(fnumber,6,3)+'00'+right(fnumber,2)

      when len (fnumber)=12 and flevel=3 then

      left (fnumber,4)+'0'+substrlng (fnumber,6,3)+'0'+right(fnumber,3)

      when len (fnumber)=10 and flevel=3 then

      left (fnumbcr,4)+'00'+substrlng (fnumber,6,2)+'00'+right(fnumber,2)

      end as科目编码into会汁科目表

      fromt_account

      上面生成规则的会计科日表,直接就可导入AO系统了。

相关文章: