You are on page 1of 37

国家开放大学

学士学位论文

题目:计算机辅助稽核系统

分部:浙江分部

学习中心:丽水开放大学

专业:计算机科学与技术

入学时间:

学号:

姓名:

指导教师:

论文完成日期: 年 月
学位论文原创性声明

本人郑重声明:所呈交的学位论文,是本人在导师指导下,进行研

究工作所取得的成果。除文中已经注明引用的内容外,本学位论文的研

究成果不包含任何他人创作的、已公开发表或者没有公开发表的作品的

内容。对本论文所涉及的研究工作做出贡献的其他个人和集体,均已在

文中以明确方式标明。本学位论文原创性声明的法律责任由本人承担。

作者签名: 日期: 年 月 日

学位论文版权使用授权声明

本人完全了解国家开放大学关于收集、保存、使用学位论文的规定,

同意如下各项内容:按照学校要求提交学位论文的印刷本和电子版本;

学校有权保存学位论文的印刷本和电子版,并采用影印、缩印、扫描、

数字化或其他手段保存论文;学校有权提供目录检索以及提供本学位论

文全文或者部分的阅览服务,以及出版学位论文;学校有权按有关规定

向国家有关部门或者机构送交论文的复印件和电子版;在不以营利为目

的的前提下,学校可以适当复制论文的部分或全部内容用于学术活动。

作者签名: 日期: 年 月 日
目 录
摘 要 ........................................................................................................................... 1
第1章 计算机辅助稽核系统开发的目的和意义 ....................................................... 2
第2章 计算机辅助稽核系统的需求分析 ................................................................... 3
2.1总体功能需求.................................................................................................................... 3
2.2系统的总体构架................................................................................................................ 3
2.3系统的安全性考虑............................................................................................................ 3
2.4具体系统功能描述............................................................................................................ 4
第3章 计算机辅助稽核系统的分析、设计 ............................................................... 6
3.1模块划分 ........................................................................................................................... 6
3.2数据库设计 ..................................................................................................................... 10
第4章 编程环境的介绍 ............................................................................................. 10
4.1 Visual Basic 6.0............................................................................................................... 10
4.2 Microsoft Access 简介 ................................................................................................... 11
4.3 用ADO方式访问数据库 ............................................................................................... 12
第5章 计算机辅助稽核系统的具体实现 ................................................................. 12
5.1登录管理功能模块的实现.............................................................................................. 12
5.2系统管理功能模块的实现.............................................................................................. 16
5.3数据采集功能模块的实现.............................................................................................. 23
5.4 其它功能模块的实现.................................................................................................... 30
第6章 测试及性能分析 ........................................................................................... 32
第7章 结束语 ............................................................................................................. 33
致 谢 ......................................................................................................................... 33
参考文献..................................................................................................................... 34

1
摘 要

中国银行内部审计(以下称稽核)是指专门行使监督职能,对各支银行和
部分非银行金融机构所从事的业务活动及相关的财务活动,以会计核算资料为
主要依据,以国家的金融政策法规为标准,进行真实性、合法性、安全性和效
益性的检查,以促进银行事业健康发展的一种经济监督形式。
目前,各分(支)行业务特别是前台业务完全由计算机完成,数据处理已
经电算化,银行稽核工作的相关内容也发生了深刻的变化。而现在的稽核思维、
手段和方法仍改变不大,还是以传统的现场稽核为主,手工操作较多,靠人力
翻账表传票、看档案,没有一套完善的科学的稽核检查系统,不能做到适时监
督、科学稽核,特别是对电脑系统的稽核更是薄弱,这就造成稽核监控面窄,
检查时隔长,人力物力浪费和稽核的滞后性,同时也在一定程度上损害了稽核
人员在各级被稽核单位心中的形象。
为了改善这种状况,银行部门一方面要提高稽核人员的政策思想水平和业
务素质,另外一方面更要在稽核工作中充分利用现代信息技术,改进审计方法,
扩大审计业务范围,用现代化高科技来改善和提高稽核效率、降低稽核人员的
劳动强度和主观错误偏差,保证银行事业的健康发展。因此银行有关领导提出
了要研究开发非现场稽核的有关电脑系统,千方百计加大非现场稽核的力度,
进一步扩大辐射面。适当减少现场稽核工作量,解决“大海捞针”和重复劳动
的问题。要加大稽核的科技投入,真正发挥科技在稽核工作中的作用。
非现场稽核是现代信息处理和传递方式下发展起来的一种电子稽核方式,
通过对稽核对象相关业务电子数据及资料的采集、整理和分析,利用经济学的
统计原理,按照稽核工作的具体规范和流程,发现业务经营活动中可能存在的
违规、违法问题和疑点,实现快速、全面的辅助监督和监管。

1
第 1 章 计算机辅助稽核系统开发的目的和意义

