《档案管理系统毕业设计论文.doc》由会员分享,可在线阅读,更多相关《档案管理系统毕业设计论文.doc(25页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、【精品文档】如有侵权,请联系网站删除,仅供学习与交流档案管理系统毕业设计论文.精品文档.摘 要近年来,随着企业彼此间的竞争日趋激烈,信息技术在企业的发展中占据着越来越重要的地位。在企业的运输生产中,档案已成为企业运输经营中不可或缺的一部分,为管理者进行管理决策和进行各种经营活动提供了重要的依据,在运输生产中发挥了越来越重要的作用。档案管理系统是一个企业单位不可缺少的部分,它的内容对于企业的决策者和管理者来说都至关重要,所以档案管理系统能够为用户提供充足的信息和快捷的查询手段。用Visual Basic构建的档案管理系统,能实现档案的录入、修改、查找、删除、统计、查询、预览、编辑、打印、打印预览
2、、取消、刷新、视图、系统维护、帮助等功能,此外,在程序中还设计了用户登陆,并设定了密码,以确保本系统应用的安全性。本管理系统设计合理、界面美观、操作方便、运行稳定、功能完备,为进行现代化的档案管理工作起到了重要作用,具有较高的实用价值。关键词: 数据库 模块 信息 数据源目 录第一章 概述-3第二章 目标分析和方案确定-4第三章 开发档案管理系统的基本思路-63.1 使用VB6.0编写代码-63.2 使用Access2000建立数据库-63.3 用JET数据库引擎访问数据库-6第四章 Visual Basic 6.0编程语言概述-74.1 创建菜单栏-74.2 创建工具栏-74.3 建立帮助信
3、息-84.4 生成版本信息-8第五章 使用Access2000 实现关系型数据库-95.1 数据库的概念-95.2 新建一个数据库-95.3 修改已建的数据库-9第六章 系统总体设计-10第七章 分模块设计-127.1档案的系统维护-127.2档案的版本和系统信息-137.3档案的录入、编辑、删除、刷新-177.4档案的登陆和密码设计-247.5档案的主界面-277.6档案的查询、预览、打印功能-287.7档案的统计功能-317.8档案的报表-32第八章 结束语-34附:主要参考文献-35第一章 概述 近年来,随着企业彼此间的竞争日趋激烈,信息技术在企业的发展中占据着越来越重要的地位,借助信息
4、技术来获取更快捷、更高效、更准确的操作方式,发挥企业本身最大的竞争力以适应快速变迁的商业环境,逐渐成为不可避免的趋势。在企业的运输生产中,档案已成为企业运输经营中不可或缺的一部分,为管理者进行管理决策和进行各种经营活动提供了重要的依据,在运输生产中发挥了越来越重要的作用。为方便、高效、快捷地适应现代化档案的需要,本论文应用Visual Basic构建了一个档案管理系统,其中用到了数据库的应用、建立、数据库操作对象ADO、数据报表设计等知识。档案管理系统是典型的信息管理系统(MIS),其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。对于前者要求建立起数据一致性和完整性强、数据
5、安全性好的库。而对于后者则要求应用程序功能完备,易使用等特点。用Visual Basic构建的档案管理系统,主要能实现档案的录入、修改、查找、删除、统计、查询、编辑、打印、打印预览、取消、刷新、视图、系统维护、帮助等功能,为保证用户的安全性,还设计了简捷方便的用户登陆和密码修改。本管理系统设计合理、界面美观、操作方便、运行稳定、功能完备,为进行现代化的档案管理工作起到了重要作用,具有较高的实用价值。第二章 目标分析和方案确定 档案管理系统是一个企业单位不可缺少的部分,它的内容对于企业的决策者和管理者来说都至关重要,所以档案管理系统应该能够为用户提供充足的信息和快捷的查询手段。但一直以来人们使用
6、传统人工的方式管理文件档案,这种管理方式存在着许多缺点,如:效率低、保密性差,另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难。随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。今天,计算机的价格已经十分低廉,性能却有了长足的进步。它已经被应用于许多领域,计算机之所以如此流行的原因主要有以下几个方面:首先,计算机可以代替人工进行许多繁杂的劳动;其次,计算机可以节省许多资源;第三,计算机可以大大的提高人们的工作效率;第四,计算机可以使敏感文档更加安全,等等。 在企业中用计算机管理档案的意义:
7、现在,有很多企业的档案管理水平还停留在纸介质的基础上,这样的机制已经不能适应时代的发展,因为它浪费了许多人力和物力,在信息时代这种传统的管理方法必然被计算机为基础的信息管理所取代。作为计算机应用的一部分,使用计算机对档案信息进行管理,具有着手工管理所无法比拟的优点。例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高学生档案管理的效率,也是企业的科学化、正规化管理,与世界接轨的重要条件。 Visual Basic简单易学且功能丰富,是广泛应用的变成语言之一,它的发展为编程人员提供了更广泛的空间。为能够迎合转变快速的信息技术,越来越多的企业倾向于分布式
8、的 管理需求,提供分布式主从结构环境的Microsoft SQL Server便成为相当重要的核心角色,这个数据库服务器运用了关系数据库的技术,同时考虑到高效率数据库管理的需求,借助标准化的访问环境,提高了和前端应用环境轻松集成的能力,以适应各种企业组织在不同环境下的操作需求。作为前端应用程序开发环境的Visual Basic6.0,在数据来源的维护、数据访问技术、国际网络和企业内部Intranet应用程序等功能方面都有其独到、先进之处。 我作为一个计算机应用专业的专科生,希望在这方面有所贡献。我希望能用我所学的Visual Basic6.0编制出一个实用的程序来对企业的档案进行更有效、快捷、
9、方便的管理,因此,我充分运用Visual Basic进行了这套档案管理系统的开发。第三章 开发档案管理系统的基本思路3.1、编程环境的选择微软公司的Visual Basic 6.0是Windows应用程序开发工具,使目前最为广泛的、易学易用的面向对象的开发工具。Visual Basic提供了大量的控件,这些控件可用于设计界面和实现各种功能,减少了编程人员的工作量,也简化了界面设计过程,从而有效的提高了应用程序的运行效率和可靠性。故而,实现本系统VB是一个相对较好的选择。3.2、关系型数据库的实现Access2000 就是关系数据库开发工具,数据库能汇集各种信息以供查询、存储和检索。Access
10、 的优点在于它能使用数据表示图或自定义窗体收集信息。数据表示图提供了一种类似于 Excel 的电子表格,可以使数据库一目了然。另外,Access 允许创建自定义报表用于打印或输出数据库中的信息。Access也提供了数据存储库,可以使用桌面数据库文件把数据库文件置于网络文件服务器,与其他网络用户共享数据库。Access 是一种关系数据库工具,关系数据库是已开发的最通用的数据库之一。如上所述,Access 作为关系数据库开发具备了许多优点,可以在一个数据包中同时拥有桌面数据库的便利和关系数据库的强大功能。3.3、二者的结合(DBA)微软的JET数据库引擎提供了与数据库打交道的途径,我们是通过它以及
11、Visual Basic 来访问数据库并对其进行各种操作。Visual Basic、Access以及其他微软的软件产品都是通过共用JET数据库引擎,从而给用户提供了丰富的数据类型。DATA 控件在数据库中的信息与将信息显示给用户看的Visual Basic程序之间架起了一座桥梁。我们可以设置DATA控件的各个属性,告诉它要调用那个数据库的哪个部分。缺省情况下,DATA控件根据数据库中的一个或多个数据表建立一个dynaset-type(动态集合)类型的记录集合。一个记录集合是动态的也就意味着,当原来的数据表中的容改变了以后,该记录集合中的记录也会随之改变。DATA控件还提供了用来浏览不同记录的各
12、种跳转按钮。将DATA控件放置在窗体中之后,我们还必须在该控件与要处理的数据库之间建立联系。第四章 Visual Basic 6.0编程语言概述 Visual Basic应用程序基本的构建块是用户所创建的对象,每一个对象都具有一些特性和行为(属性、事件和方法)。开发人员可以最有效利用所创建的每一个对象。使用应用程序具有可通用性、可扩展性和强有力的功能。Visual Basic应用由一系列对象组成,包括有函数、菜单、结构和数据窗口、用户对象、用户事件等等,对象中又包含若干控件如命令按钮、单行编辑器等这些对象和控件都可在许多应用中重复使用。4.1创建菜单栏除此之外,VB6.0还有以下一些重要功能。
13、菜单是程序最重要的特性之一,大多数程序都依赖一个定义良好的菜单使程序易于使用和维护,Visual Basic也提供了强大的创建菜单功能是程序更加标准。您可以使用Visual Basic的Applicaytion Wizard也可以使用Visual Basic的菜单编辑器建立菜单或者修改已经存在的菜单、控件。其属性及对象如下:1. Align属性定义工具条在窗休中的位置。2. ToolTipText属性是字符串类型,定义控件的提示字符。3. Style属性定义按钮外观。4. ImageList属性定义与数据条对应的ImageList控件名,该控件定义工具条按钮显示的图像。5. HotImange
14、List属性设置一个ImageList控件名,该控件定义按钮获得热点时显示的图像。6. DisabledImageList属性定义工具条按钮无效时显示的图像。4.2创建工具栏创建工具条主要利用ImageList和Toolbar控件。创建时,先将ImageList添加到窗体上,然后往其中添加一些图片,接着Toolbar控件添加到窗体上,再往Toolbar中插入一些命令按纽,为他们添加上相应图片即可。4.3建立帮助信息专业水平的软件通常都带有联机帮助功能。无论写出来的程序是要给大量的用户使用,还是仅仅局限于公司内部有限的使用者,我们都应该为用户提供详细的、易于理解的联机帮助文档。微软的Help W
15、orkshop4.0是一套独立于Visual Basic的用来协助我们创建、运行于32位Windows操作系统下的帮助文件的工具。使用它可以为我们编写的应用程序生成一组帮助文件。4.4生成版本信息为了使程序显得更具有专业风格,首先可以在其中加入通常的应用程序信息。这些信息包括公司名称、版本号、修订号以及其他类似信息。Visual Basic允许你使用APP对象来保存这些信息,APP对象是一个预定义对象,不需要在程序中创建它。APP对象的大多数属性被应用程序用来提供常规的信息,通过使用这些APP提供的属性,可以在应用程序和用户之间交流重要信息,在项目属性框中可以设置它的属性。第五章 使用Acce
16、ss2000实现关系型数据库5.1、数据库的概念数据库是一种存储数据并对数据进行操作的工具。数据库的作用在于组织和表达信息,简而言之,数据库就是信息集合。计算机的数据库可以分为两类:非关系数据库(flat-file)和关系数据库(relational)。关系数据库中包含了多个数据表的信息,数据库含有各个不同部分的术语,象记录、域等。5.2、新建一个数据库创建任何一个数据库的第一步是仔细的规划数据库,设计必须是灵活的、有逻辑的。创建一个数据库结构的过程被认为是数据模型设计。1)标识需要的数据;2)收集被标识的字段到表中;3)标识主关键字字段;4)绘制一个简单的数据图表;5)规范数据;6)标识指定
17、字段的信息;7)创建物理表。5.3、修改已建的数据库数据库的修改分为:添加、编辑和删除记录。这三种操作均可由Visual Basic创建的程序来完成,下面的章节将详细描述实现的具体方法。第六章 系统总体设计根据设计方案,本系统的结构框图为(如下所示):本系统所实现的主要功能为:可以进行文本操作;1. 录入一个数据库项目;2. 修改一个数据库项目;3. 查找一个数据库信息;4. 删除一个数据库信息;5. 统计一个数据库信息;6. 查询一个数据库信息;7. 预览一个数据库信息;8. 编辑一个数据库信息;9. 打印一个数据库信息;10. 打印预览一个数据库信息;11. 刷新一个数据库信息;12. 取
18、消一个数据库信息。数据打印根据实际数据操作流程,本城西数据的ER图为(根据数据流程勾画,下图为示意图):档案数据数据录入数据修改、查询用户登录 档案的录入档案的修改和查询 档案的预览和打印本系统所采用的数据库结构:数据表:档案表、用户表。根据系统的需要,档案表采用字段结构为:编号标题发文部门发文号内容发文日期字段类型自动编号字符字符字符备注日期是否索引是否否否否否登录表结构为:编 号用 户 名密 码第七章 分模块设计7.1、档案的系统维护:为提高系统的安全性,防止非法用户进入本系统,本系统设有用户登陆界面,并设立密码,合法用户可以在系统维护里面的用户修改里面自行设立用户名和密码,系统默认用户名
19、为“admin”,密码为“1234”。系统的用户密码更改界面如下:Edit.frmDim db As ConnectionDim rs As RecordsetPrivate Sub Command1_Click()On Error GoTo erIf rs.State = adStateOpen Then rs.Closers.Open 登录, db, 1, 3rs(用户名) = Text1.Textrs(密码) = Text2.Textrs.Updaters.CloseMsgBox 修改成功!, vbOKOnly + vbExclamationUnload MeExit Suber:Msg
20、Box 有错误产生!, vbOKOnly + vbExclamationEnd SubPrivate Sub Command2_Click() Unload MeEnd SubPrivate Sub Form_Load()Text1.Text = login.userText2.Text = login.password Set db = New Connection db.CursorLocation = adUseClient db.Open PROVIDER=Microsoft.Jet.OLEDB.3.51;Data Source=database.mdb; Set rs = New R
21、ecordsetEnd SubPrivate Sub Form_Unload(Cancel As Integer)If rs.State = adStateOpen Then rs.CloseSet rs = Nothingdb.CloseSet db = NothingEnd Sub7.2、档案的版本和系统信息About.frmOption Explicit 注册表关键字安全选项.Const READ_CONTROL = &H20000Const KEY_QUERY_VALUE = &H1Const KEY_SET_VALUE = &H2Const KEY_CREATE_SUB_KEY =
22、&H4Const KEY_ENUMERATE_SUB_KEYS = &H8Const KEY_NOTIFY = &H10Const KEY_CREATE_LINK = &H20Const KEY_ALL_ACCESS = KEY_QUERY_VALUE + KEY_SET_VALUE + _ KEY_CREATE_SUB_KEY + KEY_ENUMERATE_SUB_KEYS + _ KEY_NOTIFY + KEY_CREATE_LINK + READ_CONTROL 注册表关键字 ROOT 类型.Const HKEY_LOCAL_MACHINE = &H80000002Const ERR
23、OR_SUCCESS = 0Const REG_SZ = 1 独立的空的终结字符串Const REG_DWORD = 4 32位数字Const gREGKEYSYSINFOLOC = SOFTWAREMicrosoftShared Tools LocationConst gREGVALSYSINFOLOC = MSINFOConst gREGKEYSYSINFO = SOFTWAREMicrosoftShared ToolsMSINFOConst gREGVALSYSINFO = PATHPrivate Declare Function RegOpenKeyEx Lib advapi32 Al
24、ias RegOpenKeyExA (ByVal hKey As Long, ByVal lpSubKey As String, ByVal ulOptions As Long, ByVal samDesired As Long, ByRef phkResult As Long) As LongPrivate Declare Function RegQueryValueEx Lib advapi32 Alias RegQueryValueExA (ByVal hKey As Long, ByVal lpValueName As String, ByVal lpReserved As Long,
25、 ByRef lpType As Long, ByVal lpData As String, ByRef lpcbData As Long) As LongPrivate Declare Function RegCloseKey Lib advapi32 (ByVal hKey As Long) As LongPrivate Sub cmdSysInfo_Click() Call StartSysInfoEnd SubPrivate Sub cmdOK_Click() Unload MeEnd SubPrivate Sub Form_Load() Me.Caption = 关于 & App.T
26、itle lblVersion.Caption = 版本 & App.Major & . & App.Minor & . & App.Revision lblTitle.Caption = App.Title Me.Width = 5820 Me.Height = 4035End SubPublic Sub StartSysInfo() On Error GoTo SysInfoErr Dim rc As Long Dim SysInfoPath As String 试图从注册表中获得系统信息程序的路径及名称. If GetKeyValue(HKEY_LOCAL_MACHINE, gREGKE
27、YSYSINFO, gREGVALSYSINFO, SysInfoPath) Then 试图仅从注册表中获得系统信息程序的路径. ElseIf GetKeyValue(HKEY_LOCAL_MACHINE, gREGKEYSYSINFOLOC, gREGVALSYSINFOLOC, SysInfoPath) Then 已知32位文件版本的有效位置 If (Dir(SysInfoPath & MSINFO32.EXE) ) Then SysInfoPath = SysInfoPath & MSINFO32.EXE 错误 - 文件不能被找到. Else GoTo SysInfoErr End If
28、 错误 - 注册表相应条目不能被找到. Else GoTo SysInfoErr End If Call Shell(SysInfoPath, vbNormalFocus) Exit SubSysInfoErr: MsgBox 此时系统信息不可用, vbOKOnlyEnd SubPublic Function GetKeyValue(KeyRoot As Long, KeyName As String, SubKeyRef As String, ByRef KeyVal As String) As Boolean Dim i As Long 循环计数器 Dim rc As Long 返回代码
29、Dim hKey As Long 打开的注册表关键字句柄 Dim hDepth As Long Dim KeyValType As Long 注册表关键字数据类型 Dim tmpVal As String 注册表关键字值的临时存储器 Dim KeyValSize As Long 注册表关键自变量的尺寸 打开 HKEY_LOCAL_MACHINE. 下的 RegKey rc = RegOpenKeyEx(KeyRoot, KeyName, 0, KEY_ALL_ACCESS, hKey) 打开注册表关键字 If (rc ERROR_SUCCESS) Then GoTo GetKeyError 处
30、理错误. tmpVal = String$(1024, 0) 分配变量空间 KeyValSize = 1024 标记变量尺寸 检索注册表关键字的值. rc = RegQueryValueEx(hKey, SubKeyRef, 0, _ KeyValType, tmpVal, KeyValSize) 获得/创建关键字值 If (rc ERROR_SUCCESS) Then GoTo GetKeyError 处理错误 If (Asc(Mid(tmpVal, KeyValSize, 1) = 0) Then Win95 外接程序空终结字符串. tmpVal = Left(tmpVal, KeyVal
31、Size - 1) Null 被找到,从字符串中分离出来 Else WinNT 没有空终结字符串. tmpVal = Left(tmpVal, KeyValSize) Null 没有被找到, 分离字符串 End If 决定转换的关键字的值类型. Select Case KeyValType 搜索数据类型. Case REG_SZ 字符串注册关键字数据类型 KeyVal = tmpVal 复制字符串的值 Case REG_DWORD 四字节的注册表关键字数据类型 For i = Len(tmpVal) To 1 Step -1 将每位进行转换 KeyVal = KeyVal + Hex(Asc(
32、Mid(tmpVal, i, 1) 生成值字符。 By Char。 Next KeyVal = Format$(&h + KeyVal) 转换四字节的字符为字符串 End Select GetKeyValue = True 返回成功 rc = RegCloseKey(hKey) 关闭注册表关键字 Exit Function 退出GetKeyError: 错误发生后将其清除. KeyVal = 设置返回值到空字符串 GetKeyValue = False 返回失败 rc = RegCloseKey(hKey) 关闭注册表关键字End Function7.3、档案的录入、编辑、删除、刷新本部分程序
33、主要是把车站的档案录入计算机数据库档案表里,并提供编辑、删除等功能,能快捷、高效地把用纸张记录的档案内容用数字的形式存储在计算机里,适应现代化的办公系统的需要,以对信息进行高效、快速的查询、修改。系统的录入界面如下:frm档案Dim WithEvents adoPrimaryRS As RecordsetDim mbChangedByCode As BooleanDim mvBookMark As VariantDim mbEditFlag As BooleanDim mbAddNewFlag As BooleanDim mbDataChanged As BooleanPrivate Sub
34、Form_Load() Dim db As Connection Set db = New Connection db.CursorLocation = adUseClient db.Open PROVIDER=Microsoft.Jet.OLEDB.3.51;Data Source=database.mdb; Set adoPrimaryRS = New Recordset adoPrimaryRS.Open select 标题,发文部门,发文号,发文日期,录入人,内容 from 档案, db, adOpenStatic, adLockOptimistic Dim oText As Text
35、Box 绑定字段到窗体文本框 For Each oText In Me.txtFields Set oText.DataSource = adoPrimaryRS Next mbDataChanged = FalseEnd SubPrivate Sub Form_Resize() On Error Resume Next lblStatus.Width = Me.Width - 1500 cmdNext.Left = lblStatus.Width + 700 cmdLast.Left = cmdNext.Left + 340End SubPrivate Sub Form_Unload(Can
36、cel As Integer) Screen.MousePointer = vbDefaultEnd SubPrivate Sub adoPrimaryRS_MoveComplete(ByVal adReason As ADODB.EventReasonEnum, ByVal pError As ADODB.Error, adStatus As ADODB.EventStatusEnum, ByVal pRecordset As ADODB.Recordset) 显示记录位置 lblStatus.Caption = Record: & CStr(adoPrimaryRS.AbsolutePos
37、ition)End SubPrivate Sub adoPrimaryRS_WillChangeRecord(ByVal adReason As ADODB.EventReasonEnum, ByVal cRecords As Long, adStatus As ADODB.EventStatusEnum, ByVal pRecordset As ADODB.Recordset) This is where you put validation code This event gets called when the following actions occur Dim bCancel As Boolean Select Case adReason Case adRsnAddNew adStatus = adStatusCancel Case adRsnClose Case adRsnDelete Case adRsnFirstChange Case adRsnMove Case ad