版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、人力资源考勤管理考勤管理系统西交毕业论文摘要考勤管理系统能够帮助公司单位在人事管理上对员工信息进行管理,系统全面实现了公司的基本管理要求,能大大提高公司的工作效率和管理能力。本课题就是为了适应信息化时代潮流而提出的。它的使用结合机读磁卡进行公司的日常考勤,可以实现日常考勤、考勤统计、考勤的查询、员工管理等一系列工作的智能化、数字化,从而代替昔日费时、费力易错、枯燥乏味的人工考勤方式。使公司能够对员工的各种信息进行全面统计,方便公司做出恰当的奖惩制度。本系统我主要设计了登录模块,主模块,考勤管理模块。系统使用delphi7.0软件开发工具,SQLServer数据库。关键词:考勤考勤统计考勤查询模
2、块AbstractThismanagesystemcheckonworkattendancehelpsthepanytomanagestaffinseveralaspects.Thesystemcanprovidedaprehensivefunction,cangreatlyimprovethecapacityofthemanagementandtheworkefficiency.Thisprogramwasmadetoadapttheeratideway,thissystemworkwiththetimecardcanimproveefficiencyofthepany,itcanactua
3、lizethedailycheckonworkattendance,theattendanceStat,theattendancequery,theemployeemanagementandsoon.Thisprogramcanreplacetheoldcheckonworkattendancewhichistimewasteandhardsledding,withitthepanycanmakerightdecisions.Inthewholesystem,Icontrivetheloginmodule,mainmodule,andtheattendancemodule.Oursystemm
4、adeoutofDelphi7.0andSQLServerdatabaseKeyword:CheckonworkattendanceAttendance-StatAttendance-QueryModule西安交通大学毕业设计目录第1章绪论11.1课题应用背景11.2现有产品和存在问题11.3本选题可行性及现实意义21.4课题的制作3第2章需求分析42.1功能需求分析42.2软硬件分析52.3运行环境要求5第3章概要设计与详细设计63.1系统设计原则63.2系统功能设计63.2.1系统的功能模块图73.2.2系统的数据流程图73.2.3主要的数据字典93.2.4系统的主程序流程图103.3各个
5、子模块的功能设计10西安交通大学毕业设计3.3.1用户登录模块103.3.2考勤信息管理模块103.3.3数据库管理模块113.4硬件单元11第4章开发方法及开发工具简介144.1开发方法144.2开发工具15第5章数据库设计165.1数据库设计遵循的一般原则165.2数据库需求分析165.3数据库概念结构设计175.4各数据表的设计185.5数据库安全21第6章实现226.1用户登陆子模块226.2主功能模块236.3时间设置模块246.4考勤管理模块25第7章测试与调试28西安交通大学毕业设计7.1测试287.2调试28第8章结束语328.1研究成果328.2总结与展望32致谢34参考文献
6、35第1章绪论1.1课题应用背景随着信息化的发展,各公司规模的不断扩大,员工管理越来越复杂,考勤的时间又很短,且工作量大,而考勤管理在公司、企业中起着举足轻重的作用。因为人员考勤管理涉及到工资、福利等与员工个人利益相关的事物,一个经济实体考勤管理工作的好坏,直接影响到员工主观能动性的发挥,从而影响到企业的经济利益。伴随着经济实体的发展壮大公司员工的数量也越来越多。显然,传统的考勤制度。如手工考勤已越来越不适应时代的发展,使用计算机进行人员考勤管理已经成为一种迫切的需要。经过我们的详细的调查,目前,许多单位员工考勤还停留在人工管理的基础上,这样的管理方法浪费许多人力和物力,随着科学技术的不断提高
7、这种传统的手工管理方法必然被以计算机为基础的信息管理方法所取代.使用计算机进行管理不仅可以降低管理工作的难度,也可以减少错误和提高效率.因此,开发一套能够为公司提供充足的信息和快捷的查询手段的考勤管理,是非常必要的.本设计是从西安华龙公司的实际考勤业务需求出发,针对该公司人工考勤管理的现状,经过详细的系统调查,为该公司设计同时又有较强的通用性的前提下开发出的一个使用的智能卡考勤系统管理系统。1.2现有产品和存在问题目前市场上,考勤系统已经有很多产品的存在,据我们调研分析,当前的考勤状况非常混乱,高低不齐。有的大公司,有着良好的智能化考勤系统;而有的中小公司的考勤系统不是智能化不强,就是有设备不
8、用,随意性较强。小公司则更加混乱。目前市场上所使用的考勤管理系统有以下三类:1、人工管理系统完全的人工管理,员工每次上班都以签名的方式进行登记,这种管理系统是最原始的管理方法,基本上已被社会所淘汰,但一些小单位仍在使用。2、指纹考勤管理系统指纹考勤管理系统,在一些安全性要求较高的地方有较多应用。在员工考勤系统中,这是较为新型的产品。指纹考勤管理系统是利用人的指纹作为身份唯一识别。硬件是一智能考勤机作为前台,电脑作为后台信息处理,先对员工指纹进行采样库存。考勤时对员工指纹与指纹库进行比较。当确认以后,记录员工的出勤时间、日期、后台管理系统进行核对操作。指纹考勤系统的缺点:利用指纹考勤,理论上是可
9、行的,杜绝了代打卡现象。但实际应用中,有一些人员指纹无法识别,并且会出现“误判”现象,此外对光线、温度、湿度的要求也比较严格,适应性差。3、纸卡考勤系统纸卡考勤系统是半机械化半人工的考勤系统。其特点是价格底,但要求人进行统计和核算。纸卡机的工作原理是利用一个纸卡机,员工用属于自己的纸卡在“统计卡”上打上时间,记录上下班时间。统计卡是消耗品,目前此系统存在的问题是:代打卡现象极为严重,且需专人看管。但投入成本底。纸卡机属于较早的一代考勤系统,十分浪费人力,并没有在真正意义上实现信息化,是面临淘汰的产品,但目前仍被使用。4、智能磁卡考勤系统智能磁卡考勤系统是一个磁卡机和电脑相连,这是真正信息化的考
10、勤系统。有着良好的管理功能,直接对信息进行管理,如统计、打印、修改等。它的工作原理是:利用员工每个人都有一个电脑能够唯一识别的字串,代表个人的唯一编码。电脑以此作为对员工工作的唯一识别和记录处理。虽然,磁卡机考勤系统有着极方便的管理能力。但代打卡现象仍然很严重。智能磁卡是真正意义上的数字化考勤,但仍需改进其不足之处。,智能磁卡考勤系统,较适应大中型企业,有较大的处理和管理功能。1.3本选题可行性及现实意义通过调研,目前市场上的其它各种考勤系统与智能卡考勤系统相比,无一例外地存在不足。市场上的纸卡机考勤系统仍在使用但面临淘汰;指纹考勤系统技术和硬件设备还有待提高。智能磁卡考勤系统是最主流的考勤设
11、备。所以说,智能磁卡考勤系统是具有成熟的市场和技术的!就开发时间短、开发风险小、开发成本底、适用性强等特点,这都是纸卡、指纹考勤系统所不能比拟的,研究和设计它还是有很强的实用性的。智能磁卡考勤系统采用Delphi数据库开发技术和射频磁卡技术开发。与其他考勤系统相比具有以下几个优点:1、适应性范围广。智能磁卡考勤系统不受温度、光线等环境条件的限制;另外,采用Delphi数据库开发技术,支持网络传输,不受距离限制。2、管理功能强大。用Delphi开发的考勤管理系统具有强大的数据库管理功能和可维护性。大大的降低了工作员的工作量和操作难度。3、成本低。由于软件易于操作,大大降低了软件开发成本和维护费用
12、。硬件采用较为成熟的射频卡技术:磁卡机为500-800元,每张磁卡为6-8元。本课题组以“智能卡智能考勤系统设计”为题,在指导老师的指导下,初步开发相关的应用程序,解决传统考勤的不足。这对于我们深入理解所学知识,提高综合应用能力,无疑具有很大的现实意义。1.4课题的制作智能考勤系统的软件开发有我和李晓红共同开发完成,在软件开发中我主要做登录模块,主模块,考勤管理模块的设计和开发工作。第2章需求分析需求分析是进行系统开发的基础。通过需求分析,可以明确用户需求,确定系统功能。具体而言,我们从如下几个方面进行了分析:2.1功能需求分析功能需求主要是为了明确所开发的软件必须具备的功能。考勤是相对繁琐的
13、工作,公司每天都要对员工进行考勤,员工上班时在考勤系统上登陆,下班时进行注销,系统会自动记录,这样可以节省许多时间。当员工不能正常上班时,如出差、请假等,可以给系统操作员说明原因,然后在考勤系统上进行记录,在每个月进行结算工资是根据考勤系统的记录来增减个人薪金。考勤信息的来源,可以直接由考勤人员手工输入,也可以由每个员工登陆考勤系统,进行注册。当然还有其他方式进行考勤信息输入。在本文所阐述的系统中,所有员工都通过智能卡识别来进行登陆和注销,同时系统需要密码才能进入。每个员工的智能卡信息已通过采集,转化为数据信息,每次智能卡识别将激活系统的考勤资料输入模块。这个模块也可以用手工输入,以备例外情况
14、。根据分析,在本系统中,我们需要实现以下一些基本功能:(1)员工管理:可以添加、删除、查询、修改员工的基本资料。(2)帐户管理:系统管理员可以添加、删除、查询系统操作员,并指定各操作人员的权限(权限管理)。(3)考勤管理:系统操作员可以设置上下班时间,并能对出差、加班、请假信息进行添加,修改和删除。(4)。考勤统计管理:操作员可以对员工的考勤资料进行统计,并可产生报表;员工也可以登陆系统查询个人考勤资料。(5)数据库备份:对现有的数据库进行管理,包括数据库压缩、备份和恢复,以方便用户对数据库的管理和维护工作(6)数据查询:可以对员工信息进行查询,也可以对统计信息进行按条件查询。包括迟到、早退、
15、缺勤、信息,出差信息,加班信息和请假信息的查询。(7)打印输出:可以对统计信息,查询信息产生报表并进行打印输出2.2软硬件分析智能磁卡考勤系统采用Delphi数据库开发技术和射频磁卡技术开发。与其他考勤系统相比具有以下几个优点:1、适应性范围广。智能磁卡考勤系统不受温度、光线等环境条件的限制;另外,采用Delphi数据库开发技术,支持网络传输,不受距离限制。2、管理功能强大。基于Delphi的考勤管理系统具有强大的数据库管理功能和可维护性。大大的降低了工作员的工作量和操作难度。3、成本低。由于软件易于操作,大大降低了软件开发成本和维护费用。硬件采用较为成熟的射频卡技术:磁卡机为500-800元
16、,每张磁卡为6-8元。硬件成本较低,且采用非接触式射频技术,硬件属于非易耗品。2.3运行环境要求系统的运行对运行环境还有一些要求:1、硬件环境:处理器:IntelPentium166MX或更高;内存:至少64MB建议128MB或更多;硬盘:1GB;显卡:SVGA显示适配器;2、软件环境:操作系统:Windows98Me/XP数据库:MicrosoftSQLServer软件开发工具:Delphi7.0第3章概要设计与详细设计3.1系统设计原则在当前诸多条件制约下,首先要研究智能考勤系统的实用性,使用户真正得到效益,充分发挥它的作用。同时又要注重它的科学性,以促进管理的现代化。智能考勤系统开发的原
17、则如下:1、可行性原则。系统要保证技术上的可靠性和经济上的可行性。计算机系统、通讯网络系统设计和数据设计,在技术上必须是成熟的,经实践检验是成功的,在经济上是可能实现的。2、适应性原则。系统要保证可扩展性、可维护性。系统软、硬件都要有扩充升级的充分余地,系统要便于维护,系统对用户的需求要有一定的适应能力。3、安全性及保密性原则。智能考勤系统是实现薪金结算的基础,如果哪一个环节出现问题,例如系统操作员数据泄密,可能会导致财务结算系统混乱,后果不堪设想。因此,必须设置用户权限,以保证系统有较好的安全性,同时,系统也应有较强的数据备份和数据恢复功能。4、人机结合原则。人工信息收集系统与计算机管理信息
18、系统要紧密结合。完整、准确、及时的信息是信息系统运行的基础。计算机系统是提供信息处理及辅助决策的技术手段,人工系统与计算机系统要有机的结合,友好的人-机界面是系统设计的主要原则之一。5、系统工程原则。系统调查、系统分析、系统设计、软件开发以及实施都要遵照系统工程的方法和步骤一步一步地进行,以便确保系统的整体性。6、统一规划、分期实施、逐步完善原则。管理信息系统要按规划、分阶段实施,由点到面逐步扩充,逐步完善,循序渐进。3.2系统功能设计系统设计是根据需求分析的结果,设计系统的模块和结果之间的内在联系。3.2.1系统的功能模块图图3-1系统的功能模块图3.2.2系统的数据流程图出勤的原始时间记录
19、主要来源于智能卡考勤机,并且以固定格式保存在数据库中。系统的各部分数据流程图如下所示.1)出勤管理数据流程图如下所示:D1管理员信息D2员工信息系统管理员11系统登陆12系统管理出勤信息D3出勤信息图3-2出勤管理数据流程图(2)添加加班记录数据流图如下所示:图3-3添加加班记录数据流图(3)添加请假记录录数据流图如下所示:31经理请假批示请假信息D5员工请假信息系统管理员31记录登记32系统管理请假信息D6出勤信息图3-4添加请假记录数据流图3.2.3主要的数据字典名字:加班表3-6加班表的数据图3-5员工编号的数据字典图描述:每天记录员工出勤状态字典的表名字请假记录员工请假名字:考勤表定义
20、:加班表员工编号日描述:每天记录员工出勤状态的描述:期加班时间信息的表定义请假表员工编号开始时间结束时间描表位置:统计时,将其内容计入定义:考勤表员工编号日期统计表并判断员工状态刷卡时间出入状态述位置:统计时,将其内容计入统计表并判断员工状态位置:由统计表对其进行统计图3-7考勤表的数据字典图3-8请假表的数据字典3.2.4系统的主程序流程图图3-9系统主程序流程图3.3各个子模块的功能设计3.3.1用户登录模块功能:由用户输入用户名和密码。如果用户名和相应密码正确,则根据该用户的权限类别进行权限设置;若用户名和密码错误,则进行错误提示,且只允许用户输入3次,超过3次系统自动退出。系统管理员进
21、入考勤操作主界面。一般管理员进入一般管理员界面,相应的操作会受到限制。例如:不能添加,删除管理员,不能修改用户权限。3.3.2考勤信息管理模块功能:本模块主要实现对上、下班时间设置,同时对出勤信息,加班信息,请假信息,出差信息进行添加、删除、修改等操作。功能结构图如图3-10所示:图3-10考勤信息管理模块功能结构图相关数据表:考勤表,请假表,出差表,加班表。3.3.3数据库管理模块功能:本模块实现对系统数据库的备份和还原,以防止出现数据丢失等致命错误。功能结构图如图3-11所示:图3-11数据库管理模块功能结构图3.4硬件单元系统的硬件有射频卡、读卡机、计算机组成。射频卡读/写单元是一个比较
22、常用的自动控制设备部件这是一种非接触式读/写程序。射频卡读写单元的结构框图如下:图3-12射频卡读写单元的结构框图射频卡读/写单元产品采用串口通信技术。射频卡读写单元提供与微控制器通信的TTL通信接口。数据传输采用标准串行方式。主板模块采用四芯排线与外界相连。排线定义方式如下:(芯片端口向上,面对接口插座)从左到右依次为Vcc,GND,TXD,RXD。1、射频卡读/写单元特性(1)具有精简的指令集,可将射频卡基本操作集成几条命令,操作简便。(2)具有读、写、增、减、初始化射频卡装载密码等功能。(3)对射频工作的频率为13.56MHz。(4)对射频卡的操作距离为25mm。(5)数据传输速率115
23、200bit/s,通信错误侦测。(6)TTL通信接口。(7)单电源供电:+5V。2、射频卡读/写命令集(1)LOADKEY:改变存放于RF读写单元内部的授权密码。(2)READ:读出卡片中模块的数据。(3)WRITE:将数据写入卡片中的模块。(4)INITVAL:将卡片中某扇区的内容赋予初值,并初始化为可供增减的模块。(5)DECREMENT:将卡片中某扇区的内容减去某一数值。(6)INCREMENT:将卡片中某扇区的内容加上某一数值。3、射频卡读/写单元编程协议协议规定:该通信数据传输速率115200BIT/S。通信格式为一位起始位,八位数据位。一位结束位,无奇偶校验位,数据最大长度为32字
24、节。开始通信时,接收机和发送机都处于就绪状态。首先,发送机发送一个起始信号(STX),正常返回一个DLE信号,之后开始通信,反之,若无应答,重复三次。三次之后仍无应答则停止,不再通信。当数据块中的数据为10H时将被发送两次。通信数据之间的最大时间间隔为0.5S,如果时间间隔大于0.5S就认为通信失败。第4章开发方法及开发工具简介4.1开发方法目前流行的系统开发方法主要有生命周期法、快速原型法、面向对象开发方法等,每种方法各有特色。生命周期法是一种有效、成熟的方法,它对软件生产实现工程化起了重要作用,但是应用该方法的前提条件是必须确定系统的需求,才能得到预期的正确结果。对于信息系统来讲,由于其问
25、题空间十分庞大,不论开发者在系统分析时采用何种严格的方法力争准确地描述用户需求,在系统没有开发到一定程度,用户对系统的理解达不到一定的程度是无法准确表达出需求的。这并不是说用户需求捉摸不定。为了解决需求的模糊性和变化性,出现了另一类系统开发方法,即快速原型法。快速原型法是在系统分析基础上,由开发者尽快构造出一个应用系统原型,经用户初步应用,对系统有了一定的认识后,再由系统开发者与用户反复进行交流,逐步完善达到最终目标。快速原型法不仅是一种方法,更是一种技巧,它可以运用与系统开发的各个阶段,例如在系统分析阶段用于提炼用户需求,在系统实现阶段开发软件原型等。面向对象的开发方法着眼于所研究的问题,对
26、问题空间进行自然分割,识别其中的对象及其相互联系,建立问题空间的信息模型。其基本思想是把信息系统本身看成是一系列离散的对象的集合。这些对象即包括数据结构,也包括在这些数据结构上的操作与行为。各对象之间由事件触发,引发互通消息而实现互操作。这样设计出的软件必然是模块化的、可重用的、可扩充的和可移植的,克服了过去由于分析设计与实施割裂所造成的程序编制必须到设计后期才能进行的程序沉淀现象。面向对象方法的主要优点并不是减少开发时间,它可能比传统的结构化方法的开发时间还要长一些。它的主要目标是促进未来系统的可重用性,减少后续阶段的开发量,从而大大提高软件生产率与可维护性。综观上述各种方法,考虑到信息系统
27、开发过程的顺序性和开发过程的固有特点,结合实际开发的经验教训,我们认为各种不同的系统开发方法适用于各自不同的领域。本设计主要采用面向对象的开发方法。4.2开发工具“智能考勤系统”设计为Client/Server结构的应用程序。客户端采用Delphi7.0作为前端开发工具,采用ADO设置数据源,后台采用MicrosoftSQLServer2000数据库。系统运行的操作系统为Windows98MeXP。下面简要介绍各个开发工具。Delphi被称为第四代程序开发语言,是一种常用的可视化编程工具,集成了大量的可视化控件,程序员只需要做少量的工作就能完成大量复杂的工作。同时,Delphi还具有功能强大,
28、运行高效,界面简洁等特点。它与VisualC+相比,在功能上豪不逊色,而且更容易掌握;与VisualBasic相比,Delphi具有更强大的功能。可以说Delphi集合了VisualC+强大的功能和VisualBasic的操作简便。因此,利用Delphi编写Windows开发应用程序十分方便。Delphi7.0是公司在2002年8月推出的新版本。与以往的各个版本相比,不仅继承了功能强大、成熟而丰富的组件,同时又增加了一些新的特性,如企业应用的MDA开发,可视化的快速Web开发,免费的Datasnap多层应用开发以及基于WindowsXP的应用。MicrosoftSQLServer2000是Mi
29、crosoft在SQLServer7.0基础上推出的新一代大型电子商务、数据转换服务、数据仓库服务等方面引入了大量新的特性,为Web标准提供了大量支持,并为系统管理提供了许多有力的工具。第5章数据库设计5.1数据库设计遵循的一般原则数据库设计是构建一个系统的关键。这是因为数据库设计的优劣将直接影响系统数据的安全性、可靠性。在数据库的设计过程中,需要遵循的一般原则是:(1)、数据库各表的设计要反映现实中的事物。数据表中的字段类型和大小要符合使用习惯。(2)、减少数据库的冗余和数据的不一致性。数据库应用的一个特点是对数据库的频繁操作,每次操作可能只会涉及一个表,也可以同时涉及多个表,也有可能对一个
30、数据表进行多个操作,在这种情况下,由于数据冗余和数据不一致时,可能会引起错误。(3)、要有助于提高数据处理速度。程序访问数据库的速度依赖于硬件的速度,数据量的大小和数据表设计的优劣,而前两个因素是很难更改的。(4)、要保证数据库的安全。安全性是数据库应用软件的重要要求。5.2数据库需求分析根据数据流程图(图3-2,3-3,3-4),可以列出以下管理系统所需的数据项和数据结构。1、出勤记录:记录号、员工、出入情况、出入时间。2、请假记录:记录号、员工、假期起始时间、假期结束时间、请假原由。3、加班记录:记录号、员工、加班时间长度、日期。4、出差记录:记录号、员工、出差起始时间、出差结束时间、具体
31、描述。5、月度考勤统计:记录号、员工、年月、累计正常工作时间、累计请假时间、累计加班时间、累计出差时间、迟到次数、早退次数、矿工次数。6、所需的外部数据支持:(1)、员工信息:员工号、密码、权限、姓名、部门、当前状态等。(2)部门信息:部门编号、名称等。5.3数据库概念结构设计出勤管理系统的E-R图:用户权限员工地址员工编号所属部门员工密码记录操作M员工编号具体时间图5-1出勤管理系统的E-R图请假管理,出差管理,加班管理的概念结构设计基本相同,现举例请假管理的E-R图如下页:用户权限员工编号图5-2请假管理系统的E-R图密码5.4各数据表的设计所属部门数据库设计是构建一个系统的关键,根据系统
32、各模块的功能和它们要处理的数据,可以基本确定数据库中各表的字段结构。记录本系统采用SQLServer2000建立数据库。数据库中表结构设计如下:请假缘由请假结束时间表5-1:ATTENDANCE出勤记录表字段名ID员工编号数据类型INTEGRE是否可空NOTNULL说明记录编号(主关键字)PERSONIN_OUTIO_TIMECHAR(6)CHAR(1)DATENOTNULLNOTNULLNOTNULL员工号(外部关键字)出入情况出入时间表5-2:LEAVE请假记录表字段名IDPERSON数据类型INTEGERCHAR(6)是否可空NOTNULLNOTNULL说明记录编号员工号START-TI
33、MEDATEEND-TIMEDATENOTNULLNOTNULL假期开始时间假期结束时间REASONVARCHAR(10)NOTNULL请假原由表5-3:LOGIN管理员用户表字段名数据类是否可空说明型USERNAMECHAR(10)NOTNULLPASSWDCHAR(10)NOTNULLAUTHORITYCHAR(10)YES表5-4:OVERTIME加班时间用户名密码用户权限字段名数据类是否可空说明ID型INTEGERNOTNULL记录编号PERSONCHAR(6)NOTNULL员工号WORE-HOURSSMALLINTWORE-DATEDATENOTNULLNOTNULL加班时间加班日期
34、表5-5:ERRAND出差记录表字段名IDPERSONSTART-TIMEEND-TIME数据类型INTGERCHAR(6)DATEDATE是否可空NOTNULLNOTNULLNOTNULLNOTNULL说明记录编号员工号出差开始时间出差结束时间DESCRIPTIONVARCHAR(6)NOTNULL具体描述表5-6:PERSON员工个人信息表字段名数据类型是否可空说明IDPASSWDCHAR(6)NOTNULL员工号(主关键字)CHAR(20)NOTNULL密码AUTHORITYNAMECHAR(1)VARCHARYESYES用户权限姓名SEX(10)CHAR(1)NOTNULL性别BIRT
35、HDAYDATEYES生日DEPARTEMENTCHAR(3)YES所在部门JOBEDULEVELSPECIALTYCHAR(3)CHAR(1)VARCHARYESYESYES职务受教育程度专业技能(20)ADDRESSVARCHAR(50)TELVARCHAR(20)EMAILVARCHAR(50)YES家庭住址YES联系电话YES电子邮箱STATEREMARKCHAR(1)VARCHAYESYES当前状态(T,F)备注(400)表5-7:DERARTMENT部门信息表字段名ID数据类型CHAR(3)是否可空NOTNULL说明部门编号NAMEVARCHAR(20)NOTNULL部门名称MAN
36、AGERCHAR(6)INTROVARCHARYESYES部门经理备注(4000)表5-8:COUNTER计数器表字段名ID数据类型CHAR(1)是否可空NOTNULL说明计数器编号COUNTER-VALUEINTEGERDESCRIPTIONVARCHARNOTNULLYES记数值描述(10)5.5数据库安全用DELPHI的DBNAVIGATOR、TABLE、DATASET组件来实现多客户的程序时,向主表插入一条新记录,编辑好后直接提交,往往会出现线路被占用不能提交数据错误。在数据库中有一个特定的名词“脏数据”,用来描述那些被某事物变更但是还没有提交的数据。那么如何解决用户同时访问数据的问题
37、呢?总不能因为并发而限制用户的操作吧!并发控制的解决方案是“锁(LOCKING)”和事物。从数据库的角度来看,锁有两种类型:排它锁(EXCLUSIVELOCKS,简称X锁)和共享锁(SHARELOCKS,简称S锁)。X锁只允许加锁的事物进行操作,其他事物禁止加锁和任何操作。其他事物必须等待解锁才能继续运行!S锁可以允许多个事物同时对数据加锁,如果事物T对数据R加了S锁,那么其他的事物就不能再对R加X锁这样可以保证其他事物不能修改R。另外,还有一个加锁的范围需要考虑,我们可以进行行加锁,也可以进行表加锁,甚至还可以进行数据库加锁。加锁的范围越大,那么实现就越简单,开销就越小,数据的并发程序就越底
38、!反之,如果加锁范围越小,那么实现就越复杂,开销就越大,数据的并发程序就越高!一般的,考虑到加锁成本和性能,处理少量数据的事物应该尽可能减少加锁的作用范围,提高数据的并发程度,应该采用行锁,防止则应该采用表锁等。另外,当一个事物操作完毕的时候,应尽可能快的解锁。第6章实现6.1用户登陆子模块设置登陆界面是保障系统安全的一种手段,一般的数据库应用系统都需要进行登陆才能进入系统。在这个模块里,主要处理用户输入的用户名和用户密码,程序根据用户名和用户密码进行权限判断,并进入不同的操作界面。用户登录模块的程序流程图如图6-1所示:图6-1用户登陆模块程序流程图用户登录界面如图6-2所示:图6-2用户登
39、录界面6.2主功能模块系统的主功能模块界面如下图:图6-3系统主功能界面主功能界面的formcreat事件代码为:frmsplash:=(application);loginfrm:=(application);whilen=3thenbeginmessagedlg(您已经登录失败3次,程序将终止,mtwarning,mbok,0);close;exit;endelsemessagedlg(密码错误,请重试,mtwarning,mbok,0);end;6.3时间设置模块考勤系统的时间设置界面如下:图6-4时间设置界面修改按钮的click事件代码为:varMyInifile:Tinifile;b
40、eginMyInifile:=(ExtractFilePath(Paramstr(0)+);(WorkPlan,Time1,i_time1.Text);(WorkPlan,Time2,i_time2.Text);(WorkPlan,Time3,i_time3.Text);(WorkPlan,Time4,i_time4.Text);end;6.4考勤管理模块(1)考勤管理模块的界面如下页图:图6-5出勤记录界面单个员工的click事件代码为:beginT_:=ID=A;T_:=True;T_;counter:=T_counterCOUNTER_VALUE;Inc(counter);T_;T_co
41、unterCOUNTER_VALUE:=counter;T_;T_;ifi_in_=0thenin_out:=Oelsein_out:=I;io_time:=StrToDateTime(i_io_);T_:=False;T_;T_(counter,Person_id,in_out,io_time);end;(2)加班记录与请假记录和出差记录模块:加班记录与请假记录和出差记录模块界面相同如下:图6-6请假记录界面考勤修改的按条件检索的click事件代码为:beginClose;FilterStr:=;ifSeek_by_thenFilterStr:=PERSON=+Seek_person_+;i
42、fSeek_by_thenbeginiflength(FilterStr)0thenFilterStr:=FilterStr+AND;FilterStr:=FilterStr+IO_TIME+Seek_start_;FilterStr:=FilterStr+ANDIO_TIME0thenbeginFilter:=FilterStr;Filtered:=True;endelseFiltered:=False;Open;end;end;第7章测试与调试7.1测试白盒测试是一种以程序的内部逻辑结构为依据而设计测试用例的方法,因而又称为结构测试法或玻璃盒测试法。合理的白盒测试就是要选取足够的测试用例,
43、对源代码实行比较充分的覆盖,以便尽可能多的发现程序中的错误。主要有两种方法:一种是逻辑覆盖法,另一种称为路径覆盖法。在这里我们采用逻辑覆盖法。在开发智能考勤系统的时候,我们对系统使用白盒测试技术进行了全面测试,采取的具体测试思路是:1.菜单项测试:为了保证每一项下拉菜单能正确实现系统设计的功能,我把考勤系统所需的所有信息按出勤、迟到、早退、出差、请假等分类全部输入到系统中,并对每一个菜单反复进行增加、删除、修改、打印报表操作,从而保证了菜单项的正确实现。2.数据跟踪:完成菜单项测试后,我对系统内的每一个数据进行了跟踪测试。例如:对考勤管理的“请假”这一项,我首先给其加一条请假记录:工号:L00
44、02,姓名:刘海柱,和请假起至时间,请假原因等信息后;然后在查询模块中,分别进行“按工号查询”、“按时间查询”和“按时间查询”该项记录;并且在统计模块中统计“刘海柱”的请假时间、请假次数等依次验证数据流处理的正确性。3.移植测试:我把系统拷贝到其他计算机上运行,看其移植性能和对环境的要求。综合测试:在以上测试的基础上对系统功能进行整体的测试,依此来检验系统功能是否符合设计的要求。7.2调试(1)通过以下具体示例对登录模块进行调试,如图7-1所示:图7-1登录模块流程图满足条件覆盖的测试用例如下:覆盖方法测试路径次数=3次?预期结果条s-a-b-d-e-ffalse进入系统件覆盖s-a-b-c-
45、a-.a-b-c-a-ftrue退出系统s-a-.b-d-e-.a-b-d-e-ftrue退出系统(2)对考勤管理模块进行调试:首先是添加考勤记录:添加数据为:员工编号:L0002,则对应的员工姓名显示为:刘海柱,选者出入状态:入。点击单个员工按纽,则出勤记录自动添加一条记录为:员工编号出入状态时间L0002I2005-12-28:05删除记录:选中要删除的记录,点击删除当前记录,则系统自动删除此条记录,表中不再有相应的记录。检索记录:可以按照时间或员工编号进行检索。例如:选中时间,输入时间范围,点击按条件检索,则表中会显示在时间范围内的记录。选中员工,输入员工编号,点击按条件检索,则表中会显
46、示该员工的记录。其它添加出差记录,添加请假记录,添加加班记录的测试方法与添加考勤记录的测试方法相同。按照这样的方法对逐一功能进行测试,修改错误的程序代码,最后完成整个系统的调试。第8章结束语8.1研究成果通过实施考勤管理系统,初步实现了考勤管理的信息化。以前的公司单位需要大量的人力记录统计数据和保存excel文件。由于excel不是关系数据库结构,缺少对数据的约束,因此很容易造成数据不一致,给查询带来不便。实施考勤管理系统以来,数据实现集中存储,只需简单的操作即可完成数据的统计和查询工作。通过数据导出和打印功能,可以直接打印员工的出勤信息和其它状态信息,为公司单位对员工管理提供数据参考。系统实
47、现了对员工出勤的记录统计管理,将统计信息备案有利于考勤管理的安全性。通过对考勤系统的管理,管理者能够实时查看员工的出勤情况,请假情况,出差情况,加班情况。及时做出决策和调整,大大提高了公司单位的工作效率,降低了管理成本。考勤管理系统作为公司管理者的平台,在实际应用中有其巨大的发展潜力。除已实现的功能外,还应该继续完善开发工作,如:如何杜绝员工代打卡现象,如何实现在线考勤等。8.2总结与展望通过这次毕业设计,我大致了解了在进行软件开发工作时的基本过程,并且从中获得了许多从课堂上学不到的知识和有意义的收获,其中我对以下几点有很深刻的体会:1、编程中定义窗体及变量的名称时,一定要规范,必要时加上注解,不要想当然的定义某个变量,常量等。标准的定义方式,有助于其他编程人员更容易的看懂程序代码,以便以后进行维护。2、在工作中要多与小组成员沟通与讨论,这样可以保证系统整体的一致性
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 部编版八年级语文下册全册教案
- 土壤沉积物中全氟辛酸(PFOA)、全氟辛烷磺酸(PFOS)
- 天津市六区行政区划图
- 贵金属压延加工在柔性电子器件的应用考核试卷
- 铁路工程合同管理与变更控制考核试卷
- 隧道施工机械的能效改进与减排措施考核试卷
- 铜材加工中的金属成形极限研究考核试卷
- 铝冶炼与区域经济结构调整考核试卷
- 铝矿选矿过程中的浮选工艺优化考核试卷
- 系统稳定性分析-第3篇-洞察分析
- 中小企业内部控制与风险管理(第二版)项目一:内部控制与风险管理基础
- 驾驶舱资源管理绪论课件
- 声艺 EPM8操作手册
- 西北农林科技大学专业学位研究生课程案例库建设项目申请书(MBA)
- 外墙保温、真石漆施工技术交底
- 车床日常点检表
- 配网工程施工监理管理要点~.docx
- 国内No.7信令方式技术规范----综合业务数字网用户部分(ISUP)
- 尾矿库在线监测方案)
- 房屋安全简易鉴定表.docx
- FSSC运营管理制度(培训管理办法)
评论
0/150
提交评论