银行传统的内部审计(以下称稽核)是以现场稽核和手工操作为主展开的,
可是随着银行电子化水平的不断提高,许多新业务的出现使内部稽核出现了许
多空白点。尤其在各分(支)行的前台业务目前已经完全由计算机完成,数据
处理的电算化使得银行稽核工作的相关内容也发生了深刻的变化。而传统的现
场稽核则存在着手工操作较多,需要靠人力翻账表传票、看档案,没有形成一
套完善的科学的稽核检查系统,不能做到适时监督、科学稽核,特别是对电脑
系统的稽核更是薄弱的问题,这就造成稽核监控面窄,检查时隔长,人力物力
浪费和稽核的滞后性的现象。
为了能够更好的配合稽核工作的顺利完成,我们设计了一套基于非现场稽
核方式的计算机辅助稽核系统。这套系统目前主要针对银行会计业务和零售业
务。稽核人员通过它就能够对电子报表中的业务原始数据进行量化处理,分析
管辖机构存在的问题,从而为稽核项目组制定项目、稽核方案等提供参考依据,
切实提高稽核效率与质量,降低稽核成本,增加现场稽核的客观性和针对性。
系统首先在常规稽核和行长离任稽核方面进行初步尝试。

2
第 2 章 计算机辅助稽核系统的需求分析

2.1 总体功能需求
面对当前各项稽核任务繁重,该系统的主要目的是减轻稽核人员收集审计
证据和有关计算的手工劳动强度。采集银行会计业务和零售业务数据,通过量
化方式,分析管辖机构存在的问题,为稽核项目组制定项目、稽核方案等提供
参考资料,对机构经营信息进行分析,确定稽核重点,减少现场稽核的主观性
和盲目性,切实提高稽核质量和监督水平,提高稽核人员工作效率以取得更好
的审计效果。

2.2 系统的总体构架
本系统软件根据不同的需要即可以运行在客户端也可以运行在服务器端。
运行在服务器端的软件主要完成柜员基本信息的管理、数据采集、固定指标处
理四个主要功能,其中数据采集和固定指标处理所产生的数据都放在稽核数据
仓库中,供前端的零售业务分析、会计业务分析和信贷业务分析模块使用,系
统的大体构架如下图所示:

图 2.1 系统总体架构
2.3 系统的安全性考虑
作为一个稽核辅助软件,系统安全性的重要性是毋庸置疑的,在本系
统中中我们主要通过一下几个方面来提高系统的安全性:
3
1. 柜员的登录管理:
每个前台操作员都有自己的一个用户 ID;
2. 柜员的操作权限设置:
根据每个操作员具体的职务和工作需要,系统管理员应该为他们设置
不同的权限,每个操作员都只能操作有权限的模块。
3. 数据的安全性设置:
对于操作员的一些基本信息,比如用户 ID、操作权限以及数据存放路
径等,我们都用明文加密的方式放在一个文本文件中。
4. 操作员登录日志:
我们记录了操作员的每次登录时间、退出时间,以便在出现系统的数
据泄漏时可以做到有据可查。
5. 数据库的安全性:
为了防止在外界环境(比如计算机死机等)引起的数据丢失和损坏,
系统提供了数据库的备份和还原功能。
6. 其它方面:
由于目前的系统只是一个尝试,所以我们使用 Access 数据库作为后台
数据库(系统成熟后将采用 Sql Server 数据库),所以对重要数据加
密后存盘以及数据库登录密码等设置我们暂时都未考虑。
2.4 具体系统功能描述
2.4.1 柜员管理
1. 制作用户 ID,赋予新开用户相关操作权限;
2. 修改密码,柜员可以自行修改密码;
3. 对用户使用情况进行记录,提供查询
4. 根据操作人员的工作职责调整用户权限。
2.4.2 零售业务系统监控
1. 从零售业务系统中采集交易流水、授权、外汇买卖交易流水、开销
户记录。
2. 根据稽核要素进行交易流水追踪,如根据柜员号、客户姓名、帐号、
金额及交易码等要素进行复合追踪,提供输出功能;
3. 监控外汇买卖异常交易,如搜索某机构当日超限额取汇帐户清单,
4
当日外汇买卖交易笔数超出限额的帐户明细等,提供输出功能;
4. 监控交易流水中大额交易情况,提供输出功能;
5. 列示某一时间段的冲正交易配对清单,提供输出功能;
6. 列示定期储蓄中超前起息等异常交易信息,提供输出功能。
2.4.3 会计业务系统监控
1. 采集新一代会计系统中提供的交易流水、帐户余额表及日计表数据;
2. 科目(核算码)和指标查询及趋势分析,在人工判断的基础上,提
供稽核线索;
3. 提供帐户追踪,根据客户号、帐号、核算码、柜员号、交易套号、
金额及时间段等要素追踪帐户交易信息,提供输出功能;
4. 根据稽核需要,进行指标自定义及计算,实现某机构时点或一定时
期内有关指标的统计工作。
5. 提供查询功能,对日计表表、余额表及指标运行结果表进行查询。
可以根据用户自定义报表格式,生成相应报表。
6. 经常性核查项目统计,如对开帐户的核对、异常交易扫描等。
2.4.4 帮助
1. 自动升级:系统功能是在不断增加和改善之中,为方便今后各级稽
核部门的使用方便,及时更新系统,必须提供自动升级功能。
2. 帮助:主要提供系统的联机操作手册。
3. 关于:显示系统版本及开发单位简介等信息。

