巧用Case……End快速生成科目借贷差额

16.06.2014  13:28

  审计人员面对庞大的凭证数据,采用传统的方法计算科目借贷差额,费时费力,还容易产生错误,而使用Case……End语句能够准确、快速生成各科目余额,提高了工作效率。以下是具体的审计思路和步骤:

  一、整理科目表、凭证表。保留科目表的科目代码、科目名称,凭证表的科目代码、科目名称、借方金额、贷方金额字段。  。

二、整理后的科目表、凭证表导入数据库中。(一)在凭证表中添加一个科目类型字段。语句为:Alter table  凭证表  add    科目类型  varchar(10)。(二)赋值科目类型。语句为:update  凭证表  set  科目类型=b.科目类型  from  科目表  a join  凭证表  b on a.科目代码=b.科目代码  。

三、编写一条Case……End语句即可迅速生成各科目余额。语句为:Select  科目名称,借贷差额  =

Case

When  科目类型=’资产’    Then sum(借方金额)-sum(贷方金额)

When  科目类型=’负债’    Then sum(贷方金额) - sum(借方金额)

When  科目类型=’权益’    Then sum(贷方金额) - sum(借方金额)

End    from  凭证表  group by 科目名称,科目类型。