商场员工管理系统.doc_第1页
商场员工管理系统.doc_第2页
商场员工管理系统.doc_第3页
商场员工管理系统.doc_第4页
商场员工管理系统.doc_第5页
已阅读5页,还剩58页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第 1 页 共 63 页 毕业综合训练毕业综合训练 课题名称 商场员工管理系统 学 院 江西科技学院 专 业 软件技术 班 级 10 级软件(专)1 班 姓 名 杜念军 学号 2010086617 指导老师 邱桂华 江西科技学院 第 2 页 共 63 页 摘要摘要: 商场员工管理系统是典型的信息管理系统(MIS),其开发主要包括后台数据库的建立和 维护以及前端应用程序的开发两个方面。对于前者要求建立起数据一致性和完整性强、数 据安全性好的库。而对于后者则要求应用程序功能完备,易使用等特点。 经过分析,我使用 MICROSOFT 公司的 VISUAL BASIC 开发工具,利用其提供的各种面 向对象的开发工具,尤其是数据窗口这一能方便而简洁操纵数据库的智能化对象,在短时间 内建立系统应用原型。 整个系统从符合操作简便、界面友好、灵活、实用、安全的要求出发。论文主要介绍了本 课题的开发背景,所要完成的功能和开发的过程。重点的说明了系统设计的重点、设计思 想、难点技术和解决方案。 关键字 Visual Basic 6.0 Access2000 控件 窗体 域 目 录 摘要 .1 绪 论 3 1VISUAL BASIC 技术3 2ACCESS数据库.4 3ADO 数据库访问技术.5 4结构化系统开发方法6 一 系统需求分析 .7 1.1 系统设计背景介绍 7 1.2 系统功能分析8 1.2.1 数据流程图8 1.2.2 系统主要功能要求8 二 商场员工管理系统总体设计 .9 2.1 系统设计 9 2.1.1 系统功能介绍.9 2.1.2 用户功能模块设计10 三 详细设计工作 11 第 3 页 共 63 页 3.1 数据库设计11 3.1.1 E-R 图.11 3.1.2 在 Access 2000 数据库中创建表11 3.2 各功能模块创建及实现14 3.2.1 系统流程图14 3.2.2 数据模块的创建14 3.2.3 用户登录模块设计15 3.2.4 系统主界面设计15 3.2.5 部门信息管理16 3.26 员工信息管理.21 3.2.7 考勤信息管理22 3.2.8 员工工资管理23 3.2.9 系统维护24 四 系统功能测试 .26 4.1 系统测试环境.26 4.2 测试内容.26 4.3 测试结果.26 五 结束语 26 致 谢 .27 参考文献 28 源代码 29 绪绪 论论 1 1VisualVisual BasicBasic 技术技术 Visual Basic 是一种可视化程序设计语言,它除了提供常规的编程功能外,还提供一 套可视化的设计工具,便于程序员建立图形对象,巧妙地把 Windows 编程的复杂性“封装” 起来。Visual Basic 主要有以下功能特点: 1.1 具有面向对象的可视化设计工具 在 VB 中,应用面向对象的程序设计方法(Object-Oriented Programming) ,把程序 和数据封装起来视为一个对象,每个对象都是可视的。程序员在设计时只需要用现有工具 根据界面设计的要求,直接在屏幕上“画”出窗口、菜单、命令按钮等不同类型的对象, 并为每个对象设置属性。程序员的编程工作仅编写针对对象要完成的事件过程的代码,因 而程序设计的效率可提高许多。 1.2 事件驱动的编程机制 事件驱动是非常适合图形用户界面的编程方式。传统的面向过程的应用程序是按事先 第 4 页 共 63 页 设计的流程运行的。但在图形用户界面的应用程序中,用户的动作即事件掌握着程序的运 行流向。每个事件都能驱动一段程序的运行,程序员只要编写响应用户动作的代码,各个 动作之间不一定有联系。这样的应用程序代码较短,使得程序既易于编写又易于维护。 1.3 结构化的程序设计语言 VB 具有丰富的数据类型,众多的内部函数,模块化、结构化的程序设计机制,结构清 晰,简单易学。 1.4 强大的数据库操纵功能 VB 中利用数据控件可以访问多种数据库系统,如 Microsoft Access、Microsoft FoxPro 和 Paradox 等,也可访问 Microsoft Excel、Lotus 1-2-3 等多种电子表格。VB6.0 新增了功能强大的 ADO(Active Database Object)技术,该技术包括了现有的 ODBC,而且 占用内存少,访问速度更快。同时提供的 ADO 控件,不但可以用最少的代码创建数据库应 用程序,也可以取代 Data 和 RDO 控件,支持多种数据库系统的访问。 2 2AccessAccess数据库数据库 Access 数据库管理系统是 Microsoft Office 套件的重要组成部分,是 Access 的 最新版本。Access 适用于小型商务活动,用以存贮和管理商务活动所需要的数据。Access 不仅是一个数据库,而且它具有强大的数据管理功能,它可以方便地利用各种数据源,生 成窗体(表单) ,查询,报表和应用程序等。 21 什么是 Access 数据库 数据库是有结构的数据集合,它与一般的数据文件不同,(其中的数据是无结构的)是 一串文字或数字流。数据库中的数据可以是文字、图象、声音等。 Microsoft Access 是一种关系式数据库,关系式数据库由一系列表组成,表又由一系 列行和列组成,每一行是一个记录,每一列是一个字段,每个字段有一个字段名,字段名 在一个表中不能重复。 表与表之间可以建立关系(或称关联,连接) ,以便查询相关联的信息。Access 数据 库以文件形式保存,文件的扩展名是 MDB。 22 Access 的 6 种对象 Access 数据库由六种对象组成,它们是表、查询、窗体、报表、宏和模块。 表(Table) 表是数据库的基本对象,是创建其他 5 种对象的基础。表由记录组成,记 录由字段组成,表用来存贮数据库的数据,故又称数据表。 查询(Query)查询可以按索引快速查找到需要的记录,按要求筛选记录并能连接 若干个表的字段组成新表。 窗体(Form)窗体提供了一种方便的浏览、输入及更改数据的窗口。还可以创建子 窗体显示相关联的表的内容。窗体也称表单。 报表(Report)报表的功能是将数据库中的数据分类汇总,然后打印出来,以便分 析。 宏(Macro)宏相当于 DOS 中的批处理,用来自动执行一系列操作。Access 列出了 一些常用的操作供用户选择,使用起来十分方便。 第 5 页 共 63 页 模块(Module)模块的功能与宏类似,但它定义的操作比宏更精细和复杂,用户可 以根据自己的需要编写程序。模块使用 Visual Basic 编程。 3 3ADOADO数据库访问技术数据库访问技术 ADO (Active Data Object) 数据访问接口是 Microsoft 处理数据库信息的最新技 术。它是一种 ActiveX 对象,采用了被称为 OLE DB 的数据访问模式,是数据访问对象 DAO、远程数据对象 RDO 和开放数据库互连 ODBC 三种方式的扩展。 ADO 对象模型包括以下这些对象,使用这些对象可以概括几乎所有的数据访问操作, Connection 对象:表示与数据源建立了一个持续的连接。 Error 对象:表示在数据访问过程中的一个单独的错误信息。 Command 对象:表示一个以保存的过程或者是能返回数据的其他数据访问对象。Command 对象也可以用来执行已保存得不返回数据的过程。 Parameter 对象:表示一个用来指定从命令对象中获取数据的运行时参数。 Recordset 对象:表示一系列从数据源中获取的记录。 Field 对象:表示一个记录集中数据的某个单独的字段。 通常情况下,可以使用 ADO Connection 对象的 Open 方法建立与数据源的连接。为 了告诉 ADO 如何去访问数据源,就必须以与 ODBC 连接字符串相同的格式提供有关信息。 可以使用 ADO Connection 对象的 Provider 属性来指定 OLE DB 提供者。该属性告诉 ADO 将使用哪个 OLE DB 提供者来执行服务器命令(如果没有指定提供者,或者没有使用 Connection 对象,则所用的是缺省提供者,该提供者是 OLE DB 的 ODBC 提供者,也称作 MSDASQL) 。 Connection 对象的 Provider 属性是个文本字符串,其中该字符串被用于指明连接时使用 哪个 OLE DB 提供者,原因是 ODBC 提供者是缺省的。然而,如果为了更明确的话,也可以 指定它。 在 ADO 中使用的 ConnectionString 可以提供有关如何与数据库服务器连接的信息。 当正在使用 OLE DB 的 ODBC 提供者时,该连接字符串与 ODBC 连接字符串一样。这意味着 ODBC 驱动程序期望的准确信息可以根据不同的实现而变化。对于其他提供者来说,连接字 符串可能是完全不同的语法。 为连接到 SQL Server 数据库,应该使用提供者 SQLOLEDB.1: cn.Provider=SQLOLEDB.1 cn.ConnectionString=DATABASE=数据库名称;SERVER=服务器名;UID=用户名;PWD=密 码; 4 4结构化系统开发方法结构化系统开发方法 结构化系统开发方法是迄今为止最传统、应用最广泛的一种系统开发方法。结构化 系统开发方法的基本思想是:用系统工程的思想和工程化的方法,按用户至上的原则,结 第 6 页 共 63 页 构化、模块化、自顶向下的对系统进行分析与设计。具体来说,就是先将整个信息系统开 发过程划分出若干个相对比较独立的阶段。如系统规划、系统分析、系统设计、系统实施 等。在前三个阶段坚持自顶向下的对系统进行结构化划分。也就是说,在系统调查或理顺 管理业务时,应从最顶层的管理业务入手,即从组织管理金字塔结构的塔尖入手,层层逐 步深入至最基层。如果在系统分析,提出新系统方案和系统设计时,应从宏观整体考虑入 手,即先考虑系统整体的优化,然后再考虑局部的优化问题。而在系统的实施阶段,则应 坚持自底向上的逐步组织实施。也就是说,按照前几阶段设计的模块组织人力从最基层的 模块做起(编程) ,然后按照系统设计的结构,将模块一个个拼接到一起进行调试,自底 向上,逐渐的构成整体系统。 用结构化系统开发方法开发一个系统,将整个开发过程分为五个首尾相连的阶段,一 般称之为系统开发的生命周期。 4.1 系统规划阶段 系统规划阶段的工作就是根据用户的系统开发请求,初步调查,明确问题,然后进行 可行性研究。 4.2 系统分析阶段 系统分析阶段的任务是:分析业务流程;分析数据与数据流程;分析功能与数据之间 的关系;最后提出新系统逻辑方案。 4.3 系统设计阶段 系统设计阶段的任务是:总体结构设计;代码设计;数据库/文件设计;输入/输出设 计;模块结构与功能设计。与此同时根据总体设计的要求购置与安装设备,最终给出系统 实施方案。 4.4 系统实施阶段 系统实施阶段的任务是:同时进行编程;人员培训;数据准备。然后投入试运行。 4.5 系统运行阶段 系统运行阶段的任务是:同时进行系统的日常运行管理、评价、监理审计三部分工作。 然后分析运行结果,如果运行结果良好,则送管理部门指导组织生产经营活动;如果有点 问题,则要对系统进行修改、维护或者是局部调整;如果出现了不可调和的大问题,则用 户将会进一步提出开发新系统的要求,这标志着老系统生命的结束,新系统的诞生。 一一 系统需求分析系统需求分析 1.11.1 系统设计背景介绍系统设计背景介绍 管理信息系统就是我们常说的 MIS (Management Information System),在强调管理, 强调信息的现代社会中它变的越来越普及。而将信息管理系统与企业自动化设备想结合, 则是当今社会现代企业的发展趋势。通过这样的管理方式,企业的管理人员、技术人员、 统计人员等各部门员工就能从大量烦琐的资料和数据中解脱出来,只需对自己需要的数据 和内容进行必须的处理,而不用对每个环节都了如指掌。这在一定程度上能够节省人力物 第 7 页 共 63 页 力,同时也大大加强了对数据处理的及时性和准确性。 本次的开发内容商场员工管理系统就是信息管理与现代化办公设备相结合的例子。 开发本系统希望使员工管理人员可以从年复一年的输入、计算、统计等工作中解脱出来, 由于员工方面的数据众多,输入、统计极为不便,输入量大,计算量大。这些工作都以人 力来完成将费时费力,而且容易出现错误和疏漏。本系统一次录入信息后,就可以反复多 次在不同的信息库中使用。所有输入的信息都将按所属部门、专业、考勤日期、工资日期 等详细分类,使客户可以根据需要进行管理操作。 因此,该管理系统的目的就是利用计算机对复杂烦琐的数据进行存储和处理,并利用 计算机与现代化办公设备的连接实时刷新数据,从而提高企业的工作效率。 1.21.2 系统功能分析系统功能分析 1.2.1 数据流程图数据流程图 通过对系统中数据流程的分析,画出数据流程图如下: 图 1.1 1.2.2 系统主要功能要求系统主要功能要求: 第 8 页 共 63 页 *按不同权限登录系统。 *对其提供的部门资料情况进行添加、查询、修改和删除操作。 *对其提供的人员资料情况进行添加、查询、修改和删除操作。 *对其提供的人员考勤资料情况进行添加、查询、修改和删除操作,并可按考勤月份进行 分类。 *对其提供的人员工资资料情况进行添加、计算、查询、修改和删除操作,并可按工资月 份进行分类。 *可添加新的用户,修改用户原有的用户名、密码,删除原有用户。 二二 商场员工管理系统总体设计商场员工管理系统总体设计 管理信息系统就是我们常说的 MIS (Management Information System),在强调管理, 强调信息的现代社会中它变的越来越普及。而将信息管理系统与企业自动化设备想结合, 则是当今社会现代企业的发展趋势。通过这样的管理方式,企业的管理人员、技术人员、 统计人员等各部门员工就能从大量烦琐的资料和数据中解脱出来,只需对自己需要的数据 和内容进行必须的处理,而不用对每个环节都了如指掌。这在一定程度上能够节省人力物 力,同时也大大加强了对数据处理的及时性和准确性。 本次的开发内容商场员工管理系统就是信息管理与现代化办公设备相结合的例子。 开发本系统希望使员工管理人员可以从年复一年的输入、计算、统计等工作中解脱出来, 由于员工方面的数据众多,输入、统计极为不便,输入量大,计算量大。这些工作都以人 力来完成将费时费力,而且容易出现错误和疏漏。本系统一次录入信息后,就可以反复多 次在不同的信息库中使用。所有输入的信息都将按所属部门、专业、考勤日期、工资日期 等详细分类,使客户可以根据需要进行管理操作。 因此,该管理系统的目的就是利用计算机对复杂烦琐的数据进行存储和处理,并利 用计算机与现代化办公设备的连接实时刷新数据,从而提高企业的工作效率。 2.12.1 系统设计系统设计 2.1.1 系统功能系统功能介绍介绍 *按不同权限登录系统。 *对其提供的部门资料情况进行添加、查询、修改和删除操作。 *对其提供的人员资料情况进行添加、查询、修改和删除操作。 *对其提供的人员考勤资料情况进行添加、查询、修改和删除操作,并可按考勤月份进行 分类。 *对其提供的人员工资资料情况进行添加、计算、查询、修改和删除操作,并可按工资月 份进行分类。 *可添加新的用户,修改用户原有的用户名、密码,删除原有用户。 第 9 页 共 63 页 2.1.2 用户功能模块设计用户功能模块设计 图 2.1 用用 户户 登登 陆陆 部门信息管理 查 询 记 录 修 改 记 录 添 加 用 户 修 改 密 码 删 除 用 户 删 除 记 录 员工信息管理 添 加 记 录 查 询 记 录 修 改 记 录 删 除 记 录 考勤信息管理 添 加 记 录 查 询 记 录 修 改 记 录 删 除 记 录 添 加 记 录 查 询 记 录 修 改 记 录 删 除 记 录 员工工资管理 数 据 备 份 数 据 恢 复 系 统 维 护 退 出 系 统 添 加 记 录 第 10 页 共 63 页 三三 详细设计工作详细设计工作 3.13.1 数据库设计数据库设计 3.1.1 E-R 图图 分析系统中部门、员工和工资各实体之间的关系,得到如下实体联系图 图 3.1 3.1.2 在在 Access 2000 数据库中创建表数据库中创建表: 5 个数据表:部门基本情况表、员工基本信息表、员工考勤信息表、员工工资信息表、 口令信息表。这 5 个数据表的结构如下各表: (1)部门基本情况表 字段名称数据类型长度主键允许空 部门编号文本 6True 否 部门名称文本 30 是 备注文本 255 是 (2)员工基本信息表 字段名称数据类 型 长度主键允许空 员工编号文本 6 否 第 11 页 共 63 页 员工姓名文本 10 否 性别文本 2 是 出生日期日期/时 间 短日期否 民族文本 10 是 政治面貌文本 10 是 最后学历文本 10 是 所学专业文本 20 是 联系电话文本 20 是 毕业学校文本 30 是 籍贯文本 50 是 家庭住址文本 50 是 进入公司时 间 日期/时 间 短日期否 部门名称文本 30 是 职务名称文本 30 是 备注文本 255 是 (3)员工考勤信息表 字段名称数据类型长度主键允许空 员工编号文本 6 是 员工姓名文本 10 是 考勤日期文本 6 否 部门名称文本 50 是 出勤天数数字整型是 假日加班数字整型是 其它加班数字整型是 出差天数数字整型是 补休天数数字整型是 请假次数数字整型是 第 12 页 共 63 页 旷工天数数字整型是 迟到次数数字整型是 早退次数数字整型是 备注文本 255 是 (4)员工工资信息表 字段名称数据类型长度主键允许空 员工编号文本 6 是 员工姓名文本 10 是 计发日期文本 6 否 部门名称文本 50 是 底薪数字单精度型是 奖金数字单精度型是 补贴数字单精度型是 加班费数字单精度型是 房帖费数字单精度型是 扣考核数字单精度型是 养老金数字单精度型是 医疗保险数字单精度型是 住房公积 金 数字单精度型是 税前小计数字单精度型是 所得税数字单精度型是 实发工资数字单精度型是 (5)口令信息表 字段名称数据类型长度主键允许空 用户名文本 20 是 密码文本 10 是 权限文本 6 是 第 13 页 共 63 页 3.23.2 各功能模块创建及实现各功能模块创建及实现 3.2.1 系统流程图系统流程图 图 3.2 3.2.2 数据模块的创建数据模块的创建 在程序模块中定义记录集,并在各个窗体中定义记录集变量,使输入数据能与数据库 连接,并都用程序进行控制,这样不用数据控件都用代码控制大大提高了程序运行效率。 部分有关代码如下: Dim rc As New ADODB.Recordset 定义记录集变量 Cnndb.Open “provider=microsoft.jet.oledb.4.0;data source = “ & App.Path & “商 场员工管理系统.mdb“ 确定数据库位置 Dim rc As New ADODB.Recordset 定义记录集变量 If rc.State = 1 Then rc.Close 判断当前表的状态是否打开,是则关闭 第 14 页 共 63 页 rc.Open SQL, Cnndb, 3, 2 打开当前表 3.2.3 用户登录模块设计用户登录模块设计 (1) 设计思路 每个用户登录系统都须经过身份验证。只有用户名和密码相对应才能进入系统。因为 在系统设置中已经对系统使用权限进行了规定,所以,在用户登录的同时也决定了用户对 系统使用的权限。当登录者是管理员身份时,他可以使用系统提供的所有功能,并能对所 有用户进行管理。登录者是操作员可以使用所有对数据的编辑功能,而如果登录者是一般 用户时只能利用系统进行资料查询功能。 (2) 用户登录界面设计 图 3.3 3.2.4 系统主界面设计系统主界面设计 根据系统模块结构,建立系统主界面。用户登录到系统后进入的就是该界面,所有功 能一目了然。当不同权限的用户登录到该界面时功能有所不同,其控制由“用户登录”界 面控制。 第 15 页 共 63 页 图 3.4 在此界面中对用户的权限进行了设置,若是以一般用户登录时只能修改自己的密码且 只能浏览所有的员工管理信息,以管理员身份进入时可以对所有一般用户的密码进行设置, 还可删除一般用户!能对员工信息进行编辑删除,修改等操作 3.2.5 部门信息管理部门信息管理-添加、查询、修改、删除的实现: 编辑部门信息 作为编辑部门信息这一项,所实现的功能是对公司各部门资料信息的存储与编辑,部 门信息包括:部门编号(两位) 、部门名称、备注。部门编号与部门名称都具有唯一性, 不能重复。作为部门信息与员工信息有着密切的关系,每一名员工都从属一个部门。 (1)数据添加 当操作员进入系统,根据设计要求,需要添加新的部门信息时,在编辑部门信息窗体 上按添加按钮,便进入添加状态,文本框自动清空,添加按钮变为确定按钮,光标会停留 在部门编号文本框上,此时系统已自动生成一个新的部门编号,只需输入部门名称和备注 信息即可完成部门信息编辑操作,在按窗体上的确定按钮即可检查该部门信息是否合法并 存入数据库,否则按取消按钮。再点击添加按钮,用户可再次添部门信息记录。 第 16 页 共 63 页 图 3.5 (2)数据查询 当操作员需要对某个部门进行查询时,可以在编辑部门信息窗体下部中找到查询按钮。 先在对应的文本框中输入要进行数据查询的条件,输入完查询条件后,点击查询按钮进行 确定,系统便会查询出满足条件的部门记录,并列到数据表格中,无满足条件的部门记录 时,则弹出对话框提示“查无此记录!” 。 图 3.6 第 17 页 共 63 页 (3)数据修改 当操作员需要对某个部门进行修改时,可以在编辑部门信息窗体下部中找到修改按钮。 由于修改记录不可能在大量的数据中盲目的寻找,因此数据修改应该与数据添加按钮结合 使用,先用查询功能进行对要修改记录的搜索,再在数据表格中选中要修改的部门记录, 便把此部门记录读入文本框中,只需在文本框中直接进行数据修改便可,修改完后按修改 按钮进行确定,系统并对修改后的数据进行合法性检测,合法则修改成功。 图 3.7 (4)数据删除 当操作员需要对某个或多个部门进行删除时,可以在编辑部门信息窗体下部中找到删 除按钮。由于删除记录不可能在大量的数据中盲目的寻找,因此数据删除也有数据查找功 能,先在对应的文本框中输入要进行数据删除的条件,再按删除按钮,系统便会列出满足 删除条件的部门记录,并提示是否删除满足条件的全部部门记录,也可以一条一条删除部 门记录,只要在数据表格中选中要删除的部门记录,在按一下删除按钮即可删除数据。 第 18 页 共 63 页 图 3.8 (5)清空 清空按钮的作用可使所有文本框清空,方便用户进行其它操作。 清空输入信息代码: Private Sub CmdClear_Click() ChangeCheck = False Call TxtKong Dim n As Integer For n = 0 To MSFlexGrid1.Rows - 1 MSFlexGrid1.TextMatrix(n, 0) = “ Next n End Sub 浏览部门信息 此窗体主要针对一般用户,只有浏览功能,因为一般用户只有浏览的权限。并能从此 窗体中了解各部门现有人数,这是在编辑部门信息中无法获得的信息。 第 19 页 共 63 页 图 3.9 3.26 员工信息管理员工信息管理-添加、查询、修改、删除的实现: 编辑员工信息 作为编辑员工信息这一项,所实现的功能是对企业员工资料信息的存储与编辑,方便 对员工的分类与管理。员工编号具有唯一性,不能重复。在此窗体中输入的信息都进过合 法性检测,判断员工编号是否出现重复,位数是否为 6 位(前两位为部门编号,后四位为 员工自身编号)等。 第 20 页 共 63 页 图 3.10 浏览员工信息 图 3.11 第 21 页 共 63 页 3.2.7 考勤信息管理考勤信息管理-添加、查询、修改、删除的实现: 编辑考勤信息 作为编辑考勤信息这一项,所实现的功能是对公司员工考勤资料信息的存储与编辑, 方便对员工工作的考察。对员工进行按月考勤,考核员工出勤、加班、迟到和早退等一些 信息。 图 3.12 浏览考勤信息 此窗体主要针对一般用户,只有浏览功能,因为一般用户只有浏览的权限。并能根据 部门名称、考勤日期进行员工考勤信息查询。 第 22 页 共 63 页 图 3.13 3.2.8 员工工资管理员工工资管理-添加、查询、修改、删除的实现: 编辑工资信息 作为编辑工资信息这一项,所实现的功能是对公司员工工资信息的存储、计算与编辑, 方便对员工工资的管理。对员工工资进行按月分组,计算员工各种工资项目和个人所得税 款等一些信息。 第 23 页 共 63 页 图 3.14 浏览工资信息 此窗体主要针对一般用户,只有浏览功能,因为一般用户只有浏览的权限。并能根据 部门名称、工资计发日期进行员工工资信息查询。 图 3.15 第 24 页 共 63 页 3.2.9 系统维护系统维护 系统维护选项里包括密码设置、用户管理、数据备份和数据恢复四个选项。用户管理 功能只对管理员开放,管理员能在用户管理窗体中添加新的用户,对已有的用户进行用户 名和密码修改,或者将原有用户删除。当一般用户和操作员进入时,菜单栏中无该项。 密码设置 图 3.16 该界面比较简单,能让登陆的用户修改自己的密码,但不能更改用户名,此项对所有 权限的用户都适用。一进入此窗体便会显示此用户名,在旧密码框中输入原始密码,在新 密码框中输入想更改的新密码,再在密码确定中进行新密码确认,按更改按钮便可修改用 户密码。 用户管理 图 3.17 该功能只针对管理员有效,用于对所有权限用户口令的管理。能对所有用户进行用户 名、密码、权限修改,不但能更改而且还能进行用户添加和删除。 数据备份 数据备份就是复制数据库的数据文件到其他地方,一面在数据库遇到意外破坏的时候 能够恢复数据库,从而减少破坏造成的损失。在此系统中只把数据库备份到软盘中。 数据恢复 第 25 页 共 63 页 数据恢复就是将数据库备份文件复制到当前数据库上,一面在数据库遇到意外破坏的 时候能够恢复数据库,从而减少破坏造成的损失。在此系统中只从软盘中恢复数据库文件。 四四 系统功能测试系统功能测试 4.14.1 系统测试环境系统测试环境 1硬件环境:PIII 800 128MB 内存 40G 硬盘 2软件环境: 操作系统:WINDOWS 98 数据库:Access 2000 程序开发工具: Visual Basic 6.0 4.24.2 测试内容测试内容 测试了部门信息管理-添加、查询、修改、删除 测试了员工信息管理-添加、查询、修改、删除 测试了考勤信息管理-添加、查询、修改、删除 测试了员工工资管理-添加、查询、修改、删除 测试了系统维护密码设置、用户管理、数据备份、数据恢复 4.34.3 测试结果测试结果 测试结果软件运行一切正常 第 26 页 共 63 页 五五 结束语结束语 本次的商场员工管理系统是基于 Visual Basic 的 ADO 技术设计的。选择了 Access 2000 作为后端开发工具,开发数据库功能,并选择了 Visual Basic 6.0 作为界面前台开 发工具。在该系统开发中我通过建立数据库,以及对各种信息库的开发(如:添加、查询、 修改、删除资料)及设计系统维护安全部分,完成了此次对商场员工管理系统的设计。 在本次的开发过程中,我意识到最重要的环节在于对系统的流程、功能模块、框架结构等 方面的把握和设计。在需求分析结束以后,我们对一个系统需要具有哪些功能已经有了一 定的认识,而如何以一个简洁、合理的系统结构去实现用户要求的功能就成为系统开发的 关键环节。通过这次商场员工管理系统的开发,我深刻认识到系统分析,以及对整个系统 的总体设计的重要性。只有走好了这一步,整个系统的开发才能事半功倍,否则就会是 “棋差一着,满盘皆输” 。 同时,在这次的系统开发中我也看到了自己在新知识的学习,新工具的应用方面的不 足。开始时,我对 Visual Basic 和 Access 可以说只是停留在书面上的了解,还不够深入 透彻。系统的开发过程也就成为我对这两种开发工具的深入透彻学习的过程。正因为这样, 所以在设计过程中往往会被一些问题卡住。在原地徘徊了一段时间后,我通过查找参考资 料,和同学交流,利用互联网向有经验的编程人员请教等各种方式试着克服在设计过程中 遇到的困难。随着开发设计的深入,我也逐渐掌握了一部分编程技巧,了解了一些关于编 程方面的规律,一些困难也就迎刃而解了。 总之,这次的商场员工管理系统开发过程对我来说不仅仅是一次毕业设计,这也是我一次 有意义的学习、提高的过程。通过这次系统开发,我不但初步掌握了两种数据库系统开发 工具,也让我看到了自己知识结构、知识储备、学习和应用能力上的不足。以后需要继续 努力学习弥补不足之处。 致致 谢谢 本次毕业设计的较以往有所提前,在这么长时间的设计过程中,从一开始选定课题 题目,经过查找资料和实地调研,然后是系统分析和设计,直到最后的系统实施,都受到 了来自各方面的帮助。 首先要感谢我的导师夏明长老师。夏老师为人和蔼,平易近人,知识渊博,治学认真 而严谨。感谢夏老师从大四上学期末就对本系统设计开始一路指导至本论文及系统的完成, 由衷感谢他在论文上的全力指导上,他宽厚待人的学者风范使我非常景仰。 感谢授课老师课上对我们的教导,若没有老师丰富的授课内容,很难顺利完成本次毕 业设计。 感谢我的同组同学在困难时给予我的帮助。 感谢安徽工业大学四年以来对我的教育和培养。 第 27 页 共 63 页 参考文献参考文献 1 袭沛曾,陆慰民 ,杨志强. Visual Basic 程序设计教程(6.0 版). 高等教育出版社. 2000 年 2 肖建 ,薛凤武 , 吴静. Visual Basic 6.0 基础教程. 中国电力出版社. 2002 年 3 张大年, 廖智勇 ,刘检锋. Visual Basic 数据库应用开发与实例 . 清华大学出版社. 2002 年 4 杨宗志. Visual Basic 数据库程序设计.清华大学出版社. 2001 年 5 陈豫龙, 何旭洪. Visual Basic 6.0 数据库开发实例导航 人民邮电出版社. 2002 年 6 Visual Basic 6.0 时尚编程百例 机械工业出版社. 2001 年 7 飞思科技产品研发中心. Access 2000 数据处理技术 电子工业出版社 2001 年 8 李春葆 张植民. Visual Basic 数据库系统设计与开发. 北京:清华大学出版社, 2003 年 9 张瀚文 齐锦刚,Visual Basic 数据库系统开发实例与解析,高等教育出版社 2003 年 10 David L.Anderson,Managing Information Systems,清华大学出版社,2001 年 11 James A.OBrien,Introduction to Information Systems,高等教育出版社, 2002 第 28 页 共 63 页 源代码源代码: 1用户登陆 Dim rc As New ADODB.Recordset 定义记录集变量 Dim i As Integer 检测输入口令的次数 Dim DLYongHuMing As String Dim DLQuanXian As String Private Sub DataSave() 数据存储 Dim SQL As String SQL = “ SQL = “insert into 登陆日志“ & Space$(1) SQL = SQL & “(“ SQL = SQL & “登陆日期“ SQL = SQL & “,登陆时间“ SQL = SQL & “,用户名“ SQL = SQL & “,权限“ SQL = SQL & “ )“ SQL = SQL & “ values (“ SQL = SQL & “ & Date & “ SQL = SQL & “,“ & Time & “ SQL = SQL & “,“ & DLYongHuMing & “ SQL = SQL & “,“ & DLQuanXian & “ SQL = SQL & “)“ Cnndb.Execute (SQL) End Sub Private Sub DataFind() 数据查找 Dim SQL As String If TxtYhm.Text = “ Then SQL = “select * from 口令信息 where 用户名= or 用户名 is null“ Else SQL = “select * from 口令信息 where 用户名=“ & TxtYhm.Text & “ End If If rc.State = 1 Then rc.Close rc.Open SQL, Cnndb, 3, 2 If rc.EOF Then MsgBox “用户名不存在!“, vbInformation TxtYhm.SetFocus i = i + 1 If i = 5 Then End 第 29 页 共 63 页 End If Exit Sub Else If TxtYhm.Text = “ And TxtMm.Text = “ Then SQL = “select * from 口令信息 where (用户名 = or 用户名 is null) and (密码 = or 密码 is null)“ ElseIf TxtYhm = “ And TxtMm “ And TxtMm = “ Then SQL = “select * from 口令信息 where 用户名 =“ & TxtYhm.Text & “ and (密码 = or 密码 is null)“ Else SQL = “select * from 口令信息 where 用户名 =“ & TxtYhm.Text & “ and 密码 =“ & TxtMm.Text & “ End If If rc.State = 1 Then rc.Close rc.Open SQL, Cnndb, 3, 2 If rc.EOF Then MsgBox “密码不正确!“, vbInformation TxtMm.SetFocus i = i + 1 If i = 5 Then End End If Exit Sub Else DLYongHuMing = rc.Fields(“用户名“).Value DLQuanXian = rc.Fields(“权限“).Value If rc.Fields(“权限“).Value = “管理员“ Then QuanXian = “ (管理员)“ End If If rc.Fields(“权限“).Value = “操作员“ Then QuanXian = “ (操作员)“ 主窗体.Men_Yhgl.Visible = False 主窗体.Men_Dlrz.Visible = False End If If rc.Fields(“权限“).Value = “一般用户“ Then QuanXian = “ (一般用户)“ 主窗体.Men_Bjbmxx.Visible = False 主窗体.Men_Bjygxx.Visible = False 主窗体.Men_Bjkqxx.Visible = False 主窗体.Men_Bjgzxx.Visible = False 主窗体.Men_Sjbf.Visible = False 主窗体.Men_Sjhf.Visible = False 第 30 页 共 63 页 主窗体.Men_Gng.Visible = False 主窗体.Men_Yhgl.Visible = False 主窗体.Men_Dlrz.Visible = False End If YongHuMing = TxtYhm.Text MiMa = TxtMm.Text Call DataSave Unload Me 主窗体.Show End If End If End Sub Private Sub CmdAdd_Click() Call DataFind End Sub Private Sub CmdExit_Click() End End Sub Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer) Select Case KeyCode Case vbKeyF1 CmdAdd_Click Case vbKeyF2 CmdExit_Click End Select End Sub Private Sub Form_Load() Me.Top = (Screen.Height - Me.Height) / 2 Me.Left = (Screen.Width - Me.Width) / 2 End Sub Private Sub Txtmm_KeyPress(KeyAscii As Integer) If KeyAscii = vbKeyReturn Then CmdAdd.SetFocus End Sub Private Sub TxtYhm_KeyPress(KeyAscii As Integer) If KeyAscii = vbKeyReturn Then TxtMm.SetFocus End Sub 第 31 页 共 63 页 2编辑部门信息 Private Sub MSFlexGrid1_Click() Dim SQL As String Dim i As Integer For i = 0 To MSFlexGrid1.Rows - 1 清除表格控件最左边的选定当前行标志“ MSFlexGrid1.TextMatrix(i, 0) = “ Next SQL = “ & vbCrLf SQL = SQL & “ SELECT * “ & vbCrLf SQL = SQL & “ FROM 部门基本情况“ & vbCrLf If rc.State = 1 Then rc.Close rc.Open SQL, Cnndb, 3, 2 If rc.RecordCount 0 Then ChangeCheck = True MSFlexGrid1.TextMatrix(MSFlexGrid1.Row, 0) = “ “ 标出表格控件最左 边的选定当前行标志“ Txtbmbh.Text = MSFlexGrid1.TextMatrix(MSFlexGrid1.Row, 1) 将表格控件 选定当前行数据付给各个输入框 Txtbmmc.Text = MSFlexGrid1.TextMatrix(MSFlexGrid1.Row, 2) Txtbz.Text = MSFlexGrid1.TextMatrix(MSFlexGrid1.Row, 3) MFGridClickTxtBmbh = MSFlexGrid1.TextMatrix(MSFlexGrid1.Row, 1) 进行表 格控件选定当前行数据备份 MFGridClickTxtBmmc = MSFlexGrid1.TextMatrix(MSFlexGrid1.Row, 2) MFGridClickTxtBz = MSFlexGrid1.TextMatrix(MSFlexGrid1.Row, 3) End If End Sub Private Sub MSFlexGrid1_LostFocus() 清除表格控件最左边的选定当前行标志“ Dim i As Integer For i = 0 To MSFlexGrid1.Rows - 1 MSFlexGrid1.TextMatrix(i, 0) = “ Next End Sub Private Sub Txtbmbh_Change() Call TxtdianCheck(Txtbmbh) End Sub Private Sub Txtbmbh_GotFocus() Call TxtYellow(Txtbmbh) End Sub Private Sub Txtbmbh_KeyPress(KeyAscii As Integer) 第 32 页 共 63 页 Select Case KeyAscii Case Asc(0) To Asc(9) Case vbKeyDelete Case vbKeyBack Case vbKeyReturn Txtbmmc.SetFocus Case Else KeyAscii = 0 End Select End Sub Private Sub Txtbmbh_LostFocus() Call TxtWhite(Txtbmbh) Txtbmbh.Text = Format(Txtbmbh.Text, “00“) End Sub Private Sub Txtbmmc_GotFocus() Call TxtYellow(Txtbmmc) End Sub Private Sub Txtbmmc_KeyPress(KeyAscii As Integer) If KeyAscii = vbKeyReturn Then Txtbz.SetFocus End Sub Private Sub Txtbmmc_LostFocus() Call TxtWhite(Txtbmmc) End Sub Private Sub txtbz_GotFocus() Call TxtYellow(Txtbz) End Sub Private Sub Txtbz_KeyPress(KeyAscii As Integer) If KeyAscii = vbKeyReturn Then CmdAdd.SetFocus End Sub Private Sub Txtbz_LostFocus() Call TxtWhite(Txtbz) End Sub Private Sub Form_Load() Call Da

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论