5
第 3 章 计算机辅助稽核系统的分析、设计

3.1 模块划分
根据需求分析,我们将系统划分为:登录管理、系统管理、数据采集、会
计数据分析、数据追踪、数据计算、数据查询、其他等八个模块。

计算机辅助稽核系统

登 系 数 会 数 数 数 其
录 统 据 计 据 据 据 他
管 管 采 数 追 计 查
理 理 集 据 踪 算 询

图 3.1 系统模块分解图
具体细分为:
1. 登录管理模块

登录管理

制 修 修 用
作 改 改 户
用 用 用 访
户 户 户 问
I 密 权 记
D 码 限 录

图 3.2 登录管理模块

6
2. 系统管理模块

系统管理

机 缺 创 数 数
构 省 建 据 据
维 参 数 备 恢
护 数 据 份 复
设 库

图 3.3 系统管理模块
3. 数据采集模块

数据采集

会计 零售

日 余 交 牌 交 授 外 开
计 额 易 价 易 权 汇 销
表 表 流 表 流 记 买 户
采 采 水 采 水 录 卖 采
集 集 采 集 采 采 采 集
集 集 集 集

图 3.4 数据采集模块

7
4. 会计数据分析模块

会计数据分析

科 内 上 会
目 外 下 计
或 部 级 交
指 帐 对 易
标 户 开 合
趋 趋 帐 法
势 势 户 性
分 分 核 检
析 析 对 查

图 3.5 会计数据分析模块
5. 数据追踪模块
数据追踪

会计交易复 零售交易 外汇买卖交


合追踪 复合追踪 易追踪

图 3.6 数据追踪模块
6. 数据计算模块

数据计算

会计 零售

指 指 科 超限额 超限额 冲帐
标 标 目 交易流 外汇买 交易
定 计 维 水筛选 卖筛选 配对
义 算 护

图 3.7 数据计算模块
8
7. 数据查询模块

数据查询

会计 零售

日 余 客 指 报 开 授
计 额 户 标 表 销 权
表 表 号 结 定 户 记
查 查 查 果 义 查 录
询 询 询 查 打 询 查
询 印 询

图 3.8 数据查询模块
8. 其他模块

其他

操作手册 自动升级 关于

图 3.9 其他模块

其中我主要负责完成登录管理、系统管理、数据采集和其他四大模块的设
计与代码的编写任务。

9
3.2 数据库设计
数据库设计如下:
表 3.1 数据库设计
库名 下属表 主要功能
Public Account 记录所有银行科目/核算码
Audit 上下级行对开帐户设置

Class 机构维护
Curre 货币维护
Pgaudit 异常交易定义
Price 牌价表
Telnet 登录记录
Bal Balance 会计系统帐户余额表

Daily Daily 会计系统日计表


Trans History 会计系统交易流水
Rbsanoc Ocrpt 零售系统开销户表
Rbspfx Pfx 零售系统外汇买卖流水
Rbssup Suprpt 零售系统授权表
Rbstrans tran 零售系统交易流水

