模拟ATM 机系统软件的设计与开发毕业设计毕业论文

模拟ATM机系统软件的设计与开发

“IT开拓者3网络工作室”成立于2010年,是一个专业的计算机软件开发团队。“资源共享,信息互通”

需要更多相关设计资料和源代码加QQ:493703123

论文作者姓名:

申请学位专业:

申请学位类别:

指导教师姓名(职称):

论文提交日期:

模拟ATM 机系统软件的设计与开发

摘要

二十世纪末,随着金融服务的迅速发展,银行提款机已经发展成了各大银行金融服务战略中的重要一环,同时,银行提款机系统也经历了持续的更新换代,为广大用户提供了更加便捷和人性化的服务。模拟ATM系统就是对提款机操作系统在个人PC上及主流操作平台上的编程实现,其开发主要包括后台数据库的建立和维护以及前端应用程序的开发制作两个方面。对于前者要求建立起数据一致性和完整性强、数据安全性好的库。而对于后者则要求应用程序功能完备,易使用,界面友好等特点。本系统采用VB6.0,微软SQLSERVER2000,实现了用户身份的认证、取款、转帐、交易明细的查询等功能。分析并解决实现中遇到的若干问题,例如数据库资料如何实现更新,文本框的文字输出需要用到什么技术,如何实现中英文两种界面,用户服务功能如何实现等等。

关键词:模拟ATM银行系统;ADO控件;VB6.0;SQLSERVER2000

The design and development of ATM simulation system

Abstract

At the end of the 20th century, as the fast development of financial services, ATM machines have become the major part of the financial services strategy of every bank, bank teller system has undergone a continuous upgrading, supplied a more efficient and human services for the customers. ATM simulation system is the operating system of personal teller machines on the PC platform and the mainstream of programming. The development includes two aspects. The one is establishment and maintenance of background database, the other is development of front-end applications. The former requires establishing a consistency and integrity of strong data security for good. And for the latter demands the application functions are perfect, and easy-to-use and friendly interface, and other features. The ATM system describes the structure and function module of the entire layout of the system; The system realized the user authentication, withdrawals, transfers, details of the transaction inquiries, with the Visual Basic 6.0, Microsoft SQL SERVER2000; The system analyzed and resolved encountered umpteen issues in the realization, for example, how to realize the database updated, what’s the necessary technology is to realize the text area’s outputting, how to realize the English and Chinese interfaces ingeniously, and how to realize user services functions and so on.

Key words:ATM simulation system ; ADO; VB6.0 ;SQLSERVER2000

目录

论文总页数:26页

1 引言 (3)

2 开发模拟ATM系统的目的与意义 (3)

2.1ATM起源 (3)

2.2模拟ATM系统的意义 (3)

2.2.1 现实意义 (3)

2.2.2 学习意义 (4)

3 模拟ATM系统开发平台简介 (4)

3.1Windows下的Visual Basic 编程环境简介 (4)

3.1.1 面向对象的编程 (4)

3.1.2 Visual Basic 6.0特点介绍 (4)

3.1.3 生成帮助文件及版本信息 (6)

3.2SQLSERVER2000数据库简介 (7)

3.2.1 数据库的概念 (7)

3.2.2 微软SQLSERVER2000简介 (7)

3.3VB6.0与SQL数据库二者的连接(ADO) (7)

4 系统分析设计 (8)

4.1系统功能简介 (8)

4.2系统流程图 (9)

4.3系统开发主要应用技术 (9)

4.3.1 系统前台设计 (9)

4.3.2 后台数据库设计 (10)

5 系统功能的实现 (11)

5.1欢迎界面实现 (11)

5.2登陆的实现 (11)

5.3主界面实现 (14)

5.4查询余额功能的实现 (15)

5.5取款功能的实现 (16)

5.6转账功能的实现 (18)

5.7密码修改功能的实现 (21)

5.8查询交易明细功能的实现 (23)

