ATM系统实现报告(VB)_银行atm系统开发报告

2020-02-28 其他范文 下载本文

ATM系统实现报告(VB)由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“银行atm系统开发报告”。

面向对象方法设计与实现报告

—ATM机系统

软件0802班

高晓亮

200807040203

一、概要

根据ATM的需求分析,该系统设计为2个子系统:用户系统、银行工作人员系统。其中用户系统主要使用户在ATM上完成一些基本操作,例如:存款、取款、转账、查询余额、修改账户密码等银行工作人员系统主要用来管理用户账户、ATM机、事务。其具体功能和界面及代码将在下文叙述。

说明:该系统主要代码是用vb编写,数据库使用的是单机数据库acce。

二、用户系统

A:主要界面介绍: 一)、待机界面:

1、功能:系统欢迎界面,点击模拟按钮开始模拟ATM机工作。

2、说明:由于没有找到合适的广告图片,所以待机默认先用蓝色背景代替。

3、界面文字动画代码如下:If Label5(0).Left > Me.ScaleWidth Then

Label5(0).Left = Me.Left100 End If

Label5(1).Move Label5(1).Left + 1204、界面截图如下:

二)、登陆界面:

1、功能:a、密码框设置只能输入6位

B、密码输入3次错误,将冻结该账户

C、银行卡号不存在、冻结或密码错误,均不能进入系统

2、说明:因为各银行卡号位数不太一样,银行卡号位数并未设置。

3、登陆确认按钮代码如下: Private Sub Command27_Click()If Not Text7.Text = “” And Not Text8.Text = “” Then Dim sql As String sql = “select * from 账户 where 银行卡号='” & Trim(Text7.Text)& “'”

Adodc1.RecordSource = sql

Adodc1.Refresh

If Adodc1.Recordset(“状态”)= “冻结” Then '判断该账户状态

MsgBox “该账户已冻结!”

Text7.Text = “”

Text8.Text = “”

Else

sql = “select * from 账户 where 银行卡号='” & Trim(Text7.Text)& “' and 密码=” & Trim(Text8.Text)& “”

Adodc1.RecordSource = sql

Adodc1.Refresh

If Adodc1.Recordset.EOF Then

MsgBox “密码错误!”, 48, “错误提示”

Text8.Text = “”

count1 = count1 + 1

If count1 >= 3 Then '三次输入错误冻结该账户

Adodc1.Refresh

sql = “select * from 账户 where 银行卡号='” & Trim(Text7.Text)& “'”

Adodc1.RecordSource = sql

Adodc1.Refresh

Adodc1.Recordset(“状态”)= “冻结”

Adodc1.Recordset.Update

MsgBox(“三次输入错误,该账户已被冻结”)

End If

Else

Label10.Visible = False

Label11.Visible = False

Text7.Visible = False

Text8.Visible = False

Command27.Visible = False Command28.Visible = False Command14.Visible = True Command15.Visible = True Command16.Visible = True Command17.Visible = True Command18.Visible = True Command19.Visible = True Command24.Visible = True Ynum = Text7.Text Adodc2.Refresh ’添加事务 Adodc2.Recordset.AddNew

Adodc2.Recordset(“银行卡号”)= Ynum

Adodc2.Recordset(“事务类型”)= “用户登录”

Adodc2.Recordset(“时间”)= Now()

Adodc2.Recordset(“事务描述”)= “用户完成登陆”

Adodc2.Recordset.Update

Adodc2.Refresh Text7.Text = “” Text8.Text = “” End If End If Else MsgBox(“信息不全!请确认”)End If End Sub4、界面截图如下:

三)、系统主界面

1、功能:ATM的主要功能陈列,供用户选择,其中包括存款、取款、转账、查询余额、修改密码、取卡、返回。当账户登录时,将在事务表中记录登录时间。

2、说明:由于所有按钮均只是用来调出对应的功能的界面,并没有实际功能,所以在此省略其按钮代码。

3、界面截图如下:

四)、存款界面

1、功能:a、只允许用户输入100的整数值

b、当文本框为空时报错

c、实现用户的存款功能

d、每存入一笔款,都将在事务表中记录该操作