第 4 章 编程环境的介绍
4.1 Visual Basic 6.0
Visual Basic 6.0 是目前应用最为广泛的、易学易用的面向对象、所见即
所得的开发工具。VB 本身就带有一个供程序开发人员使用的非常完美的开发环
境,它自身提供的各类的控件以及所见即所得的特性为用户的界面设计提供了
很大方便同时也使其成为创建高性能的企业应用程序及基于 Web 的应用程序的
最有效工具。集成进来的可视化数据库工具和一个 RAD(快速应用开发) 环境
能提高生产效率,而自然代码编译则能生成运行速度更快的应用程序。
Visual Basic 6.0 有较强的数据库处理功能,它能对多种数据库进行读写
操作。它主要通过两种方式访问数据库一种是通过调用接口对象(API)来访问,
另外一种是直接使用数据控件法来访问。在应用程序中我们往往使用接口对象
10
(API)来访问,具体的访问方式常见的有:
ADO (ActiveDataObjects):是 DAO/RDO 的后继产物,它提供访问各种数据
类型的连接机制,通过 ODBC 的方法同数据库接口。
DAO:数据访问对象(DataAccessObjects):是一种面向对象的界面接口。
通过 DAO/Jet 功能可以访问 ISAM 数据库,使用 DAO/ODBCDirect 功能可以实现
远程 RDO 功能。
0DBC:开放式的数据库连接(OpenDatabaseConnectivity):是一种公认的
关系数据源的接口界面。它快而轻并且提供统一接口的界面,ODBC 对任何数据
源都未作优化。
RDO:远程数据对象(RemoteDataObjects):远程数据对象和集合为使用代码
来创建和操作一个远程 ODBC 数据库系统的各个部件提供了一个框架,是专为访
问远程 ODBC 关系数据源而设计的。
4.2 Microsoft Access 简介
Microsoft Access 是一种小型的关系数据库管理系统,是 Office 办公套件
中一个极为重要的组成部分。数据库由一系列表组成,表又由一系列行和列组
成,每一行是一个记录,每一列是一个字段,每个字段有一个字段名,字段名
在一个表中不能重复。刚开始时微软公司是将 Access 单独作为一个产品进行销
售的,后来微软发现如果将 Access 捆绑在 OFFICE 中一起发售,将带来更加可
观的利润,于是第一次将 Access 捆绑到 OFFICE97 中,成为 OFFICE 套件中的一
个重要成员。现在它已经成为 Office 办公套件中不可缺少的部件了。自从 1992
年开始销售以来,Access 已经卖出了超过 6000 万份,已经成为世界上最流行
的桌面数据库管理系统。后来微软公司通过大量地改进,将 Access 的新版本功
能变得更加强大,它不仅是一个数据库,而且它具有强大的数据管理功能,它
可以方便地利用各种数据源,生成窗体(表单),查询,报表和应用程序等,因
此不管是处理公司的客户订单数据;管理自己的个人通讯录;还是大量科研数
据的记录和处理,人们都可以利用它来解决大量数据的管理工作。
Access 数据库的基本功能:建立数据库、数据库操作、数据通讯。
Access 数据库是关系型数据库,具有表的特性。在 Access 数据库中包括表、
查询、窗体、报表、页、宏和模块七个对象,这些对象用于收集、存储和操作
各种不同信息,这些对象统一组织在以.mdb 为后缀的数据库文件中。
11
4.3 用 ADO 方式访问数据库
前面已提到过 Visual Basic 提供的数据访问接口有 3 种,由于 ADO 是最简
单灵活,所以我们设计时采用 ADO 方式访问 ACCESS 数据库。在实际编程时,使
用 ADO 一个典型的存取数据的步骤为:
1. 连接数据源
利用 Connection 对象 open 方法可以创建一个数据源的连接。
2. 打开记录集
3. 使用记录集
包括记录集的添加、修改、删除、查询等操作。
4. 断开连接
在记录集(RecortSet)操作完毕后要关闭 RecortSet 对象;而在应用程序
结束之前,应该释放分配给 ADO 对象的资源,即关闭 Connection 对象。

第 5 章 计算机辅助稽核系统的具体实现
5.1 登录管理功能模块的实现
该模块主要实现的功能有:为新用户制作登录 Id、当前操作用户的密码修
改、权限设置以及浏览用户的访问记录等。
5.1.1 制作用户 ID
出于系统的安全性考虑,我们必须让用户登录后再进入系统,并且每个操
作员都只能在自己的操作权限内进行操作,制作用户 ID 模块正是完成这样的功
能:为新用户制作 ID、并分配该用户的权限以及取得用户本地或者局域网内的
数据存放路径。
每个新添加的用户记录信息是通过明文加密的方式保存在“Usr.id”文本
文件中,制作好了之后只要把这个文件发给前台操作员,让他们放在固定的
“d:\Adas”目录下即可用新制作的用户 ID 启动 Adas 系统。
该模块的业务流程图如下:

12
开始
输入信息包括:用户名
称、密码、数据存放地

Y 输入信息正确? N

形成权限串(2位) 提示错误信息

输入文件名称

加密ID记录信息

写入usr.id文件

结束

图 5.1 用户 ID 业务流程图
其中的加密算法采用了二进制运行的方式,主要算法如下:
Private Function encrypt(str_old As String, encryptyesOrno As
Boolean) As String '加密、解密字付串
Static strLen, i As Integer
Static temp_str As String

strLen = Len(str_old)
temp_str = ""
If encryptyesOrno Then '加密
For i = 1 To strLen
If Asc(Mid(str_old, i, 1)) < 0 Then
temp_str = temp_str & Format(Asc(Mid(str_old, i, 1))
+ key, "00000")
Else
temp_str = temp_str & Format(Asc(Mid(str_old, i, 1))
+ key, "000000")
End If
13
Next i
Else
For i = 1 To strLen Step ASC_len
temp_str = temp_str & Chr(Val(Mid(str_old, i, ASC_len))
- key)
Next i
End If
encrypt = temp_str