5.9其余界面及函数 (23)

6 系统运行结果及工作总结 (25)

6.1系统测试及运行结果 (25)

6.2系统有待改进之处 (25)

6.3系统中遇到的问题及解决方法 (25)

结论.................................................... 错误!未定义书签。参考文献.................................................... 错误!未定义书签。致谢.................................................... 错误!未定义书签。声明.................................................... 错误!未定义书签。

1引言

随着时代的进步,社会生产力高速发展,新技术层出不穷,信息量急剧膨胀,整个人类社会已成为金融化信息化的社会,并开始朝着自动化智能化发展。以往人们去银行存款取款进行各种财务处理都必须通过柜台,随着越来越多的人们进入银行,使用银行的服务,使银行出现了工作效率低,顾客等待时间过长等等问题,既加大了银行工作人员的工作量,又使得人们享受银行服务的质量大幅度降低,所以银行交易的自动化智能化已经成为了一个不可逆转的趋势,而且必将成为各个银行今后发展的重点。

系统在前台采用了Visual Basic6.0这一功能全面,方便易学的语言作为开发语言,而后台则用功能强大的SQLSERVER2000数据库加以实现。

2开发模拟ATM系统的目的与意义

2.1ATM起源

现代意义上的ATM和POS系统始于二十世纪60年代末。最早的ATM机只是现钞发放机。1976年,英格兰的巴克莱银行安装了第一台现钞发放机。它并没有使用磁条卡,而是向用户发行纸券,用户将纸券插入机器,取出面值为10英镑的钞票。现代ATM机的想法来自于唐·维泽尔。1968年,当他在达拉斯银行排队等候的时候,萌发了这个想法。之后,他建议自己的雇主Docutel研制这种机器。研发中最重要的过程是将信息加密后存储在磁条上,然后将磁条加在塑料卡片上。研制成功后,Doctuel将ATM机卖给了纽约化学银行。1969年,化学银行把这个机器安装在洛克菲勒中心的办公室。虽然Docutel的ATM 机器使用了现代的磁条技术,但和今天的技术相比,还是显得比较原始。它只能用于取现钞,而且只能脱线使用。机器用特殊的方法打印下交易的纪录。直到20世纪70年代初,ATM技术才发展到我们今天的水平。起初,ATM主要用来处理信用卡,到了1972年,克里夫兰城市国家银行成功地引进了一种可在ATM机上使用的没有透支功能的卡片。如今,ATM机发展了更多功能,包括存钱、支票和储蓄账户之间相互转账,付款等等。同时,ATM实现了与计算机相连接,使客户可以实时地了解账户余额和支付情况。多台ATM机与银行主机相连,就逐渐形成了ATM网络。

2.2模拟ATM系统的意义

2.2.1现实意义

目前全球共有ATM超过120万台,平均每5分钟新增一台,连南极科考基地都安装了ATM,每年通过这些机器进行的金融交易超过400亿笔。从这些数据可以看出银行自动提款机已经进入了人们的日常生活,我们对自助式服务已

经不再陌生,并成为了人们日常生活习以为常的一部分,确实的给人们的生活带来了极大的便利。经过了近40年的发展,ATM也取得了长足的进步,从早期的纸券取钱,到现在的一卡在手,ATM机也从早期的简单机器,后期的系统集成式机器,发展成了如今的基于个人PC上操作系统下的智能化系统,拥有了更多更全更加方便的功能。随着个人PC的快速发展,越来越多的ATM机逐步替换为了PC机,也采用了基于WINDOWS XP系统下的操作系统,具有了更加人性化,更加友好的操作界面,也具有了更快的响应速度,这也使得各个银行之间的ATM操作平台有了逐步统一的可能,加强各银行的服务联系,使客户跨行进行ATM交易将更加便捷,资费也能够得到降低。本次开发的ATM系统就是基于WINXP系统下的具有友好界面的软件系统

2.2.2学习意义