2、存款代码如下:If Not Text12.Text = “” Then If Val(Text12.Text)Mod 100 = 0 Then Adodc1.Refresh Adodc1.Recordset(“余额”)= Adodc1.Recordset(“余额”)+ Val(Text12.Text)Adodc1.Recordset.Update Adodc1.Refresh Label15.Caption = “存款成功” ye = ye + Text12.Text Adodc2.Refresh Adodc2.Recordset.AddNew

Adodc2.Recordset(“银行卡号”)= Ynum

Adodc2.Recordset(“事务类型”)= “存款”

Adodc2.Recordset(“时间”)= Now()

Adodc2.Recordset(“事务描述”)= “用户存入” & Text12.Text & “元”

Adodc2.Recordset.Update

Adodc2.Refresh Text12.Text = “” Command33.Enabled = True Command32.Enabled = False Else MsgBox “请输入100的整数” End If Else Label15.Caption = “无款可存” End If End Sub3、界面截图如下:

四)、取款界面

1、功能:a、用户按相对应数值的按钮进行取款

b、每个账户每天取款数不能超过2500

c、账户余额不足时,报错

d、用户每取走一笔款额,都将在事务表中记录取走金额和时间

2、说明:由于不同数值按钮的代码很相似,所以这里仅给出100按钮的代码

3、存款代码如下:Private Sub Command20_Click()Adodc1.Refresh If Adodc1.Recordset(“余额”)>= 100 Then Adodc1.Refresh Adodc1.Recordset(“余额”)= Adodc1.Recordset(“余额”)100 Adodc2.Refresh Adodc2.Recordset.AddNew

Adodc2.Recordset(“银行卡号”)= Ynum

Adodc2.Recordset(“事务类型”)= “取款”

Adodc2.Recordset(“时间”)= Now()

Adodc2.Recordset(“事务描述”)= “用户取走100元”

Adodc2.Recordset.Update

Adodc2.Refresh Else Label15.Caption = “余额不足,取款失败” End If End Sub4、取款界面截图如下:

五)、查询余额界面

1、功能:实现用户查询对应账户的余额

2、查询余额代码如下:Private Sub Command17_Click()Command14.Visible = False Command15.Visible = False Command16.Visible = False Command17.Visible = False Command18.Visible = False Command19.Visible = False Label6.Visible = False Label7.Visible = False sql = “select 余额 from 账户

where 银行卡号= '” & Ynum & “'” Adodc1.RecordSource = sql Adodc1.Refresh Label8.Caption = Adodc1.Recordset.Fields(“余额”)Adodc2.Refresh Adodc2.Recordset.AddNew

Adodc2.Recordset(“银行卡号”)= Ynum

Adodc2.Recordset(“事务类型”)= “查询余额”

Adodc2.Recordset(“时间”)= Now()

Adodc2.Recordset(“事务描述”)= “查询余额”

Adodc2.Recordset.Update

Adodc2.Refresh Label9.Visible = True Label8.Visible = True End Sub3、查询余额界面截图如下:

六)、转账界面

1、功能:a、实现用户转账

b、需2次确认账户信息,若信息输入不全,账户余额不足,2次输入不一样,均不可完成转账

c、用户每转一笔账,均将在事务表中记录转账金额和时间

2、转账代码如下:Private Sub Command30_Click()If Not Text11.Text = “” And Not Text10.Text = “” And Not Text9.Text = “” Then If Text10.Text = Text9.Text Then Adodc1.Refresh If Adodc1.Recordset(“余额”)>= Val(Text11.Text)Then Adodc1.Refresh Adodc1.Recordset(“余额”)= Adodc1.Recordset(“余额”)Me.picLOAD.Width)/ 2 'Me.picLOAD.Top = Me.ScaleHeight / 2Me.picLOAD.Width)/ 2 'Me.picLOAD.Top = Me.ScaleHeight / 2Me.picLOAD.Width)/ 2 'Me.picLOAD.Top = Me.ScaleHeight / 2-Me.picLOAD.Height Me.picLOAD.Visible = True 'DoEvents '释放控制权

Me.ListView1.ListItems.Clear Dim addLIST As ListItem Dim As String Dim sql As String = App.Path + “datadata.mdb” Adodc1.ConnectionString = “Provider=Microsoft.Jet.OLEDB.4.0;Jet OLEDB:Database Paword=gxl;Persist Security Info=False;Data Source=” & Adodc1.CommandType = adCmdText sql = “select * from ATM” Adodc1.RecordSource = sql Adodc1.Refresh '连接数据库

