考勤管理系统的设计与实现毕业设计论文.docx
《考勤管理系统的设计与实现毕业设计论文.docx》由会员分享,可在线阅读,更多相关《考勤管理系统的设计与实现毕业设计论文.docx(41页珍藏版)》请在冰点文库上搜索。
考勤管理系统的设计与实现毕业设计论文
毕业设计(论文)
考勤管理系统的设计与实现
论文作者姓名:
申请学位专业:
申请学位类别:
指导教师姓名(职称):
论文提交日期:
考勤管理系统的设计与实现
摘要
考勤管理系统是为了满足单位日常考勤管理的需求,使单位考勤过程更加快速、安全、高效的信息管理系统。
本系统基于C/S模式,采用VisualBasic语言与Access数据库开发完成,实现了系统管理、数据管理与报表管理等功能。
其中系统管理包括登录、退出、打卡数据采集、班次定义、日常排班与请假登记等模块;数据管理包括缺席登记、员工数据管理与数据库管理等模块;报表管理包括日常动态考勤报表、考勤明细管理报表与考勤月报管理报表等模块。
本系统能基本满足用户在考勤管理方面的需求,界面友好,符合用户使用习惯,能实际地提高单位考勤管理的效率。
关键词:
考勤管理;C/S模式;VisualBasic;MicrosoftAccess
TheDesignandRealizationof
AttendanceManagementSystem
Abstract
Theattendancemanagementsystemistheinformationmanagementsystemthatcansatisfythedemandoftheunitdailyattendancemanagementandlettheunitattendanceprocessmorerapidly,safely,highlyeffectively.ThesystemisbasedonC/Smode,completedwithVisualBasicLanguageandAccessdatabasedevelopment.Itisconsistedofthesystemmanagement,datamanagement,reportmanagement,andotherfunctionsmodule.Themanagementsystemincludesregistration,exitandpunchcarddatacollection,schedulingdefinition,dailyschedulingandaskingforleaveregistermodule.Thedatamanagementincludesabsenceregistration,staffdatamanagementanddatabankadministrationmodule.Thereportformmanagementiscomposedofdailydynamicattendancereportform,attendancemanagementdetailedreportformandattendancemonthlymanagementreportformmoduleandsoon.Thesystemcanbebasicallymetedtherequirementsofusersappraisalmanagementneeds,bewithfriendlyinterface,conformedtotheuserusecustom.Atthesametimeitcanactuallyenhancetheunit attendancemanagementtheefficiency.
Keywords:
attendancemanagement;C/Smode;VisualBasic;MicrosoftAccess
论文总页数:
21页
1.引言
1.1设计背景及目的
随着现代科技的进步,用计算机来进行考勤管理成为现代化企业运作必不可少的一部分。
以前考勤工作都是由工完成,不仅浪费了人力与物力,而且无法保证其准确性和透明度,同时给企业的管理带来了许多的不便。
现在利用计算机来管理考勤工作,大大降低了工作人员的工作量,提高了工作效率,使原本复杂枯燥无味的工作变的简单而轻松。
计算机技术,特别是数据库技术的发展。
为企业建立管理信息系统,甚至对改变管理思想起着不可估量的作用。
实践证明信息技术已在企业的管理层面扮演越来越重要的角色。
当今社会正处于信息时代,信息技术已渗透到社会生活的各个领域,特别是各行业的管理领域,智能化信息处理已是提高效率、规范管理、客观审查的最有效途径。
考勤作为一个公司的基本管理,是单位对员工工作管理的基本依据。
但是,目前国内大多数企业在考勤时,依然使用的是传统的考勤方法,例如手工记录、签卡、机械打卡等,不仅考勤速度慢,在考勤时需要专门人员在旁记录、统计、制成报表,当报表最后交到主管人员手上时,也许时间已经过了几天,根本不能发挥考勤真正的监督作用。
而且考勤数据不准确,考勤人员在考勤过程中可能记录出错,甚至弄虚作假的现象出现,极大的影响了企业对员工的管理。
使用考勤管理系统,管理者可以快速记录公司全体员工当日的出勤状况,并可按月份统计员工出勤、出差、请假状况及正常工作时间。
本系统基于C/S(客户机/服务器)模式,运用MicrosoftAccess数据库与VisualBasic程序语言设计了一个考勤管理软件。
结合当前的IC卡技术,以考勤机为客户端接口,为实现企业考勤提供了一个良好的平台。
考勤系统结构如图1-1所示。
图1-1考勤系统结构图
1.2开发语言
本系统选用VisualBasic语言,具有很多优点。
VisualBasic是一种可视化的、面对对象和采用事件驱动方式的结构化高级程序设计,可用于开发Windows环境下的各种应用程序。
在VisualBasic环境下,利用事件驱动的编程机制、新颖易用的可视化设计工具,使用Windows内部的应用程序接口(API)函数,以及动态链接库(DLL)、动态数据交换(DDE)、对象的链接与嵌入(OLE)、开放式数据访问(ODBC)等技术,可以高效、快速地开发出Windows环境下功能强大、图形界面丰富的应用软件系统。
总的来说,VisualBasic具有以下特点:
(1)面向对象的可视化程序设计
VisualBasic采用面向对象的可视化程序设计方法(OOP),将程序和数据封装在一个类中,类的实例就是对象,每个对象都是可视化的,设计程序时只需用现在的工具根据要求直接拖出所需的对象,并为每一个对象设置属性。
(2)事件驱动的编程机制
事件驱动是非常适合图形用户的编程方式,在图形用户界面的应用程序中,只要编写相应的用户动作代码,因此应用程序代码较短,程序既易编写又易维护。
(3)支持多种数据库访问
(4)支持动态链接库(DLL)、动态数据交换(DDE)与对象连接和嵌入(OLE)
1.3C/S模式
C/S模式是继分布式系统后发展起来的基于计算机网络的一种计算机模式,在网络系统上的计算机系统分成客户机和服务器两类。
用户通过客户机在网络系统上向服务器提出服务请求,服务器根据请求向有关方面提供经过加工的信息。
客户机本身也承担本地信息管理工作,和分布式系统相比,客户机/服务器将信息工作分解为两个部分,一部分由服务器来实现,另一部分由客户机自身来完成。
本文中所设计的考勤管理系统以主计算机作为服务器,其它各个部门的考勤机及其计算机作为客户机。
从客户机上采集考勤信息,发送到服务器,进行统计、打印,客户机也可以统计、打印本部门的考勤信息。
客户端和服务器通过局域网相互联系,各部门管理员可以通过网络查询到其他部门或整个公司个人的考勤情况。
1.4IC卡
IC卡技术现在已被广泛运用在金融、交通、医疗、教育、商业等多个领域,成为存储卡和识别卡的主要形式。
从我国IC卡累计发行量来看,1997年底共发行6000万张(其中银行卡约200万张),到2000年底共发行4亿张。
我国的IC卡应用正进入普及时期,巨大的市场需求吸引了许多国内外商家的兴趣,同时也推动IC卡技术以更快的速度发展。
IC卡(IntegratedCircuitCard),又称集成电路卡或智能卡(SmartCard),将集成电路芯片镶嵌于塑料基片中,封装成卡的形式。
IC卡技术的核心是卡用芯片技术。
IC卡的特点是具有被存储数据和输出数据的能力,并且体积小、存储容量大、安全性高、使用方便等。
根据IC卡中所镶嵌的集成电路不同,一般可将IC卡分成三类:
⑴、存储器卡,卡中的集成电路为EEPROM(可用电擦除的可编程只读存储器)。
⑵、逻辑加密卡,卡中的集成电路具有加密逻辑和EEPROM。
⑶、CPU卡,卡中的集成电路包括中央处理器CPU、EEPROM、随机存储器RAM以及固化的只读存储器ROM中的片内操作系统COS(ChipOperatingSystem)。
根据IC卡与外界数据传送方式不同,又可将IC卡分为接触型IC卡和非接触型IC卡。
接触式IC卡由读写机具卡座上的接触点和卡片上的触点相接触,进行信息的读写;而非接触式IC卡则与读写机具无电路接触,通过无线电磁波(如射频或微波)的传送技术进行信息的读写。
当前使用普遍的是接触型IC卡。
此外,还有一种接触/非接触组合卡(也称双界面卡),通常这种双界面卡都是CPU卡。
1.5考勤机
考勤机是考勤系统中不可缺少的硬件,主要作用是收集并保存员工刷卡的时间数据,并将数据传输给电脑进行处理,具有强大的数据统计管理功能。
考勤机种类很多,分为两大类:
⑴、打卡类,⑵刷卡类,主要分磁卡、条码卡、IC卡三类。
目前应用最多的是磁卡和条码卡考勤机。
本系统使用的是刷卡类考勤机,其优点是可利用计算机统计考勤数据,缺点是IC卡与考勤机经常接触IC卡容易磨损,造成读卡数据部正确,其适用范围是卫生环境较好,人员素质较高的场所。
2.系统分析
2.1工作流程分析
系统管理员设置系统的基本数据(请假类型、部门信息、职务信息),考勤条件、系统设置,各部门管理员设置本部门的员工信息。
员工每天上下班刷卡,各部门考勤机把IC卡中的卡号和员工刷卡信息保存在客户机上,管理员记录每天的请假、缺席、出差等记录保存在客户机上,服务器采集每个客户机的考勤信息,进行统计、打印,生成报表。
各管理员可以对本部门进行排班设置,班次设置则由系统管理员完成。
系统管理员可以对所有员工的信息进行添加、修改、删除,对员工持卡情况进行登记,部门管理员和主管人员最后可以通过局域网了解员工每天的考勤情况,可以对员工做出及时有效的监督管理,促进员工上班积极性,提高员工自律性。
详细工作流程如图2-1所示。
图2-1系统基本工作流程图
2.2需求分析
(1)功能需求
认证用户。
系统在连接数据库前需对用户进行认证。
如果认证通过,执行连接。
对非法用户则拒绝执行操作并关闭程序。
设置上下班时间。
系统应能由用户设置上下班时间,并能根据此时间来判断员工是否迟到或早退。
记录员工出勤状况。
系统必须能记录员工每日的上下班时间,能够对请假或出差的员工进行登记。
并且能记录其请假或出差的详细情况,能够提供多种查询方式供用户查询员工的出勤记录。
统计出勤状况。
系统要能够按用户指定的时间范围对员工的出勤状况进行统计,列出详细的统计结果,其中需包含迟到,早退,请假,出差和旷工次数。
并提供检索功能,使能够对单个员工的出勤统计结果进行查询。
添加删除员工。
系统需能够对员工进行添加或者删除操作。
并能够对新增的员工进行正常的记录,统计和查询操作。
(2)性能需求
系统需能够对数据库进行反复读写操作,并且保证在数据库存有大量信息的时候,系统的所有功能依然能正常运行。
(3)将来可能提出的要求
该系统可扩展按照统计出来的结果来计算员工应得的薪水并会同出勤统计结果一起制成详单提供给管理者。
2.3功能分析
设计本考勤系统目的是为企业解决员工考勤的繁琐工作,减轻企业负担,减少不必要的劳动力、金钱的损耗,提高工作效率,为企业创造更多效益,实现单位考勤管理的系统化、规范化和自动化。
因此本系统主要需要实现以下几个功能:
管理员登录及信息维护,员工信息维护,数据采集,基本数据(请假类型、部门类型、职务类型)维护,数据库管理,查询功能,排班功能,请假、缺席记录等。
该系统的模块结构如图2-2所示。
图2-2系统模块结构
(1)登录系统。
包括用户登录、修改密码、退出系统等。
登录分为两种形式,客户和管理员。
用户名或密码不知道或者错误时将自动以客户登录,除了系统模块外的所有模块都呈现不可激活状态,不能进行操作。
(2)基本操作。
分为六个子模块:
打卡数据采集、班次定义、日常排班、调班换班、请假登记、其他缺席登记等。
打卡数据采集,就是从考勤机上把刷卡记录采集过来,以便在查询、制作报表等时使用,其中包括采集功能、添加考勤记录功能、保存考勤记录功能和删除刷新功能。
(3)数据管理。
管理部门及部门员工的资料信息,对各部门员工信息进行添加、修改、删除、查询(按拼音、工号、姓名、等进行);对IC卡进行标记(有卡、无卡、丢失);对部门、请假类型、和职务类型进行添加删除;对数据库进行管理,备份数据库、初始化数据库、删除过期信息、压缩数据库等。
(4)报表中心。
查询统计个人或部门的日常考勤报表、月考勤报表、考勤明细报表、打卡统计报表等。
(5)IC卡管理。
登记每个员工的IC卡号码,并可修改验证码。
(6)考勤机管理。
考勤机时间设置、考勤机记录总数设置、通信端口选择设置。
(7)软件信息管理:
记录系统的使用者及其联系方式。
2.4数据流图分析
数据流图从数据传递和加工的角度,以图形的方式刻画数据流从输入到输出的传输变换过程。
数据流图是结构化系统分析的主要工具,表示系统内部信息的流向,并表示系统的逻辑处理的功能。
数据流图的作用主要包括:
(1)系统分析员可自顶向下分析系统信息流程;
(2)可在图上画出需要计算机处理的部分;(3)根据数据存贮,进一步作数据分析,向数据库设计过渡;(4)根据数据流向,定出存取方式;(5)对应一个处理过程,用相应的语言、判定表等工具表达处理方法。
通过对企业考勤系统流程、功能的分析,得出考勤管理系统的数据流图如2-3所示。
图2-3系统数据流图
3.系统设计
3.1总体结构设计
根据系统分析的结果,按照结构化的系统设计方法,考勤管理系统需要实现的具体功能模块主要分为系统设置模块、基本操作模块、数据管理模块、报表中心模块、IC卡管理模块、考勤机管理模块、软件信息管理模块等七个大模块。
系统的具体功能如图3-1所示。
3.2详细设计
3.2.1数据库设计
数据库是一种存储数据并对数据进行操作的工具。
数据库的作用在于组织和表达信息,是信息的集合。
功能的实现都离不开数据库的支持,考勤系统的所有信息都是存储在数据库中的,以便用户共享查询使用,因此数据库设计为本系统开发的一部分不可缺少。
本系统使用Access数据库。
为了实现考勤系统所要求的功能,需要建立以下几个数据库:
排班表、缺席登记表、IC卡登记表、调班表、部门表、员工信息表、考勤历史表、临时考勤表、请假登记表、请假类型表、班次表、基本数据结构表、职务表、管理员表等。
由于开发时使用的数据量较小,因此这些表都集中在同一个数据库中。
a)缺席登记表
包括员工号、开始日期、开始时间、结束日期、结束时间、允许人、是否出差、操作员、操作时间、是否已删除等字段,具体设置如表3-1所示。
表3-1Absent表
字段名
数据类型
说明
WorkNo
文本
字段大小为4
StartDate
文本
字段大小为10
StartTime
文本
字段大小为10
EndDate
文本
字段大小为10
EndTime
文本
字段大小为10
AllowMan
文本
字段大小为12
IsEvection
是/否
默认值为否
UserID
文本
字段大小为4
OperateTime
文本
字段大小为16
F_DelFlag
是/否
默认值为否
b)调班表
包括需调班人员员工号、调班日期、允许人、操作时间、操作人、被调班人员员工号、是否已删除等字段,具体设置如表3-2所示。
表3-2ChangePlan表
字段名
数据类型
说明
WorkNo
文本
字段大小为4
ChangeDate
文本
字段大小为10
AllowMan
文本
字段大小为10
OperateMan
文本
字段大小为10
OperateDate
文本
字段大小为10
SoureWorkNo
文本
字段大小为4
F_DelFlag
是/否
默认值为否
c)员工信息表
包括员工号、姓名、拼音首字母、性别、年龄、部门号、职务号、卡状态、备注、是否已删除等字段,具体设置如表3-3所示。
表3-3Employee表
字段名
数据类型
说明
WorkNo
文本
字段大小为4,标识,主键
Name
文本
字段大小为10
Spell
文本
字段大小为10
Sex
文本
字段大小为2
Age
整型
DeptID
长整型
TitleID
长整型
CardStatus
字节
Note
文本
字段大小为50
F_DelFlag
是/否
默认值为否
d)考勤历史表
包括员工号、考勤日期、考勤时间、操作时间、是否已删除等字段,具体设置如表3-4所示。
表3-4KqHistory表
字段名
数据类型
说明
WorkNo
文本
字段大小为4
KqDate
文本
字段大小为10
KqTime
文本
字段大小为10
OperateTime
文本
字段大小为10
IO
是/否
默认值为否
F_DelFlag
是/否
默认值为否
e)班次表
包括编号、班次名、第一时段上班时间、第一时段上班是否考勤、第一时段下班时间、第一时段下班是否考勤、是否为加班、第二时段上班时间、第二时段上班是否考勤、第二时段下班时间、第二时段下班是否考勤、是否为加班是否已删除等字段,具体设置如表3-5所示。
表3-5Shift表
字段名
数据类型
说明
ID
数字
标识,主键
ShiftName
文本
字段大小为10
F_1On
文本
字段大小为5
F_1OnIsKq
是/否
默认值是否
F_1Off
文本
字段大小为5
F_1OffIsKq
是/否
默认值是否
F_1IsAdd
是/否
默认值是否
f)管理员表
包括编号、用户名、密码、是否已删除等字段,具体设置如表3-6所示。
表3-6User表
字段名
数据类型
说明
ID
文本
字段大小为2
Name
文本
字段大小为10
PWD
文本
字段大小为10
F_DelFlag
是/否
默认为否
3.2.2代码设计
代码设计是一项重要的基础性的工作,代码设计的好坏,不仅关系到运行效率,更关系到信息系统的推广与使用。
代码设计必须统筹规划,参照相关的标准和原则。
本系统通过对数据库及彼此之间联系的分析,为了管理员管理维护的方便,本着通用性、简明性、扩展性、识别性的原则,系统自动生成的排班表名代码。
3.2.3用户界面设计
考勤系统为了满足使用者的需要,具体的数据处理功能,从交互界面的性质上主要分为三类:
(1)数据编辑
图3-3请假登记界面
界面样式与原手工处理时纸质表格样式基本一致,以使管理员在操作习惯和方式上比较熟悉和适应。
同时为了减少管理员的输入工作量,减少输入的错误率,本系统使用了许多下拉菜单,日期的输入也由程序本身跳出界面让用户选择,只要查询员工,基本信息系统自动填好。
如请假登记的输入界面,如图3-3所示。
(2)数据查询
系统中所有的查询功能均提供任意条件组合查询,即将要查询的数据库文件的所有字段全部列出,由用户选择任意一个设置条件,进行查询,用户也可以填入多个条件,条件之间是与的关系,如员工查询界面如图3-4所示。
图3-4员工查询界面
(3)数据输出
数据输出分为屏幕输出和打印输出,输出格式完全按照用户的要求报告或报表格式进行设置,符合用户的应用习惯。
屏幕输出界面如图3-5所示。
图3-5流水打卡查询输出界面
4.系统实现
4.1系统界面
本系统采用用户熟悉的软件界面,整个界面颜色鲜明,应用多个图形按钮,整个系统界面友好、美观大方,用户操作方便,容易上手。
具体的界面如图4-1所示。
图4-1考勤系统界面
4.2数据库访问
数据库技术已渐渐成为电子信息系统的重要核心技术,企业管理离不开数据库技术,因为数据库能够提供数据共享,且冗余度低,从而减少应用程序的研制和维护的费用。
数据库访问是本系统的一个关键问题,本系统用DAO数据控件完成对数据库的访问,具体的访问程序如下:
PublicgDataBaseAsDatabase
PublicConstgSTRPWD="software"
DimsPathAsString
DimRstAsDAO.Recordset
sPath="G:
\kaoqin\data\kq.mdb"
IfDir(sPath)<>EmptyThen
SetgDataBase=Workspaces(0).OpenDatabase(sPath,False,False,";pwd="&gSTRPWD)
’打开数据库
Else
MsgBox"找不到数据库!
请您检查一下您的数据库路径!
!
",,gTitle
End
EndIf
4.3系统登录界面
本系统在登录之前,首先是调用系统的公共模块,获得一些基本数据,比如数据库打开,创建关系,初始化端口,初始化排班等,都是在公用模块中进行的。
然后出现登录界面。
登录界面的具体实现如下:
DimnameAsString
DimpasswordAsString
name=Trim(txtUserName.Text)
password=Trim(txtpassword.Text)
DimRstAsDAO.Recordset
SetRst=gDataBase.OpenRecordset("select*fromUser"_
&"wherename='"&name&"'andPWD='"&password&"'")
IfRst.RecordCount<=0Then
IfMsgBox("用户名或密码错误!
!
请重试!
!
",vbInformation,gTitle)=vbOKThen
LoginSucceeded=True
gLoginGrade=0
Me.Hide
EndIf
Else
LoginSucceeded=True
gLoginGrade=1
Me.Hide
EndIf
4.4员工信息管理
图4-2员工管理界面
员工管理基本的信息是重要的,系统中所有功能是围绕员工展开的,如IC卡的管理、人员考勤查询等。
员工管理界面如图4-2所示。
员工管理的核心代码:
Pub