开发一个软件系统,从需求分析到流程图的绘制及模块的分析,再到最后的数据库设计及代码的编写实现都要自己动手一步一步的来解决完成,这个过程对于自己在大学所学的知识是一个非常好的检验,对动手能力及思维能力也是一次非常好的锻炼。希望通过此次的研究学习,认清自己的不足之处,不断的去学习完善自己的理论知识,逐步提高动手能力,为以后的工作打下坚实的基础。

3模拟ATM系统开发平台简介

3.1Windows下的Visual Basic 编程环境简介

3.1.1面向对象的编程

微软公司的Visual Basic 6.0是Windows应用程序开发工具,使目前最为广泛的、易学易用的面向对象的开发工具。Visual Basic提供了大量的控件,这些控件可用于设计界面和实现各种功能,减少了编程人员的工作量,也简化了界面设计过程,从而有效的提高了应用程序的运行效率和可靠性。故而,实现本系统VB是一个相对较好的选择。

3.1.2Visual Basic 6.0特点介绍

Vsual Basic6.0是一种可视化的、面对对象和条用事件驱动方式的结构化高级程序设计,可用于开发Windows环境下的种类应用程序。它简单易学、效率高,且功能强大,可以与Windows的专业开发工具SDK相媲美,而且程序开发人员不必具有C/C++编程基础。在Visual Basic环境下,利用事件驱动的编程机制、新颖易用的可视化设计工具,使用Windows内部的应用程序接口(API)函数,以及动态链接库(DLL)、动态数据交换(DDE)、对象的链接与嵌入(OLE)、开放式数据访问(ODBC)等技术,可以高效、快速地开发出Windows环境下功能强大、图形界面丰富的应用软件系统。总的来说,Visual Basic具有以下特点:

(1)可视化编程:

用传统程序设计语言设计程序时,都是通过编写程序代码来设计用户界面,在设计过程中看不到界面的实际显示效果,必须编译后运行程序才能观察。如果对界面的效果不满意,还要回到程序中修改。有时候,这种编程-编译-修改的操作可能要反复多次,大大影响了软件开发效率。Visual Basic提供了可视化设计工具,把Windows界面设计的复杂性“封装”起来,开发人员不必为界面设计而编写大量程序代码。只需要按设计要求的屏幕布局,用系统提供的工具,在屏幕上画出各种“部件”,即图形对象,并设置这些图形对象的属性。Visual Basic自动产生界面设计代码,程序设计人员只需要编写实现程序功能的那部分代码,从而可以大大提高程序设计的效率。

(2)面向对象的程序设计

Visual Basic应用面向对象的程序设计方法(OOP),把程序和数据封装起来作为一个对象,并为每个对象赋予应有的属性,使对象成为实在的东西。在设计对象时,不必编写建立和描述每个对象的程序代码,而是用工具画在界面上,Visual Basic自动生成对象的程序代码并封装起来。每个对象以图形方式显示在界面上,都是可视的。

(3)结构化程序设计语言

Visual Basic是在BASIC语言的基础上发展起来的,具有高级程序设计语言的语句结构,接近于自然语言和人类的逻辑思维方式。Visual Basic语句简单易懂,其编辑器支持彩色代码,可自动进行语法错误检查,同时具有功能强大且使用灵活的调试器和编译器。

Visual Basic是解释型语言,在输入代码的同时,解释系统将高级语言分解翻译成计算机可以识别的机器指令,并判断每个语句的语法错误。在设计Visual Basic程序的过程中,随时可以运行程序,而在整个程序设计好之后,可以编译生成可执行文件(.EXE),脱离Visual Basic环境,直接在Windows环境下运行。

(4)事件驱动编程机制

Visual Basic通过事件来执行对象的操作。一个对象可能会产生多个事件,每个事件都可以通过一段程序来响应。在用Visual Basic设计大型应用软件时,不必建立具有明显开始和结束的程序,而是编写若干个微小的子程序,即过程。这些过程分别面向不同的对象,由用户操作引发某个事件来驱动完成某种特定的功能,或者由事件驱动程序调用通用过程来执行指定的操作,这样可以方便编程人员,提高效率。