Do While Not Adodc1.Recordset.EOF Set addLIST = ListView1.ListItems.Add(, , Adodc1.Recordset!ATM机编号, , i)addLIST.SubItems(1)= IIf(IsNull(Adodc1.Recordset.Fields(“状态”).Value), Adodc1.Recordset.Fields(“状态”).Value)addLIST.SubItems(2)= IIf(IsNull(Adodc1.Recordset.Fields(“余额”).Value), Adodc1.Recordset.Fields(“余额”).Value)Adodc1.Recordset.MoveNext Loop Me.picLOAD.Visible = False End Sub

Private Sub Toolbar1_ButtonClick(ByVal Button As MSComctlLib.Button)Select Case Button.Index

Case Is = 2 '

ZhZCfrm.Show 1

Case Is = 3

' ZHZXfrm.Show 1

Case Is = 4

Call addLIST End Select End Sub3、界面截图:

“”, “”,六)、单位信息界面

1、功能:显示单位信息

2、代码: Private Sub cmdBC_Click()'修改银行信息 Dim s As String If Not Text1(0).Text = “” And Not Text1(1).Text = “” And Not Text1(2).Text = “” And Not Text1(3).Text = “” And Not Text1(4).Text = “” Then

s = “update 银行信息 set 银行名称='” & Text1(0).Text & “',银行地址='” & Text1(1).Text & “',邮政编号='” & Text1(2).Text & “',负责人='” & Text1(3).Text & “', 联系电话='” & Text1(4).Text & “'”

Adodc1.RecordSource = s

MsgBox(“修改成功”)

Adodc1.Recordset.Update

Else

MsgBox “修改信息不全,请检查!”

End If End Sub

Private Sub Form_Load()Dim As String Dim sql As String = App.Path + “datadata.mdb” Adodc1.ConnectionString = “Provider=Microsoft.Jet.OLEDB.4.0;Jet OLEDB:Database Paword=gxl;Persist Security Info=False;Data Source=” & Adodc1.CommandType = adCmdText sql = “select * from 银行信息” Adodc1.RecordSource = sql Adodc1.Refresh '连接数据库 End Sub3、界面截图:

七)、下面给出数据备份还原的代码 Private Sub a14_Click()On Error GoTo ERR_line newname = App.Path & “datadata.mdb” datapath = App.Path & “backup” & Date & “ 备份卡.bak” FileCopy newname, datapath MsgBox “数据已备份到

” & datapath, 64, “提示” Exit Sub ERR_line: MsgBox “不能完成数据备份!”, 48, “运行错误” End Sub

Private Sub a15_Click()On Error GoTo ERR_line

Me.CommonDialog1.ShowOpen

snewname = Me.CommonDialog1.FileName

sdatapath = App.Path & “datadata.mdb”

If snewname “” Then

If MsgBox(“还原后将覆盖原有数据,确定还原吗?”, vbInformation + vbYesNo, “提示”)= vbYes Then

FileCopy snewname, sdatapath

MsgBox “数据已经成功还原!请重新登陆 ”, 48, “提示”

Unload Me

Formload.Show

Else

Exit Sub End If

End If Exit Sub

ERR_line: MsgBox “不能完成数据还原,请进入系统后未做任何操作时进行!”, 48, “运行错误” End Sub

四、数据库

本系统使用的是acce数据库。数据库密码为gxl。本系统共有5张表,分别为:ATM,事务,系统用户表,银行信息,账户。

下面给出数据库的相关截图。

1、表图:

2、ATM的设计视图

3、事务的设计视图

4、系统用户表的设计视图

5、银行信息的设计视图

6、账户的设计视图

《ATM系统实现报告(VB).docx》
将本文的Word文档下载,方便收藏和打印
推荐度:
ATM系统实现报告(VB)
点击下载文档
相关专题 银行atm系统开发报告 报告 系统实现 ATM 银行atm系统开发报告 报告 系统实现 ATM
[其他范文]相关推荐
    [其他范文]热门文章
      下载全文