End Function
5.1.2 修改用户密码
该模块主要完成对当前操作员的密码修改操作,为了加强安全性,我们规
定系统用户必须输入密码并且建议密码最小长度为 6 位,密码修改将在再次登
录后有效。
该模块的业务流程图如下:

开始

密码是否为空?

N Y

密码是否输入一
Y N
致?

加密ID记录信息 提示错误信息

写入usr.id文件

结束

图 5.2 用户密码修改业务流程图
5.1.3 修改用户权限功能
该模块主要完成对用户权限的重新设置,同样的,每个经过修改的用户记
14
录信息是通过明文加密的方式保存在“Usr.id”文本文件中,制作好了之后只
要把这个文件发给前台操作员即可。
该模块的业务流程图如下:

开始 输入信息包括:用户名
称、密码、数据存放地

初始化要修改的用户信息

Y 输入信息正确? N

形成权限串(2位) 提示错误信息

输入文件名称

加密ID记录信息

写入usr.id文件

结束

图 5.3 用户权限修改业务流程图
其中的加密算法采用了二进制运行的方式,主要算法如 5.1.1 所示。
5.1.4 用户访问记录模块功能
该模块主要实现对系统登录、运行情况的跟踪,操作员每次登录系统时都
记录该用户的登录时间、退出系统时间,从而在出现系统数据的泄露时可以做
到有据可查。如同在系统的安全性分析时所述,本系统暂时不对登录日志表
(telnet)的数据进行加密后保存。
此窗口使用 Microsoft Hierarchical FlexGrid (MSHFlexGrid) 控件和
Adodc 控件关联对操作员的登录日志表(telnet)数据以列表的形式进行显示,供
用户浏览。主要代码如下:
Set MSHFlexGrid1.DataSource = Me.Adodc1

15
Me.Adodc1.ConnectionString = CntStr & DataPath0 & "public.mdb;"
Me.Adodc1.RecordSource = "select tn_id as 用户号, tn_start_time
as 用户进入系统时间,tn_end_time as 用户退出系统时间 from telnet where
tn_t is not null"
Adodc1.Refresh

MSHFlexGrid1.ColWidth(0) = 1000
MSHFlexGrid1.ColWidth(1) = 2500
MSHFlexGrid1.ColWidth(2) = 2500
5.2 系统管理功能模块的实现
5.2.1 机构维护功能
该模块主要完成机构信息的维护,包括:机构信息的添加、删除、查询和
打印等操作。
机构的主要信息有:旧机构号为 3 位,新机构部门号为 5 位(3 位新机构号
+2 位部门号),联行号为 4 位(用于上下级对开帐户核对)。如舟山分行本级旧
机构号为“850”,新机构部门号则输入“85060”。网点号为 6 位,可以从电子
报表中 RBS 零售业务系统中查询到。
1. 机构信息的添加功能的流程图如下:

16
开始 输入信息包括:机构
号、机构名称、网点
号、联行号
信息输入是否完
提示错误信息
整?

是否有相同的记
提示错误信息
录存在?

保存记录信息

重新设置控件信息

结束

图 5.4 机构信息添加流程图
2. 机构信息的修改功能的流程图如下:

开始

初始化机构信息 输入信息包括:机构
号、机构名称、网点
号、联行号

信息输入是否完
提示错误信息
整?

是否有相同的记
提示错误信息
录存在?

保存记录信息

重新设置控件信息

结束

图 5.5 机构信息添加流程图
3. 机构信息的检索功能的主要代码有:
17
rs.Find Findfield & "='" & findStr & "'"
If rs.EOF Then
MsgBox findStr & " 该 机 构 号 未 找 到 !", vbInformation +
vbOKOnly
findRs = False
Else
Me.classId = IIf(rs!cls_id <> "", rs!cls_id, " ")
Me.Classname = IIf(rs!cls_name <> "", rs!cls_name, " ")
Me.classno = IIf(rs!cls_no <> "", rs!cls_no, " ")
Me.classwd = IIf(rs!cls_wd <> "", rs!cls_wd, " ")
Me.classono = IIf(rs!cls_ono <> "", rs!cls_ono, " ")
findRs = True
End If

4. 机构信息的打印功能具体实现
由于在 Visual Basic 6.0 要直接实现表格的打印功能是比较困难的,而用
水晶报表等外部控件有软件成本太高以及普通操作员不习惯等问题,所以我们
使用了在 Visual Basic 6.0 调用 VBA 来操作 Excel 的办法,将检索出来的所有
符合条件的机构记录信息存放在 Excel 表中,用户可以根据自己的需要进行打
印设置以及报表的打印
该功能的主要代码如下:
Dim exbook As New Excel.Workbook
Dim exsheet As New Excel.Worksheet
Dim ex As New Excel.Application
Dim i As Integer