(5)访问数据库

Visual Basic具有强大的数据库管理功能,利用数据控件和数据库管理窗

口,可以直接建立或处理Microsoft Access格式的数据库,并提供了强大的数据存储和检索功能。同时,Visual Basic还能直接编辑和访问其他外部数据库,如dBASE,FoxPro,Paradox等,这些数据库格式都可以用Visual Basic编辑和处理。

Visual Basic提供开放式数据连接,即ODBC功能,可通过直接访问或建立连接的方式使用并操作后台大型网络数据库,如SQL Server,Oracle等。在应用程序中,可以使用结构化查询语言SQL数据标准,直接访问服务器上的数据库,并提供了简单的面向对象的库操作指令和多用户数据库访问的加锁机制和网络数据库的SQL的编程技术,为单机上运行的数据库提供了SQL网络接口,以便在分布式环境中快速而有效地实现客户/服务器(client/server)方案。

(6)动态数据交换(DDE)

利用动态数据交换(Dynamic Data Exchange)技术,可以把一种应用程序中的数据动态地链接到另一种应用程序中,使两种完全不同的应用程序建立起一条动态数据链路。当原始数据变化时,可以自动更新链接的数据。Visual Basic 提供了动态数据交换的编程技术,可以在应用程序中与其他Windows应用程序建立动态数据交换,在不同的应用程序之间进行通信。

(7)对象的链接与嵌入(OLE)

对象的链接与嵌入(OLE)将每个应用程序都看做是一个对象(object),将不同的对象链接(link)起来,再嵌入(embed)某个应用程序中,从而可以得到具有声音、影像、图像、动画、文字等各种信息的集合式的文件。OLE技术是Microsoft 公司对象技术的战略,它把多个应用程序合为一体,将每个应用程序看做是一个对象进行链接和嵌入,是一种应用程序一体化的技术。利用OLE技术,可以方便地建立复合式文档(compound document),这种文档由来自多个不同应用程序的对象组成,文档中的每个对象都与原来的应用程序相联系,并可执行与原来应用程序完全相同的操作。

(8)动态链接库(DLL)

Visual Basic是一种高级程序设计语言,不具备低级语言的功能,对访问机器硬件的操作不太容易实现。但它可以通过动态链接库技术将C/C++或汇编语言编写的程序加入到Visual Basic应用程序中,可以像调用内部函数一样调用其他语言编写的函数。此外,通过动态链接库,还可以调用Windows应用程序接口(API)函数,实现SDK所具有的功能。

3.1.3生成帮助文件及版本信息

专业水平的软件通常都带有联机帮助功能。无论写出来的程序是要给大量的用户使用,还是仅仅局限于公司内部有限的使用者,我们都应该为用户提供

详细的、易于理解的联机帮助文档。微软的Help Workshop4.0 是一套独立于Visual Basic 的用来协助我们创建、运行于32位Windows 操作系统下的帮助文件的工具。使用它我们可以为我们编写的应用程序生成一组帮助文件。为了是程序显得更具有专业风格,首先可以在其中加入通常的应用程序信息。这些信息包括公司名称、版本号、修订号以及其他类似信息。Visual Basic允许你使用APP对象来保存这些信息,APP对象是一个预定义对象,不需要在程序中创建它。APP对象的大多数属性被应用程序用来提供常规的信息,通过使用这些APP提供的属性,可以在应用程序和用户之间交流重要信息,在项目属性框中可以设置它的属性。

3.2SQLSERVER2000数据库简介

3.2.1数据库的概念

数据库是一种存储数据并对数据进行操作的工具。数据库的作用在于组织和表达信息,简而言之,数据库就是信息的集合。计算机的数据库可以分为两类:非关系数据库(flat-file)和关系数据库(relational)。关系数据库中包含了多个数据表的信息,数据库含有各个不同部分的术语,象记录、域等。

