资源描述
摘 要…………………………………………………………………………1
Abstract………………………………………………………………………2
第一章 引言…………………………………………………………………4
1.1 课题背景……………………………………………………………………4
1.2 系统简介……………………………………………………………………5
第二章 系统的分析……………………………………………………………6
2.1 系统开发的目标和思想……………………………………………………6
2.2 系统的可行性分析…………………………………………………………8
第三章 系统的设计……………………………………………………………18
3.1 系统的功能结构设计………………………………………………………18
3.2 系统的数据库设计
3.3 界面设计与代码设计……………………………………………………………………23
…………………………………………………………24
结束语………………………………………………………………………………46
致谢…………………………………………………………………………………47
参考文献…………………………………………………
摘 要
车辆管理系统用计算机管理机动车辆的档案,运营管理以及驾驶员信息的一种计算机应用技术的创新,在计算机还未普及之前车辆管理都是由工作人员手工抄写的方式来操作的.现在一般的车辆管理都是采用计算机作为工具的实用的计算机智能化车辆管理程序来帮助工作人员进行更有效的机动车辆管理。车辆管理系统是典型的信息管理系统(MIS),其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。对于前者要求建立起数据一致性和完整性强、数据安全性好的库。而对于后者则要求应用程序功能完备,易使用等特点。
经过分析,我们使用 MICROSOFT公司的 VISUAL BASIC开发工具,利用其提供的各种面向对象的开发工具,尤其是数据窗口这一能方便而简洁操纵数据库的智能化对象,首先在短时间内建立系统应用原型,然后,对初始原型系统进行需求迭代,不断修正和改进,直到形成用户满意的可行系统。
关键字:评语管理,MIS,visual basic ,数据库
Abstract
Vehicle Management System Computer used motor vehicles archives management, operation and management of a driver information computer applications innovation, Management has not yet popular in the computer before the vehicles are from the staff manual transcription to operate. Now the general management of the vehicles are used as a tool for computer computer intelligent vehicle management procedures to help staff more effective management of motor vehicles. Vehicle management system is a typical management information system (MIS), including its main development background to the establishment and maintenance of the database and front-end application development 2. The request for the establishment of strong data consistency and integrity, good for the security of the data. For the latter request applications functions, such as easy to use features.
After analysis, we use Microsoft visual basic development tool companies, the use of its various object-oriented development tools, especially data that can be easily accessible and concise window manipulation database intelligent objects, the first prototype application system in a short time and then, computation of the initial prototype system needs to constantly revise and improve until the formation of a viable system of user satisfaction.
keyword : comments management MIS,visual basic database
第一章 引言
1.1 课题背景
车辆管理系统用计算机管理机动车辆的档案,运营管理以及驾驶员信息的一种计算机应用技术的创新,在计算机还未普及之前车辆管理都是由工作人员手工抄写的方式来操作的.现在一般的车辆管理都是采用计算机作为工具的实用的计算机智能化车辆管理程序来帮助工作人员进行更有效的机动车辆管理。车辆管理系统是典型的信息管理系统(MIS),其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。对于前者要求建立起数据一致性和完整性强、数据安全性好的库。而对于后者则要求应用程序功能完备,易使用等特点。
1.2 系统简介
本系统主要服务于车管所工作人员管理辖区机动车辆,以及驾驶员相关信息,本系统由以下几大功能模块构成.
一:车辆档案管理(车辆档案建立,车辆档案查询,车辆档案删除,车辆档案变更查询等.)
二:车辆运营管理(车辆运营表,车辆运营查询,清空车辆运营表)
三:车辆管理(车辆维修管理,车辆报废管理等)
四:驾驶员管理(驾驶员档案管理,驾驶员档案查询等)
五:系统维护(系统备份,系统还原,系统检查)
第二章 系统的分析
2.1系统开发的目标和思想
本系统主要服务于机动车管理人员的日常工作.利用本系统可以方便的监控管理本区域的驾驶员信息.在此基础上力求软件界面人性化以及操作简单,程序具有健壮性等.
2.2 系统的可行性分析
技术上:本系统采用visual basic 6.0与微软的access作为数据库,技术上开发难度一般.
经济上:本系统服务于车辆管理人员,提高了车管工作者办事效率,节省了开支.所以具有经济上的可行性.
社会上:本系统同时也方便了广大驾驶员.所以具有社会可行性.
第三章 系统的设计
3.1 系统的功能结构设计
程序登陆
主界面
车辆档案管理
车辆运盈
管理
车辆管理
驾驶员管理
系统维护
3.2 系统的数据库设计
1.车辆报废表:
2.车辆档案表:
3.车辆事故表:
4:车辆违规表:
5:车辆维修表:
6:车辆变更表:
7:车辆运营表:
8:驾驶员档案
9:奖惩表:
10:零件表:
11:用户表:
3.3 界面设计与代码设计
1:登陆界面设计
登陆界面代码设计:
Private Sub Combo1_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
Command1.SetFocus
End If
End Sub
Private Sub Command1_Click()
Set adors = adoCon.Execute("select * from 用户表 where 用户姓名=ltrim('" & Text1 & "') and 密码=ltrim('" & Text2 & "') and 用户类型=ltrim('" & Combo1.Text & "')")
If adors.EOF Then
MsgBox "您输入的信息有误,请重新输入!", , "系统提示"
Text1 = ""
Text2 = ""
Text1.SetFocus
i = i + 1
If i = 3 Then
MsgBox "对不起,您已无权使用本系统!", , "系统提示"
Unload Me
End If
Else
Select Case adors!用户类型
Case "管理员"
Case "普通用户"
MDIForm1.mnuyydelete.Enabled = False
MDIForm1.mnusyscsh.Enabled = False
MDIForm1.mnuglyset.Enabled = False
End Select
MDIForm1.Show
adors.Close
Unload Me
End If
End Sub
Private Sub Command2_Click()
Unload Me
'adoRs.Close
End Sub
Private Sub Form_Load()
Combo1.ListIndex = 0
End Sub
Private Sub Text1_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
Text2.SetFocus
End If
End Sub
Private Sub Text2_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
Combo1.SetFocus
End If
End Sub
2车辆报废查询:
代码分析:
Private Sub ckcp_Click()
If ckcp.Value Then
cmcp.Enabled = True
Else
cmcp.Enabled = False
End If
End Sub
Private Sub cktime_Click()
If cktime.Value Then
dtStart.Enabled = True
dtEnd.Enabled = True
Else
dtStart.Enabled = False
dtEnd.Enabled = False
End If
End Sub
Private Sub ckyy_Click()
If ckyy.Value Then
cmyy.Enabled = True
Else
cmyy.Enabled = False
End If
End Sub
Private Sub cmdCha_Click()
'点击查询按纽后首先清空车辆报废列表
Call QingKong
'定义查询条件的字符串
Dim sql As String
Dim scp As String
If ckcp.Value Then
scp = "车牌号码 like '%" & cmcp.Text & "%'"
Else
scp = "车牌号码 like '%'"
End If
Dim stime As String
If cktime.Value Then
stime = "报废日期 between #" & dtStart.Month & "/" & dtStart.Day & "/" & dtStart.Year & "# and #" & dtEnd.Month & "/" & dtEnd.Day & "/" & dtEnd.Year & "#"
Else
stime = "报废日期 like '%'"
End If
Dim sdd As String
If ckyy.Value Then
syy = "报废原因 like'%" & cmyy.Text & "%'"
Else
syy = "报废原因 like '%'"
End If
sql = "select * from 车辆报废表 where " & scp & "and " & syy & "and " & stime
'如果没有选择查询条件,那么清空上一次查询结果并给出对话框提示,退出查询过程
If sql = "select * from 车辆报废表 where 车牌号码 like '%'and 报废原因 like '%'and 报废日期 like '%'" Then
Call QingKong
MsgBox "请选择查询条件", , "系统提示"
Exit Sub
End If
'返回符合查询条件的记录集
Set adors = adoCon.Execute(sql)
'如果记录集为空,说明没有符合条件的记录存在,清空上一次查询结果集并提示,
'退出此次查询过程,否则在datagrid1控件里显示记录集
If adors.EOF Then
Call QingKong
MsgBox "对不起,没有符合您查询条件的车辆!", , "系统提示"
Else
Adodc1.RecordSource = sql
Adodc1.Refresh
End If
adors.Close
ckcp.Value = 0
cktime.Value = 0
ckyy.Value = 0
End Sub
Private Sub cmdExit_Click()
MDIForm1.StatusBar1.Panels(1).Text = ""
Unload Me
End Sub
Private Sub Form_Load()
frmcarBFcha.Height = 4155
frmcarBFcha.Width = 5730
Label1.Caption = "车辆报废列表"
Call Rebind
'将车辆报废表里的车牌号码加到cmcp控件里
Set adors = adoCon.Execute("select distinct 车牌号码,报废原因 from 车辆报废表")
On Error Resume Next
Do
cmcp.AddItem adors.Fields(0)
cmyy.AddItem adors.Fields(1)
adors.MoveNext
Loop Until adors.EOF
End Sub
Private Sub Rebind()
Label1.Caption = "车辆报废列表"
'进行与数据库的绑定及选择作为记录源的表
Adodc1.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\clgl.mdb " & ";Persist Security Info=False"
Adodc1.RecordSource = "select * from 车辆报废表"
Adodc1.Refresh
End Sub
Private Sub QingKong()
Label1.Caption = "您所要查询的报废车辆记录如下:"
Adodc1.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\clgl.mdb " & ";Persist Security Info=False"
Adodc1.RecordSource = "select * from 车辆报废表 where 0=1"
Adodc1.Refresh
End Sub
Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)
cmdExit_Click
End Sub
3.车辆档案查询:
代码分析:
Private Sub ckbf_Click()
If ckbf.Value Then
Combo6.Enabled = True
Else
Combo6.Enabled = False
End If
End Sub
Private Sub ckbx_Click()
If ckbx.Value Then
Combo4.Enabled = True
Else
Combo4.Enabled = False
End If
End Sub
Private Sub ckcp_Click()
If ckcp.Value Then
Combo1.Enabled = True
Else
Combo1.Enabled = False
End If
End Sub
Private Sub ckdw_Click()
If ckdw.Value Then
Combo3.Enabled = True
Else
Combo3.Enabled = False
End If
End Sub
Private Sub cklx_Click()
If cklx.Value Then
Combo2.Enabled = True
Else
Combo2.Enabled = False
End If
End Sub
Private Sub ckyd_Click()
If ckyd.Value Then
Combo5.Enabled = True
Else
Combo5.Enabled = False
End If
End Sub
Private Sub cmdAll_Click()
Frame1.Enabled = False
ckcp.Value = 0
cklx.Value = 0
ckdw.Value = 0
ckbx.Value = 0
ckyd.Value = 0
ckbf.Value = 0
Call Rebind
cmdCha.Visible = True
cmdAll.Visible = False
cmdOk.Enabled = False
End Sub
Private Sub cmdExit_Click()
MDIForm1.StatusBar1.Panels(1).Text = ""
Unload Me
End Sub
Private Sub cmdCha_Click()
'点击查询按纽后首先清空车辆档案列表
Call QingKong
cmdCha.Visible = False
cmdAll.Visible = True
Frame1.Enabled = True
cmdOk.Enabled = True
End Sub
Private Sub cmdOk_Click()
Dim sql As String
Dim scp As String
If ckcp.Value Then
scp = "车牌号码 like '" & Combo1.Text & "%'"
Else
scp = "车牌号码 like '%'"
End If
Dim slx As String
If cklx.Value Then
slx = "车辆类型 like'%" & Combo2.Text & "%'"
Else
slx = "车辆类型 like '%'"
End If
Dim sdw As String
If ckdw.Value Then
sdw = "车辆所在单位 like'%" & Combo3.Text & "%'"
Else
sdw = "车辆所在单位 like '%'"
End If
Dim sbx As String
If ckbx.Value Then
sbx = "保险否='" & Combo4.Text & "'"
Else
sbx = "保险否 like '%'"
End If
Dim syd As String
If ckyd.Value Then
syd = "异动否='" & Combo5.Text & "'"
Else
syd = "异动否 like '%'"
End If
Dim sbf As String
If ckbf.Value Then
sbf = " 报废否='" & Combo6.Text & "'"
Else
sbf = "报废否 like '%'"
End If
sql = "select * from 车辆档案 where " & scp & "and " & slx & "and " & sdw & "and " & sbx & "and " & syd & "and " & sbf
'MsgBox sql
If sql = "select * from 车辆档案 where 车牌号码 like '%'and 车辆类型 like '%'and 车辆所在单位 like '%'and 保险否 like '%'and 异动否 like '%'and 报废否 like '%'" Then
MsgBox "请选择查询条件", , "系统提示"
'清空上一次的查询记录
Call QingKong
Exit Sub
End If
Set adors = adoCon.Execute(sql)
If adors.EOF Then
'清空上一次的查询记录
Call QingKong
'给出文本框提示
MsgBox "没有符合您查询车辆的条件!", , "系统提示"
Else
Adodc1.RecordSource = sql
Adodc1.Refresh
End If
adors.Close
ckcp.Value = 0
cklx.Value = 0
ckdw.Value = 0
ckbx.Value = 0
ckyd.Value = 0
ckbf.Value = 0
End Sub
Private Sub Form_Load()
Adodc1.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\clgl.mdb;Persist Security Info=False"
Call Rebind
cmdAll.Visible = False
cmdCha.Visible = True
cmdOk.Enabled = False
frmcardacha.Height = 5070
frmcardacha.Width = 7935
'将表里存在的所有车牌加到控件combo1里
On Error Resume Next
Adodc1.RecordSource = "select distinct 车牌号码 from 车辆档案"
Do
Combo1.AddItem Adodc1.Recordset.Fields(0)
Adodc1.Recordset.MoveNext
Loop Until Adodc1.Recordset.EOF
Adodc1.Refresh
Adodc2.RecordSource = "select distinct 车辆类型 from 车辆档案"
Adodc2.Refresh
Do
Combo2.AddItem Adodc2.Recordset.Fields(0)
Adodc2.Recordset.MoveNext
Loop Until Adodc2.Recordset.EOF
Adodc3.RecordSource = "select distinct 车辆所在单位 from 车辆档案"
Adodc3.Refresh
Do
Combo3.AddItem Adodc3.Recordset.Fields(0)
Adodc3.Recordset.MoveNext
Loop Until Adodc3.Recordset.EOF
Adodc1.RecordSource = "select * from 车辆档案"
Adodc1.Refresh
End Sub
Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)
cmdExit_Click
End Sub
Private Sub Rebind()
Frame2.Caption = "车辆档案列表"
'联接数据库及选表
Adodc1.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\clgl.mdb " & ";Persist Security Info=False"
Adodc1.RecordSource = "select * from 车辆档案"
Adodc1.Refresh
End Sub
Private Sub QingKong()
Frame2.Caption = "您所要查询的车辆档案如下:"
'清空datagrid1控件里的记录
Adodc1.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\clgl.mdb " & ";Persist Security Info=False"
Adodc1.RecordSource = "select * from 车辆档案 where 0=1"
Adodc1.Refresh
End Sub
4 车辆事故查询界面:
代码分析:
Private Sub ckcp_Click()
If ckcp.Value Then
cmCP.Enabled = True
Else
cmCP.Enabled = False
End If
End Sub
Private Sub cktime_Click()
If cktime.Value Then
dtStart.Enabled = True
dtEnd.Enabled = True
Else
dtStart.Enabled = False
dtEnd.Enabled = False
End If
End Sub
Private Sub cmdCha_Click()
'点击查询按纽后首先清空车辆档案列表
Call QingKong
'定义查询字符串
Dim sql As String
Dim scp As String
If ckcp.Value Then
scp = "车牌号码 like '" & cmCP.Text & "%'"
Else
scp = "车牌号码 like '%'"
End If
Dim stime As String
If cktime.Value Then
stime = "事故时间 between #" & dtStart.Month & "/" & dtStart.Day & "/" & dtStart.Year & "# and #" & dtEnd.Month & "/" & dtEnd.Day & "/" & dtEnd.Year & "#"
Else
stime = "事故时间 like '%'"
End If
sql = "select * from 车辆事故表 where " & scp & "and " & stime
'MsgBox sql
If sql = "select * from 车辆事故表 where 车牌号码 like '%'and 事故时间 like '%'" Then
Call QingKong
MsgBox "请选择查询条件", , "系统提示"
Exit Sub
End If
Set adors = adoCon.Execute(sql)
If adors.EOF Then
Call QingKong
MsgBox "对不起,没有符合您查询条件的车辆事故记录!", , "系统提示"
Else
Adodc1.RecordSource = sql
Adodc1.Refresh
End If
adors.Close
ckcp.Value = 0
cktime.Value = 0
End Sub
Private Sub cmdExit_Click()
MDIForm1.StatusBar1.Panels(1).Text = ""
Unload Me
End Sub
Private Sub Form_Load()
frmcarSGcha.Width = 6375
frmcarSGcha.Height = 3885
Call Rebind
Set adors = adoCon.Execute("select distinct 车牌号码 from 车辆事故表")
On Error Resume Next
Do
cmCP.AddItem adors.Fields(0)
adors.MoveNext
Loop Until adors.EOF
adors.Close
End Sub
Private Sub Rebind()
Frame2.Caption = "车辆事故列表"
Adodc1.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\clgl.mdb;Persist Security Info=False"
Adodc1.RecordSource = "select * from 车辆事故表"
Adodc1.Refresh
End Sub
Private Sub QingKong()
Frame2.Caption = "您所要查询的车辆事故记录如下:"
Adodc1.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\clgl.mdb;Persist Security I
展开阅读全文