On Error Resume Next

Set ex = CreateObject("excel.application")
Set exbook = ex.Workbooks.Add
18
'Set exsheet = ex.ActiveWorkbook.Sheets(1)
Set exsheet = exbook.ActiveSheet
MousePointer = vbHourglass
'Set exsheet = exfile.Add
exsheet.Cells(1, 2) = "所有机构一览表"
exsheet.Cells(3, 1) = "打印时间"
exsheet.Cells(3, 2) = Format(Now, "yyyy/mm/dd")
exsheet.Cells(4, 1) = "省轄联行号"
exsheet.Cells(4, 2) = "新机构号"
exsheet.Cells(4, 3) = "机构名称"
exsheet.Cells(4, 4) = "网点号"
exsheet.Cells(4, 5) = "全国联行号"
i = 5
rs.MoveFirst
Do Until rs.EOF
exsheet.Cells(i, 1) = rs!cls_id
exsheet.Cells(i, 2) = rs!cls_no
exsheet.Cells(i, 3) = rs!cls_name
exsheet.Cells(i, 4) = rs!cls_wd
exsheet.Cells(i, 5) = rs!cls_ono
rs.MoveNext
i = i + 1
Loop
If Dir(reportResultPath & "机构情况一览表.xls") <> "" Then
Kill reportResultPath & "机构情况一览表.xls"
End If
exsheet.Cells.Select
ex.Selection.Columns.AutoFit
exsheet.SaveAs reportResultPath & "机构情况一览表"
ex.Visible = True
19
Set exsheet = Nothing
Set exbook = Nothing
Set ex = Nothing

5.2.2 缺省参数设置功能
该功能主要实现在该模块(窗体)中输入的参数(比如:当前机构号及网
点号,开始日期、结束日期等)都将保存在全局变量以及注册表中。这样就可
以方便其他模块中该类参数的输入,以及下次运行时的默认参数设置。

5.2.3 创建数据库功能
对某机构进行数据采集前,必须为该机构根据年度创建数据库即根据具体
的选择条件和网点号将“init”文件夹下面的空数据库拷贝到用户的“data”
文件夹下面(命名规则为:表名+机构号(3 位)+年份(4 位)+网点号(6 位))。其
中,可能涉及到的报表有:日计表、指标结果表、余额表、交易流水表等,具
体如下:
1. 日计表:daily.mdb,如果是本级日计表则生成 daily 表;如果是全
辖日计表则生成 dailya 表;
2. 余额表:bal.mdb
3. 交易流水表:trans.mdb
4. 指标结果表:result.mdb,如果是本级日计表则生成 result 表;如
果是全辖日计表则生成 resulta 表;

具体的流程图如下:

20
开始
输入信息包括:机构
号、网点号、年度信息

信息输入是否完 N 提示错误信息
整?

该机构号是否存
N 提示错误信息
在?

根据选择拷贝数据表

该网点号是否存
N 提示错误信息
在?

根据选择拷贝数据表

结束

图 5.6 数据库创建流程图

5.2.4 数据备份功能
数据库的备份功能实现了根据不同的机构以及年份进行数据库备份的功
能。这样就能确保在外界环境(比如计算机死机等)引起的数据丢失或者人为
破坏情况下的数据保护。
具体的流程图如下:

21
开始
输入信息包括:机构
号、年度信息等

信息输入是否完 N 提示错误信息
整?

该机构号是否存
N 提示错误信息
在?

根据选择拷贝数据表

该网点号是否存
N 提示错误信息
在?

根据选择将备份数据表

结束

图 5.7 数据备份流程图
5.2.5 数据恢复功能
数据库的还原是数据库备份的一个“反操作”即将数据恢复到原先备份时
的状态,其主要实现方式就是根据机构号和年度将备份数据表拷贝到“data”
文件夹下。具体的流程图如下:

开始
输入信息包括:机构
号、年度信息等

信息输入是否完 N 提示错误信息
整?

该机构号是否存
N 提示错误信息
在?

是否有备份数据
N 提示错误信息
表?

根据选择还原数据表

结束

图 5.8 数据恢复流程图

22
5.3 数据采集功能模块的实现
5.3.1 会计-日计表采集功能
该功能可以供用户根据机构号、采集起止日期、部门号以及是否为机构号
整合数据的输入内容从文本文件中读取记录信息,并且依次将原币日计表,各
外币折美元日计表、各货币折人民币日计表中的记录添加到数据表(daily .mdb)
中。
其中,Trn_no 字段根据货币类型命名为:核算码(4 位)+货币号(三位)。
货币号如下:
998:各外币折美元
999:各货币折人民币