3.2.2微软SQLSERVER2000简介

SQL Server 2000 是Microsoft 公司推出的SQL Server 数据库管理系统的最新版本该版本继承了SQL Server 7.0 版本的优点同时又比它增加了许多更先进的功能具有使用方便可伸缩性好与相关软件集成程度高等优点可跨越从运行Microsoft Windows 98 的膝上型电脑到运行Microsoft Windows 2000 的大型多处理器的服务器等多种平台使用

ADO是访问由微软推出的最新.功能最强,且容易使用的数据访问实例(OLEDB)的应用程序接口. 我们就是通过它以及创建Active X数据对象3.3VB6.0与SQL数据库二者的连接(ADO)

ADO Recordset来访问SQLSEVER2000上的ODBC数据源.使用ADO控件可以方便的在VB6中访问ODBC数据库,但是通过直接放置ADODS控件来获得ADO的数据连接比较麻烦,可以在VB工程中创建一个公共数据模块,将ADO控件的初始化、建立连接、关闭连接等操作都写到函数中,这样就可以在工程的其他模块中共享调用这个ADO连接。一次完整的ADO调用操作分为如下几个步骤:

(1)打开ADO到数据库的连接,初始化ADO RECORDSET集。

(2)通过写入SQL语句执行查询并返回查询结果RECORDSET集;或者可以通过写入SQL语句执行相应数据库操作。

(3)释放RECORDSET集,关闭数据库连接。需要注意的是,每个动态创建

的ADO同时只能被一个过程调用,如果需要进行多表并行操作,可能需要在公共数据模块中建立多个动态ADO。在本次设计中,由于我只设计了一个主模块,所以直接将ADO控件的初始化、建立连接、关闭连接等操作都写到了最先调用的身份认证函数中,就已经可以满足我对数据库的访问操作.

通过ADO控件使Visual Basic程序与SQLSERVER数据库之间架起了一座桥梁,我们可以很方便的通过修改程序中ADODC的参数,并通过SQL语句来指向数据库的不同部分,从而方便的对数据库进行各种操作.

4系统分析设计

4.1系统功能简介

经过对比真实的银行提款机系统,本系统实现以下内容:

1.可以选择中文和英文两种语言服务

2身份认证

3.密码修改

4.取款.

5.转帐.

6.查询余额.

7.查询交易明细

4.2系统流程图

模拟ATM 机系统软件的设计与开发毕业设计毕业论文

图1系统流程图

4.3系统开发主要应用技术

WINDOWS XP是时下最流行的电脑操作系统稳定性安全性都非常不错,而随着ATM提款机逐步采用个人电脑,以及性能的升级,WINXP也有了可能成为这些提款机的操作系统,所以本次系统也在WINXP下进行开发。由于需要开发出前台客户友好界面及后台数据库系统,而对于前台只要能满足其界面开发需要即可,所以我采用了相对简单易用并且功能强大的VB6.0,后台数据库则采用了与之相连方便且功能同样强大的SQLSERVER2000。采用以上两个开发软件完全能够满足ATM模拟系统的开发需要。

4.3.1系统前台设计

系统主要是由前台(客户操作界面)与后台(数据库)两个部分组成。前台部分整个代码程序采用一个主模块,在里面定义程序全局变量,把各种功能函数写入其中,每个界面制作一个独立窗体,在各个窗体代码中来调用主模块中的各个函数来,来实现相应功能。界面部分由于08年奥运会的临近,系统采用了几副有关北京08奥运会的卡通图片,让界面整体突出一种奥运气氛。通过可爱的卡通动物也实现了友好亲切的操作氛围。

4.3.2后台数据库设计

经过充分考虑,认为系统并不需要非常复杂的数据库系统就能够达到模拟ATM系统的效果,所以建立了一个名为XQQ\ATM的SQL服务器,创建了名为USER的数据库,用户登陆名为sa密码为空,并在ODBC数据源中将USER 数据库添加进去。其中实际上只运用到两个表,一个用户信息表和一个用户操作表。

表1 用户信息表

模拟ATM 机系统软件的设计与开发毕业设计毕业论文

用户信息表(如表1)用以存放用户的卡号,密码,存款金额等信息,由于该系统是为了模拟运用,故安全要求不高,所以密码采用了明文方式存放,便于使用查看。本次模拟系统并不具有创建新用户的功能,用户信息表上的内容都是为了模拟而手动添加的样本用户。

表2 用户操作表

模拟ATM 机系统软件的设计与开发毕业设计毕业论文

用户操作表(如表3)则用来记录用户在ATM机上所使用的服务,它包括了所有用户对ATM的操作信息,包括时间,操作类型,金额,转帐卡号,成功与否等等。用户查询明细的功能就是通过搜集检索这张表来实现。同时管理人员也

可以从这张表上很方便的查阅用户使用情况。当然,真实的银行ATM系统,其后台的数据库系统肯定是十分庞大的一个系统,对保密性的要求也非常的高,在这次的模拟中当然不可能达到那样的要求。

5系统功能的实现

5.1欢迎界面实现

模拟ATM 机系统软件的设计与开发毕业设计毕业论文

图2 欢迎界面

在欢迎界面(如图2)我们可以自由的选择两种语言,分别为我们最常用的中文和英语,在这里主模块中定义了一个非常重要的INT整型变量i,通过i的值来决定所选择的服务。任意点击一种服务都将进入登陆界面。

Private Sub Command1_Click()

i = 2 当点中文按钮时,i的值就被赋为了2,在后面的操作中,i的值就将始终为2,用以区别所选语言服务

Unload Form1

Form2.Show

End Sub

Private Sub Command2_Click()

i = 1 点ENGLISH按钮时 i的值赋1

Unload Form1

Form2.Show

End Sub

5.2登陆的实现

在登陆界面有两种语言可以为用户服务,一是中文,而是英文。选择两种语言的功能和界面背景实际上都是完全一致的,只是语言文字不同。如图3为选择中文的界面:

模拟ATM 机系统软件的设计与开发毕业设计毕业论文

如果点击的是ENGLISH, 则登陆界面为图4

模拟ATM 机系统软件的设计与开发毕业设计毕业论文

图4 登陆界面(英文)

这里的两个界面并非通过两个窗体单独实现而是共用一个窗体,通过判断i的值,对label中的CAPTION进行相应的中文和英文赋值。后面的操作界面同样也是采用这种方法,就不再做英文的界面介绍。这里把默认的语言选择为中文直接在窗体编辑菜单中对CAPTION进行了相应赋值。如果为英文则需执行下面的语句,此后的每个界面语言确定及实现都是通过采取这个方法Private Sub Form_Load()

If i = 1 Then //判断i的值如果为1则进行英文赋值

Label1.Caption = "Do you want to continue?Please choose!"

Command1.Caption = "other service"

Command2.Caption = "Cancel"

End If

End Sub

在窗体中我们首先来判断用户输入的卡号和密码是否符合我们的规定。卡号为8位密码为6位

Private Sub Command1_Click() //当我们点下确认按钮时

If i = 2 Then

If Len(Text1.Text) <> 8 Or Len(Text2.Text) <> 6 Then // 比较卡号是否为8位及密码是否为6位

Form3.Show

http://m.wendangku.net/doc/37261900cc175527072208db.htmlbel1.Caption = "没有正确输入卡号或密码"

Text1.Text = ""

Text2.Text = ""

Else

Call Checkuser //这里是调用主模块中的身份验证函数,在后面的窗体实现中都是通过

CALL语句来直接调用相应函数的

End If

End If //以下为用户选择英语的代码,和选择中文时是一样的,在后面的介绍中将不在引用英语的代码