该模块的流程图如下:

开始
输入信息包括:机构号、
时间段、部门号等

信息输入是否完 N 提示错误信息
整?

该机构号是否存
N 提示错误信息
在?

循环读取文件名称到数组

该年度数据表是
N 提示先创建数据库
否存在?

将文本数据拷贝到Daily表

结束

图 5.9 数据采集流程图
5.3.2 会计-余额表采集
23
该功能主要实现根据不同的机构号、采集起止时间从余额表格式文本中读
取记录信息,并生成一个余额表文件 Balxxxyyyy.mdb(xxx 为旧机构号,yyyy 为
年份)数据库, 供一般用户实际检查时使用。
该模块的流程图如下:

开始
输入信息包括:机构号、
时间段、部门号等

信息输入是否完 N 提示错误信息
整?

该机构号是否存
N 提示错误信息
在?

循环读取文件名称到数组

该年度数据表是
N 提示先创建数据库
否存在?

将文本数据拷到balance表

结束

图 5.10 余额表采集流程图
5.3.3 会计-交易流水采集
该功能主要实现根据不同的机构号、采集起止时间从易流水格式文本中读
取记录信息,并生成一个交易流水文件 transxxxyyyy.mdb(xxx 为旧机构号,yyyy
为年份)数据库, 供一般用户实际检查时使用。
该模块的流程图如下:

24
开始
输入信息包括:机构号、
时间段、部门号等

信息输入是否完 N 提示错误信息
整?

该机构号是否存
N 提示错误信息
在?

循环读取文件名称到数组

该年度数据表是
N 提示先创建数据库
否存在?

将文本数据拷到history表

结束

图 5.11 会计交易流水采集流程图
5.3.4 会计-牌价表采集
该模块主要完成牌价信息的维护,包括:牌价信息的添加、删除、查询和
打印等操作。
牌价的主要信息有:货币号为 3 位(例美元“014”),牌价日期为 8 位
(YYYYMMDD 格式),牌价。
(1)、牌价信息的添加功能的流程图如下:

25
开始
输入信息包括:货币号、
牌价日期、牌价

信息输入是否完
提示错误信息
整?

该日期货币牌价
提示错误信息
是否存在?

保存记录信息

重新设置控件信息

结束

图 5.12 牌价表采集流程图
(2)、牌价信息的修改功能的流程图如下:

开始

显示牌价信息
输入信息包括:货币号、
牌价日期、牌价

信息输入是否完
提示错误信息
整?

该日期货币牌价
提示错误信息
是否存在?

保存记录信息

重新设置控件信息

结束

图 5.13 牌价信息修改流程图
(3)、牌价信息的删除功能:
26
5.3.5 零售-交易流水采集
该功能主要实现根据不同的机构号、采集起止时间从易流水格式文本中读
取记录信息,并生成一个交易流水文件 rtranxxxxxxyyyy.mdb(xxx 为旧机构
号,yyyy 为年份)数据库, 供一般用户实际检查时使用。
该模块的流程图如下:

开始
输入信息包括:机构号、
时间段、部门号等

信息输入是否完 N 提示错误信息
整?

该机构号是否存
N 提示错误信息
在?

循环读取文件名称到数组

该年度数据表是
N 提示先创建数据库
否存在?

将文本数据拷到tran表

结束

图 5.14 零售交易流水采集流程图
5.3.6 零售-授权记录采集
该功能主要实现根据不同的网点、采集起止时间从 RBS 零售业务系统之
“ 0001” 报 表 格 式 文 本 中 读 取 记 录 信 息 , 并 生 成 一 个 授 权 记 录 采 集 文 件
rsupxxxxxxyyyy.mdb(xxx 为旧机构号,yyyy 为年份)数据库, 供一般用户实际检
查时使用。
该模块的流程图如下:

27
开始
输入信息包括:机构号、
时间段、部门号等

信息输入是否完 N 提示错误信息
整?

该机构号是否存
N 提示错误信息
在?

循环读取文件名称到数组

该年度数据表是
N 提示先创建数据库
否存在?

将文本数据拷到rsup表

结束

图 5.15 授权记录采集流程图
5.3.8 零售-外汇买卖采集
该功能主要实现根据不同的网点、采集起止时间从 RBS 零售业务系统之
“ 0201” 报 表 格 式 文 本 中 读 取 记 录 信 息 , 并 生 成 一 个 外 汇 买 卖 采 集 文 件
rpfxxxxxxxyyyy.mdb(xxx 为旧机构号,yyyy 为年份)数据库, 供一般用户实际检
查时使用。
该模块的流程图如下:

28
开始
输入信息包括:机构号、
时间段、部门号等

信息输入是否完 N 提示错误信息
整?