If i = 1 Then

If Len(Text1.Text) <> 8 Or Len(Text2.Text) <> 6 Then

Form3.Show

http://m.wendangku.net/doc/37261900cc175527072208db.htmlbel1.Caption = "Please Input Correct Cardnumber Or Password"

Text1.Text = ""

Text2.Text = ""

Else

Call Checkuser

End If

End If

End Sub

在主模块MODEL1中身份验证函数代码为

Public Sub Checkuser() 定义Checkuser函数

Dim strr As String

Set CON = New ADODB.Connection

strr = "Provider=SQLOLEDB.1;Password= ;Persist Security

Info=True;User ID=sa;Initial Catalog=user;Data Source=XQQ\ATM"// 这段语句采用了动态连接数据库的方法与数据库USER进行连接,采用的是SQL OLEDB 应用接口。

CON.Open strr

u = Form2.Text1.Text 把卡号赋给u

str = "select 密码 from 用户信息 where 卡号='" & u & "'" //SQL 数据库查询语句,根据卡号把所查询的密码数据放入str中

Set RS = New ADODB.Recordset //设置RS为新的Recordset对象RS.Open str, CON, adOpenDynamic, adLockPessimistic

If RS.EOF = True Then //当前记录指针无效,说明不存在这个用户

If i = 2 Then

Form3.Show

http://m.wendangku.net/doc/37261900cc175527072208db.htmlbel1.Caption = " 没有此用户,请检查并重新输入!"

u = "" // u重新设置为空

接下来就是比较从所输卡号中取出的密码与用户输入的密码进行比较

If Trim(RS.Fields(0)) = Trim(Form2.Text2.Text) Then '//检验密码是否相同

Form4.Show //密码相同转入服务界面

RS.Close

Unload Form2

在窗体中直接通过程序代码调用在模块中的Checkuser函数即可,后面的界面都是采用这种方法,都不再进行仔细说明。

5.3主界面实现

模拟ATM 机系统软件的设计与开发毕业设计毕业论文

图 5 服务界面

在主界面中(如图5)有5个服务按钮设置了一个整型变量j,在点击各种服务的同时,J也被赋予了不同的数值,用以后面记录用户操作信息,写入数据库。

Private Sub Command1_Click()

If Option1(0).Value = True Then

j = 1

Unload Form4

Form5.Show

Else

If Option1(1).Value = True Then

j = 2

Unload Form4

Form6.Show

Else

If Option1(2).Value = True Then

j = 3

Unload Form4

Form7.Show

Else

If Option1(4).Value = True Then

J = 5

Unload Form4

Form12.Show

Else

If Option1(3).Value = True Then

j = 4

Unload Form4

Call Query

Form8.Show

http://m.wendangku.net/doc/37261900cc175527072208db.htmlbel2.Caption = u

5.4查询余额功能的实现

查询功能的实现相对来说就非常简单了,直接连接数据库,搜索到相应的数据后输出到文本框中即可(如图6)

在主模块中的查询函数:

Public Sub Query()

Dim str2 As String

str2 = "select * from 用户信息 where 卡号='" & u & "'"

Set RS = New ADODB.Recordset

模拟ATM 机系统软件的设计与开发毕业设计毕业论文

图6 查询界面

RS.Open str2, CON, adOpenDynamic, adLockPessimistic

http://m.wendangku.net/doc/37261900cc175527072208db.htmlbel5.Caption = RS.Fields("金额")

5.5取款功能的实现

模拟ATM 机系统软件的设计与开发毕业设计毕业论文

图7 取款界面

取款函数相对于其他函数就相对复杂一点,因为有很多情况需要判断,列如只能取50与100的整数,就需要对50取模,还需要判断所取金额是否大于卡上的余额,余额不足那也是没法成功取款的。用户取了一定数量的钱后还需要把新的数据重新写入数据库。

Public Public Sub TakeMoney()

相关推荐
相关主题
热门推荐