该机构号是否存
N 提示错误信息
在?

循环读取文件名称到数组

该年度数据表是
N 提示先创建数据库
否存在?

将文本数据拷到rpf表

结束

图 5.16 外汇买卖采集流程图
5.3.9 零售-开销户采集
该功能主要实现根据不同的网点、采集起止时间从 RBS 零售业务系统之
“ 0022” 报 表 格 式 文 本 中 读 取 记 录 信 息 , 并 生 成 一 个 开 销 户 采 集 文 件
ranocxxxxxxyyyy.mdb(xxx 为旧机构号,yyyy 为年份)数据库, 供一般用户实际
检查时使用。
该模块的流程图如下:

29
开始
输入信息包括:机构号、
时间段、部门号等

信息输入是否完 N 提示错误信息
整?

该机构号是否存
N 提示错误信息
在?

循环读取文件名称到数组

该年度数据表是
N 提示先创建数据库
否存在?

将文本数据拷到ranoc表

结束

图 5.17 开销户采集流程图
5.4 其它功能模块的实现
5.4.1 操作说明模块的实现
作为一个完整的系统,联机文档是其中不可缺少的部分也是相当重要的部
分。好的文档能够使用户快速了解并准确的使用系统的各项功能。减少误操作,
这对用户和开发人员都有很多的好处。所以在开发本系统时,我们除了在程序
中加入大量注释外,还编制了系统操作手册、数据采集说明,系统简介等文档
资料。

5.4.2 自动升级功能的实现
该模块主要实现分布在各部门以及外地的支行、分行的前端操作员能够通
过网络自动完成软件的更新。
在自动升级过程中,我们通过比较本地与服务器上的 gxver.ini 文件的各
升级文件版本来决定要不要下载更新,以及文件下载后是否需要进行注册或者
30
运行等信息。
为了能在以后别的软件中不需要再次编写自动升级模块代码,我们把它作
为一个单独的可执行文件来开发,以后的软件中只要直接调用该 Exe 文件可以
实现软件的自动升级。

5.4.3 关于功能的实现
该窗体主要提供了目前软件的版本、版权等信息,同时用户可以看到有本
机有关的软硬件的系统信息。
该模块是通过 Visual Basic 自带的窗体添加向导功能自动生成的。

31
第6章 测试及性能分析
对理工专业的毕业设计论文,测试数据是性能评价的基础,必须真实可靠。
通过测试数据,论文工作的成效可一目了然。根据课题的要求,可以在实验室
环境下测试,也可以在工作现场测试。
在论文中,要将测试时的环境和条件列出,因为任何测试数据都与测试环
境和条件相关,不说明测试条件的数据是不可比的,因此也是无意义的。
测试一般包括功能测试和性能测试。功能测试是将课题完成的计算机软硬
件系统(子系统)或应用系统所要求达到的功能逐一进行测试。性能测试一般
是在系统(子系统)的运行状态下,记录实例运行的数据,然后,归纳和计算
这些数据,以此来分析系统运行的性能。
测试实例可以自己设计编写,也可以选择学科领域内公认的、有一定权威
性的测试实例或测试集。原则是通过所选择(设计)的实例的运行,既能准确
反映系统运行的功能和性能,与同类系统又有可比性。只有这样,论文最后为
自己工作所做的结论才有说服力。

32
第 7 章 结束语
经过一个多月的设计和开发,银行计算机辅助稽核系统基本开发完毕。
其功能基本符合用户需求。但是由于设计时间较短,所以该系统还有许多不足
之处,比如后台数据库我们采用了 Assess,当以后处理大数据量的时候可能会
影响速度,同时数据的安全性也不够高;还有由于没有专业的美工设计师,使
得应用程序暂时没有比较合适的图标。这些都有待进一步改善。

致 谢
主要表达对导师和其他有关教师和同学的感谢之意。对此,仍要实事求是,
过分的颂扬反而会带来消极影响。

33
参考文献
8.1 《商业银行审计》,东北财经大学出版社 ,2001 年 2 月版
8.2《中国内部审计》杂志,中国内部审计协会主办,2003 年 1 月至 2004
年 2 月版
8.3《计算机审计数据采集和分析技术》,清华大学出版社,2003 年 6 月版
8.4《计算机审计案例选》,清华大学出版社,2003 年 9 月版
8.5《基于项目的软件工程 (美)Evelyn Stiller 著
面向对象研究方法》 Cathie Leblanc
机械工业出版社,2002 年 6 月版
8.6《Visual Basic 编程指南》,田文胜等著 ,清华大学出版社,2003 年 2
月版
8.7《Visual Basic 6.0 中文版程序员指南》Microsoft Corporation 著
8.8《Visual Basic 开发答疑 300 问》,李廷文等著,人民邮电出版社,2003
年 6 月版

34

You might also like