考勤管理系统的开发 72页

  • 2.87 MB
  • 2022-05-17 13:11:36 发布

考勤管理系统的开发

  • 72页
  • 当前文档由用户上传发布,收益归属用户
  1. 1、本文档共5页,可阅读全部内容。
  2. 2、本文档内容版权归属内容提供方,所产生的收益全部归内容提供方所有。如果您对本文有版权争议,可选择认领,认领后既往收益都归您。
  3. 3、本文档由用户上传,本站不保证质量和数量令人满意,可能有诸多瑕疵,付费之前,请仔细先通过免费阅读内容等途径辨别内容交易风险。如存在严重挂羊头卖狗肉之情形,可联系本站下载客服投诉处理。
  4. 文档侵权举报电话:19940600175。
论文题目考勤管理系统的开发工程领域软件工程指导教师吴洪教授作者姓名楼伯飞学号200792312056万方数据 分类号密级注1UDC学位论文考勤管理系统的开发(题名和副题名)楼伯飞(作者姓名)指导教师姓名吴洪博士电子科技大学成都郑群高工中外建上海建筑设计有限公司上海(职务、职称、学位、单位名称及地址)申请专业学位级别硕士专业学位类别工程硕士工程领域名称软件工程提交论文日期2011.03.25论文答辩日期2011.04.30学位授予单位和日期电子科技大学答辩委员会主席评阅人注1:注明《国际十进分类法UDC》的类号万方数据 独创性声明本人声明所呈交的学位论文是本人在导师指导下进行的研究工作及取得的研究成果。据我所知,除了文中特别加以标注和致谢的地方外,论文中不包含其他人已经发表或撰写过的研究成果,也不包含为获得电子科技大学或其它教育机构的学位或证书而使用过的材料。与我一同工作的同志对本研究所做的任何贡献均已在论文中作了明确的说明并表示谢意。签名:日期:年月日关于论文使用授权的说明本学位论文作者完全了解电子科技大学有关保留、使用学位论文的规定,有权保留并向国家有关部门或机构送交论文的复印件和磁盘,允许论文被查阅和借阅。本人授权电子科技大学可以将学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存、汇编学位论文。(保密的学位论文在解密后应遵守此规定)签名:导师签名:日期:年月日万方数据 摘要摘要近些年来,随着社会的发展和科技的进步,人们的工作与生活也越来越离不开计算机,对于各大企业来说就更是如此了。在各个企业中,企业员工的考勤工作不仅工作量大,而且时效性强。过去,企业多采用签到和报表的形式进行管理,效率和透明度较差,并且也容易出错;随着数据库技术的发展和企业信息化建设的进行,使用计算机管理企业考勤工作也成为大势所趋,它为企业的考勤工作节约了大量的人力和物力,也大大减轻了考勤工作人员的工作量。本系统结合企业实际考勤管理制度,经过实际的需求分析,采用功能强大的VisualBasic6.0作为开发工具,数据库采用MicrosoftSQLServer2008。整个系统从符合操作简便、界面友好、灵活、实用、安全的要求出发,完成日常的考勤操作,包括系统管理、数据管理、排班管理、加班管理、请假管理、考勤管理等工作。本文系统地阐述了企业考勤管理系统的设计与开发的全过程,包括系统整体设计,逻辑框架与数据流程,各个功能模块划分,系统功能模块的设计与具体实现等部分。关键词:考勤;考勤管理系统;数据库;I万方数据 AbstractAbstractInrcentyears,alongwiththeadvanceofthesocietyandtechnology,human‟sworkandlifearemoreandmoredependenttocomputers,particularlyforthoseworkinginthelargeenterprises.Intheenterprise,themanagementonemployeeworkattendancenotonlyappliesahighworkload,butrequiresanon-timeresponseaswell.Traditionally,thecompaniesmorelikelyusesthemannersofsign-inandreportformtomanageemployee‟sattendancerecords.Thismethodpresentslowefficiencyandlacksoftransparency,whichleadstoahighmistakerate.Withthedevelopmentofthedatabasetechnologyandconstructionofenterpriseinformationsystems,theapplicationofcomputersystemstomanagetheemployeeattendancerecordsinenterprisesbecomesamaintrend.Thisapproachsaveslaborandcostintheemployeeattendancemanagementfortheenterprise,andalsosignificantlyreducestheworkloadofthestaff.Thissystemcombinestheactualattendanceenterprisemanagementsystem,theactualdemandanalysis,theuseofpowerfuldevelopmenttoolsasVisualBasic6.0,thedatabaseusesMicrosoftSQLServer2008.Theentiresystemfromthesimple,userfriendly,flexible,practicalandsafetyrequirements,thecompletionofdailyattendanceoperations,includingsystemsmanagement,datamanagement,schedulingmanagement,overtimemanagement,leavemanagement,attendancemanagement.Thispapersystematicallydescribesthedesignofenterprisetimeandattendancemanagementsystemanddevelopmentoftheentireprocess,includingoverallsystemdesign,logicalframeworkanddataflow,eachfunctionmodule,thesystemfunctionmodulesandotherpartsofthedesignandrealization.Keywords:employeeattendance;attendancemanagementsystem;database;II万方数据 目录目录第一章绪论....................................................................................................................11.1课题的研究背景....................................................................................................11.2国内外研究现状....................................................................................................31.3课题研究的目的和意义........................................................................................51.4本文研究的主要内容............................................................................................6第二章开发工具介绍....................................................................................................82.1开发平台和技术简介............................................................................................82.1.1C/S架构...........................................................................................................82.1.2WindowsServer2008简介............................................................................102.1.3Windowsservice简介....................................................................................122.1.4MicrosoftSQLServer简介...........................................................................132.2开发语言的简介..................................................................................................152.2.1VB6.0的简介.................................................................................................152.2.2VBScript的简介............................................................................................172.3VB的数据库访问技术........................................................................................18第三章系统分析..........................................................................................................213.1系统需求分析......................................................................................................213.2基本功能介绍......................................................................................................213.3可行性分析..........................................................................................................223.3.1业务可行性...................................................................................................223.3.2技术可行性分析...........................................................................................233.3.2操作可行性分析...........................................................................................243.4数据库需求分析..................................................................................................24第四章系统设计..........................................................................................................264.1系统功能概述......................................................................................................264.2系统功能分析......................................................................................................264.2.1系统管理模块...............................................................................................27III万方数据 目录1.1数据管理模块...............................................................................................281.2排班管理模块...............................................................................................281.3加班管理模块...............................................................................................281.4请假管理模块...............................................................................................291.5考勤管理模块...............................................................................................291.6工资管理模块...............................................................................................292.1系统数据库设计...................................................................................................302.1.1数据库概念结构设计...................................................................................302.1.2数据库概念结构设计...................................................................................34第五章系统实现..........................................................................................................392.2.1ODBC数据源的配置...........................................................................................392.2.2系统模块..............................................................................................................402.2.3登录模块的实现..................................................................................................412.2.4系统主窗体的实现..............................................................................................432.2.5系统管理模块的实现..........................................................................................453.1用户管理.......................................................................................................453.2修改密码.......................................................................................................462.2.6数据管理模块的实现..........................................................................................473.3.1基础数据管理...............................................................................................473.3.2职员信息管理...............................................................................................472.2.7排班管理模块的实现..........................................................................................483.3.2员工排班记录...............................................................................................482.2.8排班管理模块的实现..........................................................................................494.1新增请假申请...............................................................................................494.2请假信息查询...............................................................................................502.2.9考勤管理模块的实现..........................................................................................512.2.10工资管理模块的实现........................................................................................524.2.1奖罚设置.....................................................................................................524.2.2工资查询.....................................................................................................52第六章结论与展望......................................................................................................546.1当前系统的局限性分析......................................................................................54IV万方数据 目录1.1系统未来的发展..................................................................................................552.1系统架构的改变...........................................................................................552.2当前问题的解决方案...................................................................................55致谢................................................................................................................................57参考文献........................................................................................................................58附录A数据库表........................................................................................................60V万方数据 第一章绪论第一章绪论1.1课题的研究背景现阶段的中国企业管理,正处于从传统计划经济体制转向现代市场经济体制的变革时期。中国的企业管理,不仅要加强,而且面临着迫切的改革形势。这是中国企业管理的最基本特征[1]。企业管理是指以单位内部的人和相关的是为对象,在一定管理思想和原则的指导下,还用组织、控制、监督等手段,形成了人与人、人与事之间相互关系的某种状态,以实现一定目标的一系列管理行为的总和。企业管理要通过不断的改革、创新、发展、才能把握住企业战略思想演进了脉络及规律,使企业在竞争激烈并且保持持续发展。管理与人类几乎同时产生,它产生于人类社会的共同劳动和集体协作。作为整合、优化资源配置的手段,管理也是生产力,特别是在当今科学技术高度发达,网络经济、知识经济作用凸显的年代,其管理显得更为重要。同时,由于企业经营环境不同,管理的作用也迥然不同。自20世纪末以来,有三种因素对企业的经营造成了巨大的影响,其一是以知识经济为主体的新经济特性形成;其二是经济化趋势的日益显现;其三是基于互联网技术的网络经济出现。在这三种因素的作用下,企业外部环境日趋开放,国际市场竞争更加激烈。加强管理,应对新经济环境下的激烈竞争,这既向我国企业提出严峻的挑战,更为企业提高了实现快速发展的历史机遇。从企业管理组织形态上看,传统计划经济体制下的国有企业,是单一工厂型的工厂管理。中国国有企业改革的方向是建立现代企业制度。现代企业制度是以公司制度为主体的市场经济体制的基本成分。1993年12月29日制定的《中华人民共和国公司法》,是中国国有企业改革的基本法律依据。有限责任公司和股份有限公司是国有企业进行公司制改造的基本形式。因此,从传统国有企业管理转向现代企业管理,就是按照现代公司型的企业管理来改革国有企业的单一工厂型企业管理。目前中国二十多万家有限责任公司、一万多家股份有限公司、一千多1万方数据 电子科技大学硕士学位论文家上市公司的企业管理,与改制前的国有企业管理相比较,在不同程度上提高了企业管理水平,取得了明显效果。中国的企业管理,正在按照现代公司管理的内容,实行生产管理、营销管理、人力资源管理、科技开发管理、财务管理的综合性现代化管理。现在越来越多的企业讲究“名牌效应”,重视树立本企业形象,在激烈的市场竞争中确立企业的名牌意识。这种趋势表明,中国企业的现代管理,正在进入一个新的阶段,正与包括英国在内的世界经济发达国家的现代公司管理接轨。中国企业管理的未来发展,面临着更加激烈的过内外市场竞争的挑战。市场竞争是实力的竞争,是企业管理水平的竞争。目前中国一些企业存在着管理基础薄弱、管理次序混乱、管理机制僵化、组织结构刚性、生产活动封闭、资源浪费严重诸多问题,再加上规模经济效益不佳,致使企业的市场竞争力低下。这些问题在各类企业和各个行业以不同形式表现出来。中国企业管理的未来发展,不仅面临着以客户为中心的日趋激烈的市场竞争的挑战,在规模、成本、价格、质量、交货期、售后服务方面不断增强市场竞争力,而且还面临着以日新月异的技术变革为中心的信息技术、知识经济的挑战。因此,研究信息技术、知识经济对企业管理的影响,是中国企业管理的重要任务。随着计算机的普及和计算机科学技术的飞速发展,人们开始越来越多地利用计算机解决实际问题。信息成为重要的战略资源。在工业社会,能源和材料是最重要的资源。信息技术的发展,使人们日益认识到信息在促进经济发展中的重要作用。信息被当作是一种重要的战略资源。一个企业如果不实现信息化,就很难增加生产,提高与其他企业的竞争能力;一个国家如果缺乏信息资源,又不重视信息的利用和交换能力,就只能是一个贫穷落后的国家。目前,信息业已上升为一个国家最重要的产业。所以大家需要一套比较系统的企业管理理念,并且建立了一整套比较规范的企业管理信息系统对于企业来说至关重要。企业管理系统的先进程度越来越高,企业的信息化管理从单一的办公室无纸化,逐渐演变成了管理信息系统一体化和集成化。并且企业迫切的想把考勤管理这一大块融入到了到企业信息管理系统中,使得企业真正的把信息化从源头做起,信息化程度越高,企业管理中的物质资本地位相对下降,这是信息技术、知识经济社会条件下的企业管理发展带来最大优势。2万方数据 第一章绪论1.1国内外研究现状互联网络和信息技术的高速发展,改变了企业经营管理模式、做事的方法和人们的生活方式。全球经济环境不断发展和变化,竞争环境复杂多变,企业的管理思想,管理方法不断创新,计算机网络技术快速发展,促成企业管理信息系统ERP总是不断发展和变化。一个优秀的企业管理信息系统应当经历:管理思想现代化、系统应用网络化、开发平台标准化、业务流程自动化、应用系统集成化的这样一个“五化”的发展过程[2]。1、管理思想现代化社会和科学技术总是不断发展的,适应知识经济的新的管理模式和管理方法不断涌现:敏捷制造、虚拟制造、精益生产、客户关系管理、供应商关系管理、大规模定制、基于约束理论的先进计划和排产APS、电子商务、商业智能,基于平衡记分卡的企业绩效管理不一而足。管理信息系统必须不断增加这些新思想、新方法以适应企业的管理变革和发展要求。2、系统应用网络化我们现在处在全球经济一体化的年代,网络经济的时代,由于互联网络和通信技术的高速发展,彻底改变了我们的经营管理模式、生活方式和做事的方法。企业对互联网络的依赖将像今天企业对电力和电话的依赖一样重要。离开互联网络的应用就谈不上敏捷制造、虚拟制造、精益生产、客户关系管理、供应商关系管理、电子商务。只有采用基于互联网络的系统才能方便地实现集团管理、异地管理、移动办公,实现环球供应链管理。3、开发平台标准化计算机技术发展到今天,那种封闭的专有系统已经走向消亡。基于浏览器/服务器的体系结构,支持标准网络通信协议,支持标准的数据库访问,支持XML的异构系统互联;实现应用系统独立于硬件平台、操作系统和数据库;实现系统的开放性、集成性、可扩展性、互操作性;这些已成为应用系统必须遵守的标准,反之,不符合上述标准的系统是没有前途的系统。4、业务流程自动化传统ERP是一个面向功能的事务处理系统。它为业务人员提供了丰富的业务3万方数据 电子科技大学硕士学位论文处理功能,但是每个业务处理都不是孤立的,它一定与其他部门、其他人、其他事务有关,这就构成了一个业务流程。传统ERP对这个业务流程缺乏有效的控制和管理。一些业务流程被写死在程序里,非此既彼,必须按其执行,否则就要修改程序。许多流程是由人工离线完成的。工作流管理技术是解决业务过程集成的重要手段,它与ERP或其他管理信息系统的集成,将实现业务流程的管理、控制和过程的自动化,使企业领导与业务系统真正集成,实现企业业务流程的重构。所以工作流管理技术受到人们的高度重视并得到快速的发展。5、应用系统集成化企业信息化包括了很多内容:技术系统信息化;管理信息化;生产制造过程自动化。所有这些系统都是为企业经营战略服务的,它们之间存在着大量的共享信息和信息交换,使其应用效果最大化。随着现代科学技术的发展[3],越来越多的公司和企业对职工的考勤管理都实行了信息化管理,使用计算机系统代替繁琐冗余的手工方式来管理考勤事务。传统的手工方式不仅效率低下,而且容易出错,采用计算机技术进行货物管理可以克服手工管理的缺点,将人们从烦杂的劳动中解放出来。先进的考勤管理思想在商业中实现就成为了一个时代的目标。公司集团非常急需一套既有先进考勤方法又适合国内大商业的考勤管理系统,作为实现目标和提高现有水平的一种重要手段。考勤管理系统是一个公司不可缺少的部分,它的执行对于公司的决策者和管理者来说是很有帮助的,随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。基于此,开发了一套考勤管理系统,其主要目的是为了统计员工的迟到、早退、旷工、事病假、加班以及出差情况,这些信息将直接作为公司对员工的奖惩、提升以及培训的依据。考勤管理是否公正、公平和科学,直接反映了企业的管理水平,避免人事纠纷,对企业的效益有积极的促进作用。因此,作为各级管理者对人事考勤的管理要求相对较高,不断的采用新的技术手段进行考勤管理,不断改进考勤方法。采用指纹识别技术进行考勤管理的最大优点是[4]:杜绝代打卡考勤。传统的考勤方法主要有:口头点名、手工登记、考勤钟、密码、IC卡等等方式。口头点名、手工登记需要专门派人实时监督管理,造成人力资源浪费,同时需要监督人有较4万方数据 第一章绪论高的职业素养,既是这样在日常考勤中,也经常会发生争执和考勤的不公正、不公平性;而考勤钟、密码、IC卡等电子考勤方法,虽然减少了专人实时监督管理,但是考勤钟卡片可以让别人打卡,密码可以告诉别人,IC卡可以借给别人,往往是考勤流于形式,不能满足各级管理者的要求。采用考勤管理系统进行考勤管理的最大优点是:自动统计,减少人力劳动成本。传统的考勤统计方法主要有:人工核对、口头记录等等方式。考勤记录通过各种方式进行登记,月底通过专人对每条考勤记录进行人工核对,效率低,容易出错,不可避免产生人事纠纷。综上所述,作为企业人事管理者代表,必须对考勤管理的重要性、科学性有充分的认识。新技术的应用必然带来新的学习和新的思路变革,正确的使用新工具必然会对我们的工作效率有较大的提高。1.1课题研究的目的和意义在积极建立企业现代企业管理机制的今天,仅仅靠原始的手工管理或简单的单机管理,人事考勤部门面对大量的信息,无法有效率地将其中的重要部分提取出来,并做出相应的判断和处理。公司管理者的决策只能依据报表数据,在浪费大量人力、物力的同时无法做到实时监控,难以保证数据的准确性和及时性。因此,先进的管理思想在企业中实现就成为了一个可望而不可及的目标。公司集团非常急需一套既有先进管理思想又适合中小企业的考勤管理信息系统,作为实现目标和提高现有水平的一种重要手段!传统的考勤管理系统存在以下几方面的弊端:1)对于中大型企业,员工数量非常多,上下班时所有员工需要在很短的时间内排队刷卡,这样会浪费很多时间;2)刷卡时,必须把卡掏出,刷完卡后再放回口袋,不仅容易造成磨损,卡片容易损坏,而且容易丢失;3)领导与工人一起排队刷卡,极其不方便;4)排长队刷卡,既浪费时间,又不人性化;5)无法实现员工上班时间在各办公区/厂房区的进出记录及跟踪查询。5万方数据 电子科技大学硕士学位论文传统的绩效考核由于很多人为因素导致绩效考核不公正、不全面、透明度低。本软件系统能够随时将员工出勤及任务完成情况打印出来,作为绩效考核的依据,能有效的避免传统的绩效考核的各种弊端。所以中小型企业的考勤管理业务为依托,结合科学管理的理论,设计并开发一个考勤管理系统,提供一个科学合理的考勤管理解决方案,彻底实现无纸化作业。根据管理权限的不同,将界面分为一般职员、部门经理、系统管理员和最高管理者四个层次。根据企业原来的考勤管理制度,为企业不同管理层次的职员提供相应的功能。通过考勤管理无纸化的实现,使企业的考勤管理更加科学和规范,提高了企业考勤管理的透明度和效率,为企业实现整体信息化的其他相关系统提供必要的数据支持。1.1本文研究的主要内容系统开发的总体任务是实现企业员工人事信息管理的系统化、规范化和自动化。系统功能分析是在系统开发的总体基础上完成的。对企业员工的考勤管理进行分析,对各功能进行详细说明,阐明各个功能模块间的内在联系和各功能模块实现的操作,为企业管理层提供直观、及时、方便的信息,提高企业的生产率,以达到企业所能实现的功能。本系统采用客户机/服务器的运行方式。针对中小型企业的考勤管理业务,同时考虑到开发成本和安全性的问题,本系统设计成为一个相对封闭的单用户运行系统。采用VisualBasic6.0作为开发工具,采用MicrosoftSQLServer2008作为后台数据库,一般可以满足中小企业考勤管理的需求。本文各章节的主要内容如下:第一章,绪论。主要介绍本文选题背景,以及当前国内外的情况。第二章,介绍考勤管理系统开发的技术平台,通过对C/S架构,操作系统和SQLServer的简单介绍体现出系统在使用性上的周全考虑。并对VB与SQLServer交互做了相关介绍。第三章,系统分析,本章节是从对用户需求的定义以及多方面的分析进行陈诉,通过多角度的可行性分析,使得我们在前期的开发目标上有着强有力的说服力,并对后期开发过程中也起了指导的作用。6万方数据 第一章绪论第四章,系统设计,本章节是针对上章节的分析果进行设计,也得出系统的标准体系结构三成C/S模型,即数据库层,数据访问层,业务逻辑层。同时也定义出系统的具体模块和数据的基本结构。第五章,系统实现,本章节是对上章节设计的实施和开发,对具体的模块实现进行介绍,并提供了考勤管理系统的部分界面,同时也对此进行了部分说明。第六章,结论部分,本章节说的是开发者在开发后对于考勤管理系统的认识,以及简单陈诉了自身的体会和所发现的问题。7万方数据 电子科技大学硕士学位论文第二章开发工具介绍由于此次考勤管理系统针对的一个特殊的团体开发,所以在结构上我们采用了C/S的基础架构,从而瞒住用户的需求。在软件应用开发的技术中,我们主要运用了VB作为快速开发语言,SQLServer2008作为数据存储中心。同时为了考勤管理系统的扩展性,我们也充分考虑到系统的架构设计和数据库的标准设计。1.1开发平台和技术简介我们的服务器运行是基于windows2008的系统来进行了,并且我们运用了window服务这个特性,把我们的考勤系统强有力的部署了上去。以下是所调查研究和运用过的相关技术。2.1C/S架构在网络连接模式中,除了对等网外,还有另一种形式的网络,即客户机/服务器网,Client/Server[5]。在客户机/服务器网络中,服务器是网络的核心,而客户机是网络的基础,客户机依靠服务器获得所需要的网络资源,而服务器为客户机提供网络必须的资源。这里客户和服务器都是指通信中所涉及的两个应用进程(软件)。使用计算机的人是计算机的“用户”(user)而不是“客户”(client)。但在许多国外文献中,也经常把运行客户程序的机器称为client(这种情况下也可把client译为“客户机”),把运行服务器程序的机器称为server。所以有时要根据上下文判断client与server是指软件还是硬件。它是软件系统体系结构,通过它可以充分利用两端硬件环境的优势,将任务合理分配到Client端和Server端来实现,降低了系统的通讯开销。目前大多数应用软件系统都是Client/Server形式的两层结构,由于现在的软件应用系统正在向分布式的Web应用发展,Web和Client/Server应用都可以进行同样的业务处理,应用不同的模块共享逻辑组件;因此,内部的和外部的用户都可以访问8万方数据 第二章开发工具介绍新的和现有的应用系统,通过现有应用系统中的逻辑可以扩展出新的应用系统。这也就是目前应用系统的发展方向。C/S结构的优点是能充分发挥客户端PC的处理能力,很多工作可以在客户端处理后再提交给服务器。对应的优点就是客户端响应速度快。缺点主要有以下几个:而随着互联网的飞速发展,移动办公和分布式办公越来越普及,这需要我们的系统具有扩展性。这种方式远程访问需要专门的技术,同时要对系统进行专门的设计来处理分布式的数据。客户端需要安装专用的客户端软件。首先涉及到安装的工作量,其次任何一台电脑出问题,如病毒、硬件损坏,都需要进行安装或维护。还有,系统软件升级时,每一台客户机需要重新安装,其维护和升级成本非常高。(大多数没法自动升级而需要人工升级)对客户端的操作系统一般也会有限制。可能适应于Windows98,但不能用于Windows2000或WindowsXP。或者不适用于微软新的操作系统等等,更不用说Linux、Unix等。(中国绝大多数用户都使用Windows操作系统)。(1)应用服务器运行数据负荷较轻。最简单的C/S体系结构的数据库应用由两部分组成,即客户应用程序和数据库服务器程序。二者可分别称为前台程序与后台程序。运行数据库服务器程序的机器,也称为应用服务器。一旦服务器程序被启动,就随时等待响应客户程序发来的请求;客户应用程序运行在用户自己的电脑上,对应于数据库服务器,可称为客户电脑,当需要对数据库中的数据进行任何操作时,客户程序就自动地寻找服务器程序,并向其发出请求,服务器程序根据预定的规则作出应答,送回结果,应用服务器运行数据负荷较轻。(2)数据的储存管理功能较为透明。在数据库应用中,数据的储存管理功能,是由服务器程序和客户应用程序分别独立进行的,前台应用可以违反的规则,并且通常把那些不同的(不管是已知还是未知的)运行数据,在服务器程序中不集中实现,例如访问者的权限,编号可以重复、必须有客户才能建立定单这样的规则。所有这些,对于工作在前台程序上的最终用户,是“透明”的,他们无须过问(通常也无法干涉)背后的过程,就可以完成自己的一切工作。在客户服务器架构的应用中,前台程序不是非常“瘦小”,麻烦的事情都交给了服务器和网络。在C/S体系的下,数据库不能真正成为公共、专业化的仓库,它受到独立的专门9万方数据 电子科技大学硕士学位论文管理。(3)C/S架构的劣势是高昂的维护成本且投资大。首先,采用C/S架构,要选择适当的数据库平台来实现数据库数据的真正“统一”,使分布于两地的数据同步完全交由数据库系统去管理,但逻辑上两地的操作者要直接访问同一个数据库才能有效实现,有这样一些问题,如果需要建立“实时”的数据同步,就必须在两地间建立实时的通讯连接,保持两地的数据库服务器在线运行,网络管理工作人员既要对服务器维护管理,又要对客户端维护和管理,这需要高昂的投资和复杂的技术支持,维护成本很高,维护任务量大。其次,传统的C/S结构的软件需要针对不同的操作系统系统开发不同版本的软件,由于产品的更新换代十分快,代价高和低效率已经不适应工作需要。在JAVA这样的跨平台语言出现之后,B/S架构更是猛烈冲击C/S,并对其形成威胁和挑战。1.1WindowsServer2008简介WindowsServer2008[6]是专为强化下一代网络、应用程序和Web服务的功能而设计,是有史以来最先进的WindowsServer操作系统。拥有WindowsServer2008,您即可在企业中开发、提供和管理丰富的用户体验及应用程序,提供高度安全的网络基础架构,提高和增加技术效率与价值。相比WindowsServer2000到WindowsServer2003更新时微小的变化,可以说WindowsServer2008是对WindowsServer产品系列核心代码的彻底更新。WindowsServer2008共享了WindowsVista的许多核心代码,这部分核心代码应用了安全开发模式(SDM)。而SDM是微软在编程学上的一个重要改进,它把安全的概念直接应用到了服务器操作系统中。WindowsServer2008最重要的改变就是ServerCore和新的IIS——InternetInformationServices7.0。ServerCore是WindowsServer2008的一种最小安装模式,它包含了可执行文件和服务器的一个子集,其对服务器的管理是通过命令行方式或者配置文件完成的。据悉,ServerCore适合于那些仅仅需要在多台服务器上执行特定任务,而不需要很高稳定性的企业或组织,也比较适合于那些对安全性有较高需求的环境。ServerCore能实现下面的几种功能:动态主机配置协议服务器(DHCPServer);域名服务器(DNSServer);10万方数据 第二章开发工具介绍文件服务器;打印服务;域名控制;Windows服务器虚拟化;Windows媒体服务(WMS)等。在这种安装模式下,IIS只包括其正常功能的一部分,也就是只包括静态HTML,并不支持动态Web应用。另外,ServerCore服务器能够构建集群系统;能够实现网络负载均衡;能够宿主Unix应用程序;能够利用Bitlocker加密驱动;能够利用PowerShell远程管理,并通过简单网络管理协议(SNMP)进行控制。网络方面的改进:首先就是TCP/IP协议栈的改进。或许对WindowsServer2008的改变就是对TCP/IP栈本身的一种改变。比如,一个很明显的改变就是TCP窗口大小的自动调整。WindowsServer2008能够为每次连接自动调整窗口的大小,这无疑就增加了机器之间大数据量传送的效率。而在WindowsServer2003中出现的失效网管检测算法在WindowsServer2008中有了一些改进。另外,网络扩展方面也得到了改进,在以前的版本中,一个NIC(网络接口卡)只能被关联到单个物理CPU上,而WindowsServer2008则支持扩展NIC与多个CPU之间的关联。其次就是终端服务的改进,新增加的三个特性值得CIO们关注。第一个特性是终端服务远程应用(TerminalServicesRemoteApp),也就是能够在支持终端服务的机器上定义将要运行的程序。用户不需要知道他们现在使用的应用程序是在哪台机器上运行的,除非是出现了明显的、因网络延时或者服务器过载而引起的较长延时。第二个特性是终端服务网关(TerminalServicesGateway),也就是允许用户通过任何一个Web门户网站访问终端服务的应用程序,其传输方式是通过一种加密过的https通道。而且,该网关能够通过防火墙发送连接,并完成NAT转换。第三个特性是终端服务Web访问(TSWebAccess),这个特性能够让服务器管理员公开地在Web页面上发布可用的终端服务远程程序。用户能够在网页上浏览他们希望运行的应用程序,点击之后便能把它嵌入到自己的应用程序中来。另外,WindowsServer2008还引入了只读域控制器(RODC)的概念。RODC拥有一份只读的活动路径,这样最直接的好处就是更快速地登录,以及对其他网络资源可以更快地验证。11万方数据 电子科技大学硕士学位论文1.1Windowsservice简介MicrosoftWindows服务[7](即,以前的NT服务)使您能够创建在它们自己的Windows会话中可长时间运行的可执行应用程序。这些服务可以在计算机启动时自动启动,可以暂停和重新启动而且不显示任何用户界面。这使服务非常适合在服务器上使用,或任何时候,为了不影响在同一台计算机上工作的其他用户,需要长时间运行功能时使用。还可以在不同于登录用户的特定用户帐户或默认计算机帐户的安全上下文中运行服务。服务应用程序与其他许多项目类型的功能在几个方面有所不同:必须将服务应用程序项目创建的已编译可执行文件安装在服务器上,此项目才能以有意义的方式运行。不能通过按F5或F11来调试或运行服务应用程序;不能立即运行服务或进入其代码。相反,必须安装和启动服务,然后将一个调试器附加到服务的进程中。与一些类型的项目不同,对于服务应用程序,必须为其创建安装组件。安装组件在服务器上安装和注册服务,并用Windows“服务控制管理器”为服务创建一个项。有关更多信息,请参见如何:将安装程序添加到服务应用程序。服务应用程序的Main方法必须为项目包含的服务发出Run命令。Run方法将服务加载到适当服务器上的“服务控制管理器”中。如果使用“Windows服务”项目模板,系统将自动为您写入此方法。注意,加载服务与启动服务不同。有关更多信息,请参见下面的“服务生存期”。Windows服务应用程序在不同于登录用户的交互区域的窗口区域中运行。窗口区域是包含剪贴板、一组全局原子和一组桌面对象的安全对象。由于Windows服务的区域不是交互区域,因此Windows服务应用程序中引发的对话框将是不可见的,并且可能导致程序停止响应。同样,错误信息应记录在Windows事件日志中,而不是在用户界面中引发。.NETFramework支持的Windows服务类不支持与交互区域(即登录用户)进行交互。同时,.NETFramework不包含表示区域和桌面的类。如果Windows服务必须与其他区域进行交互,则需要访问非托管的WindowsAPI。有关更多信息,请参见PlatformSDK文档中的窗口区域和桌面。12万方数据 第二章开发工具介绍设计Windows服务与用户或其他区域的交互时必须非常小心,应考虑某些情况,例如没有登录的用户或用户具有一组意外的桌面对象的情况。在某些情况下,编写一个在用户控制下运行的Windows应用程序可能更为妥当。Windows服务应用程序在各自的安全上下文中运行,并且在用户登录到安装有该程序的Windows计算机之前启动。应仔细计划在哪些用户帐户内运行服务;在系统帐户下运行的服务比在用户帐户下运行的服务具有更多的权限和特权。1.1MicrosoftSQLServer简介MicrosoftSQLServer2008[8]是Microsoft公司推出的、一套完整的数据库和分析产品,可迅速提供下一代可扩展电子商务、各种业务和数据仓库解决方案。SQLServer2008出现在微软数据平台上是因为它使得公司可以运行他们最关键任务的应用程序,同时降低了管理数据基础设施和发送观察和信息给所有用户的成本。这个平台有以下特点:·可信任的——使得公司可以以很高的安全性、可靠性和可扩展性来运行他们最关键任务的应用程序。·高效的——使得公司可以降低开发和管理他们的数据基础设施的时间和成本。·智能的——提供了一个全面的平台,可以在你的用户需要的时候给他发送观察和信息。在今天数据驱动的世界中,公司需要继续访问他们的数据。SQLServer2008为关键任务应用程序提供了强大的安全特性、可靠性和可扩展性。(一)保护你的信息在过去的SQLServer2005的基础之上,SQLServer2008做了以下方面的增强来扩展它的安全性:简单的数据加密SQLServer2008可以对整个数据库、数据文件和日志文件进行加密,而不需要改动应用程序。进行加密使公司可以满足遵守规范和及其关注数据隐私的要求。简单的数据加密的好处包括使用任何范围或模糊查询搜索加密的数据、加强数据13万方数据 电子科技大学硕士学位论文安全性以防止未授权的用户访问、还有数据加密。这些可以在不改变已有的应用程序的情况下进行。外键管理:SQLServer2008为加密和密钥管理提供了一个全面的解决方案。为了满足不断发展的对数据中心的信息的更强安全性的需求,公司投资给供应商来管理公司内的安全密钥。SQLServer2008通过支持第三方密钥管理和硬件安全模块(HSM)产品为这个需求提供了很好的支持。增强了审查:SQLServer2008使你可以审查你的数据的操作,从而提高了遵从性和安全性。审查不只包括对数据修改的所有信息,还包括关于什么时候对数据进行读取的信息。(二)确保业务可持续性有了SQLServer2008,微软继续使公司具有提供简化了管理并具高可靠性的应用的能力。(三)最佳的和可预测的系统性能公司在面对不断增长的压力,要提供可预计的响应和对随着用户数目的增长而不断增长的数据量进行管理。SQLServer2008提供了一个广泛的功能集合,使你的数据平台上的所有工作负载的执行都是可扩展的和可预测的。性能数据的采集:性能调整和排除故障对于管理员来说是耗费时间的工作。为了给管理员提供全面的执行洞察力,SQLServer2008推出了范围更大的数据采集,一个用于存储性能数据的新的集中的数据库,以及新的报表和监控工具。扩展事件:SQLServer扩展事件是一个用于服务器系统的一般的事件处理系统。扩展事件基础设施是一个轻量级的机制,它支持对服务器运行过程中产生的事件的捕获、过滤和响应。这个对事件进行响应的能力使用户可以通过增加前后文关联数据。备份压缩:保持在线进行基于磁盘的备份是很昂贵而且很耗时的。有了SQLServer2008备份压缩,需要的磁盘I/O减少了,在线备份所需要的存储空间也减少了,而且备份的速度明显加快了。数据压缩:改进的数据压缩使数据可以更有效的存储,并且降低了数据的存储要求。数据压缩还为大型的限制输入/输出的工作负载例如数据仓库提供了显著的性能改进。14万方数据 第二章开发工具介绍资源监控器:SQLServer2008随着资源监控器的推出使公司可以提供持续的和可预测的响应给终端用户。资源监控器使数据库管理员可以为不同的工作负载定义资源限制和优先权,这使得并发工作负载可以为终端用户提供稳定的性能。稳定的计划:SQLServer2008通过提供了一个新的制定查询计划的功能,从而提供了更好的查询执行稳定性和可预测性,使公司可以在硬件服务器更换、服务器升级和产品部署中提供稳定的查询计划。二、高效的SQLServer2008降低了管理系统、.NET架构和VisualStudio®TeamSystem的时间和成本,使得开发人员可以开发强大的下一代数据库应用程序。三、智能的商业智能(BI)继续作为大多数公司投资的关键领域和对于公司所有层面的用户来说的一个无价的信息源。SQLServer2008提供了一个全面的平台,用于当用户需要时你可以为其提供智能化。SQLServer2008提供了公司可依靠的技术和能力来接受不断发展的对于管理数据和给用户发送全面的洞察的挑战。具有在关键领域方面的显著的优势,SQLServer2008是一个可信任的、高效的、智能的数据平台。SQLServer2008是微软数据平台中的一个主要部分,旨在满足目前和将来管理和使用数据的需求。1.1开发语言的简介2.1VB6.0的简介VB6.0全称为VisualBasic6.0[9],是微软公司推出的可视化编程工具MSDN之一,是目前世界上使用最广泛的程序开发工具。结构简单,编写程序对系统的资源占有极低,是程序编写者编写小型程序的第一选择!如果你是一个对编程一无所知,而又迫切希望掌握一种快捷实用的编程语言的初学者,那选择VB6.0没错的。即使考虑到VB程序本身编译和运行效率较低的不足,但是它的快捷的开发速度,简单易学的语法,体贴便利的开发环境,它仍不失一款优秀的编程工具,是初学者的首选。15万方数据 电子科技大学硕士学位论文VB的中心思想就是要便于程序员使用,无论是新手或者专家。VB使用了可以简单建立应用程序的GUI系统,但是又可以开发相当复杂的程序。VB的程序是一种基于窗体的可视化组件安排的联合,并且增加代码来指定组建的属性和方法。因为默认的属性和方法已经有一部分定义在了组件内,所以程序员不用写多少代码就可以完成一个简单的程序。过去的版本里面VB程序的性能问题一直被放在了桌面上,但是随着计算机速度的飞速增加,关于性能的争论已经越来越少。窗体控件的增加和改变可以用拖放技术实现。一个排列满控件的工具箱用来显示可用控件(比如文本框或者按钮)。每个控件都有自己的属性和事件。默认的属性值会在控件创建的时候提供,但是程序员也可以进行更改。很多的属性值可以在运行时候随着用户的动作和修改进行改动,这样就形成了一个动态的程序。举个例子来说:窗体的大小改变事件中加入了可以改变控件位置的代码,在运行时候每当用户更改窗口大小,控件也会随之改变位置。在文本框中的文字改变事件中加入相应的代码,程序就能够在文字输入的时候自动翻译或者阻止某些字符的输入。VB的程序可以包含一个或多个窗体,或者是一个主窗体和多个子窗体,类似于操作系统的样子。有很少功能的对话框窗口(比如没有最大化和最小化按钮的窗体)可以用来提供弹出功能。VB的组件既可以拥有用户界面,也可以没有。这样一来服务器端程序就可以处理增加的模块。VB使用引用计数的方法来进行垃圾收集,这个方法中包含有大量的对象,提供基本的面向对象支持。因为越来越多组建的出现,程序员可以选用自己需要的扩展库。和有些语言不一样,VB对大小写不敏感,但是能自动转换关键词到标准的大小写状态,以及强制使得符号表入口的实体的变量名称遵循书写规则。默认情况下字符串的比较是对大小写敏感的,但是可以关闭这个功能。VB使得大量的外界控件有了自己的生存空间。大量的第三方控件针对VB提供。VB也提供了建立、使用和重用这些控件的方法,但是由于语言问题,从一个应用程序创建另外一个并不简单。16万方数据 第二章开发工具介绍1.1VBScript的简介VBScript[10]是一种基于对象和事件驱动并具有安全性能的脚本语言。,它可以被嵌入HTML文件之中,可以做HTML语言能做到和不能做到的事。当然,这里是让它做HTML语言不能做的事。例如,VBScript回应用户的输入信息(如用form建立的各种输入方式)而不用任何的网络来回传。也就是说,当输入一项信息时,它不用传给服务器(server)处理,而直接可以用浏览器处理。也可以想象成有一个可执行文件在你的计算机上执行一样!它具有以下几个基本特点:(1)是一种脚本编写语言(2)是基于对象的语言(3)简单性(4)安全性(5)动态性(6)跨平台性其语法格式:VBScript语句通常情况下,上述语句可以省略,默认值即为VBScript脚本。只有在使用到其它脚本语言如JavaScript脚本时才需要应用上述格式标明使用的脚本语言。应用领域:Windows操作系统:VBScript可以被用来自动地完成重复性的Windows操作系统任务。在Windows操作系统中,VBScript可以在WindowsScriptHost的范围内运行。Windows操作系统可以自动辨认和执行*.VBS和*.WSF两种文件格式,此外InternetExplorer可以执行HTA和CHM文件格式。VBS和WSF文件完全是文字式的,它们只能通过少数几种对话窗口与用户通讯。HTA和CHM文件使用HTML格式,它们的程序码可以象HTML一样被编辑和检查。在WSF、HTA和CHM文件中VBScript和JavaScript的程序码可以任意混合。HTA文件实际上是加有VBS、JavaScript成分的HTML文件。CHM文件是一种在线帮助,用户可以使用专门的编辑程序将HTML程序编辑为CHM。网页浏览器:网页中的VBS可以用来指挥客户方的网页浏览器(浏览器执行VBS程序)。VBS与JavaScript在这一方面是竞争者,它们可以用来实现动态HTML,甚至可以将整个程序结合到网页中来。至今为止VBS在客户方面未能占优势,因17万方数据 电子科技大学硕士学位论文为它只获得MicrosoftInternetExplorer的支持(MozillaSuite可以通过装置一个外挂来支持VBS)。而JavaScript则受到所有网页浏览器的支持。在InternetExplorer中VBS和JavaScript使用同样的权限,它们只能有限地使用Windows操作系统中的对象。网页服务器:在网页服务器方面VBS是微软的ActiveServerPages的一部分,它与JavaServerPages和PHP是竞争对手。在这里VBS的程序码直接嵌入到HTML页内,这样的网页以ASP结尾。网页服务器Internet信息服务执行ASP页内的程序部分并将其结果转化为HTML传递给网页浏览器供用户使用。这样服务器可以进行数据库闻讯并将其结果放到HTML网页中。1.1VB的数据库访问技术在VB的开发环境中,可以使用三种数据库访问方式[11],它们分别是:数据访问对象(DAO)、远程数据对象(RDO)和ADO对象模型。数据访问对象是用来显露了MicrosoftJet数据库引擎(最早是给MicrosoftAccess所使用,现在已经支持其它数据库),并允许开发者通过ODBC直接连接到其他数据库一样,直接连接到Access表。DAO最适用于单系统应用程序或在小范围,本地分布使用。其内部已经对Jet数据库的访问进行了加速优化,而且其使用起来也是很方便的。所以如果数据库是Access数据库且是本地使用的话,建议使用这种访问方式。VB已经把DAO模型封装成了Data控件[12],分别设置相应的DatabaseName属性和RecordSource属性就可以将Data控件与数据库中的记录源连接起来了。以后就可以使用Data控件来对数据库进行操作。RDO(RemoteDataObjects)远程数据对象是一个到ODBC的、面向对象的数据访问接口,它同易于使用的DAOstyle组合在一起,提供了一个接口,形式上展示出所有ODBC的底层功能和灵活性。尽管RDO在很好地访问Jet或ISAM数据库方面受到限制,而且它只能通过现存的ODBC驱动程序来访问关系数据库。但是,RDO已被证明是许多SQLServer、Oracle以及其他大型关系数据库开发者经常选用的最佳接口。RDO提供了用来访问存储过程和复杂结果集的更多和更复杂的对象、属性,以及方法。18万方数据 第二章开发工具介绍和DAO一样,在VB中也把其封装为RDO控件了,其使用方法与DAO控件的使用方法完全一样。ODBC(OpenDatabaseConnectivity,开放数据库互连)是微软公司开放服务结构(WOSA,WindowsOpenServicesArchitecture)中有关数据库的一个组成部分,它建立了一组规范,并提供了一组对数据库访问的标准API(应用程序编程接口)。这些API利用SQL来完成其大部分任务。ODBC本身也提供了对SQL语言的支持,用户可以直接将SQL语句送给ODBC。一个基于ODBC的应用程序对数据库的操作不依赖任何DBMS,不直接与DBMS打交道,所有的数据库操作由对应的DBMS的ODBC驱动程序完成。也就是说,不论是FoxPro、Access还是Oracle数据库,均可用ODBCAPI进行访问。由此可见,ODBC的最大优点是能以统一的方式处理所有的数据库。一个完整的ODBC由下列几个部件组成:1.1应用程序(Application)ODBC管理器(Administrator)。该程序位于Windows95控制面板(ControlPanel)的32位ODBC内,其主要任务是管理安装的ODBC驱动程序和管理数据源。驱动程序管理器(DriverManager)。驱动程序管理器包含在ODBC32.DLL中,对用户是透明的。其任务是管理ODBC驱动程序,是ODBC中最重要的部件。1.2ODBCAPIODBC驱动程序。是一些DLL,提供了ODBC和数据库之间的接口。数据源。数据源包含了数据库位置和数据库类型等信息,实际上是一种数据连接的抽象。ODBC连接目前仅仅限于关系型数据库,对于其他数据源比如EXCEL、文本文件都不能进行访问,而且有很多DBMS(数据库管理系统)都不能充分的支持其所有的功能。相比之下,OLEDB可以存取任何形式的数据,所以其功能是相当的强大,它也指导了目前技术发展的方向。ADO(ActiveXDataObject)是DAO/RDO的后继产物。ADO2.0在功能上与RDO更相似,而且一般来说,在这两种模型之间有一种相似的映射关系。ADO"扩展"了DAO和RDO所使用的对象模型,这意味着它包含较少的对象、更多的属性、方法(和参数),以及事件。作为最新的数据库访问模式,ADO的使用也是简单易用,所以微软已经明确表19万方数据 电子科技大学硕士学位论文示今后把重点放在ADO上,对DAO/RDO不再作升级,所以ADO已经成为了当前数据库开发的主流。ADO涉及的数据存储有DSN(数据源名称)、ODBC(开放式数据连接)以及OLEDB三种方式。后面的例程将详细讲解这三种方式的具体访问实现。要使用ADO,必须清楚ADO的对象层次结构,其大体上分为以下7个对象层次:1、Command对象:包含关于某个命令,例如查询字符串、参数定义等的信息。Command对象在功能上和RDO的rdoQuery对象相似。2、Connection对象:包含关于某个数据提供程序的信息。Connection对象在功能上和RDO的rdoConnection对象是相似的,并且包含了关于结构描述的信息。它还包含某些RDOEnvironment对象的功能,例如transaction控件。3、Error对象:包含数据提供程序出错时的扩展信息。Error对象在功能上和RDO的rdoError对象相似。4、Field对象:包含记录集中数据的某单个列的信息。Field对象在功能上和RDO的rdoColumn对象相似。5、Parameter对象:包含参数化的Command对象的某单个参数的信息。该Command对象有一个包含其所有Parameter对象的Parameters集合。Parameter对象在功能上和RDO的rdoParameter对象相似。6、Property对象:包含某个ADO对象的提供程序定义的特征。没有任何等同于该对象的RDO,但DAO有一个相似的对象。7、Recordset对象:用来存储数据操作返回的记录集。此对象和Connection对象是所有对象最重要的两个对象。当然,对于初级用户来说,我们只需要掌握其中的Connection对象和RecordSet对象就可以实现基本的数据库操作,在后面的经验介绍里面我将给出详细的介绍。20万方数据 第三章需求分析第三章系统分析1.1系统需求分析需求分析的过程可以说是一个对具体问题的反复理解和抽象的过程。理解就是对现实问题的理解,要弄清楚究竟需要解决什么问题。抽象就是除去问题的表面,提取问题的本质,建立问题的逻辑模型,以便于以后阶段的系统的设计实现。需求分析阶段是软件产品生存命期中的一个重要阶段,其根本任务是确定用户对软件系统的需求。所谓需求是指用户对软件的功能和性能的要求,就是用户希望软件能什么事情,完成什么样的功能,达到什么性能。通常需求分为两种类型:一种是功能性需求,一种是非功能性需求,这一点也需要有一种清楚的认识。功能性需求是指需要计算机系统解决的问题,也就是对数据的处理要求,这是一类最主要的需求。非功能性需求是指实际使用环境所要求的需求,往往是一些限制要求,例如:性能要求,可靠性要求,安全保密要求,等等。软件需求一般包含三个层次—业务需求、用户需求和功能需求,还包括非功能需求。业务需求反映了组织机构或客户对系统、产品高层次的目标要求,它们在项目视图与范围文档中予以说明。用户需求描述了用户使用产品必须要完成的任务和具备的功能,这在使用实例文档或方案脚本说明中予以说明。功能需求:定义了开发人员必须实现的软件功能,使得用户能完成他们的任务,从而满足其业务需求。1.2基本功能介绍图3-1是表现了系统的基本功能和流程,主要表现了这个考勤管理系统的功能性流程。首先,考勤管理系统对应的对象是员工或者公司领导,当员工进去考勤系统后可以看到当前自己的考勤情况,以后自己的排班情况。如果是领导登陆此系统不但有着和员工一样的功能,而且还有可以多次员工进行排班,工资的调整,以及检查当前员工的考勤情况。如果是系统管理员登入的话,主要的责任是负责系统的维护和用户的管理,但是对于系统数据修改是有一定的限制权限的,21万方数据 电子科技大学硕士学位论文这样的管理方式可以对系统的数据进行有效的,安全的管理。由于系统与员工的工资和出勤情况有直接挂钩,所以数据的准确性事最重要的,当然安全性是系统的核心生命,本系统最终考虑到安全新的部分,所以使用了局域网内部的部署方式。图3-1考勤系统基本功能1.1可行性分析可行性分析的目的不是解决问题,而是确定问题是否值得去解决。当然了,这种结果不是靠主观猜想得来的,而是靠客观分析获取的。因此,可行性研究实质是要进行一次大大压缩简化了的系统分析和设计的过程,也就是在较高层次上以较抽象的方式进行的系统分析和设计的过程。在问题定义阶段初步确定的规模和目标,如果正确的就进一步加以肯定,如果有错误就应该即使改正。这样做可以避免盲目投资,减少不必要的损失,并且能够保证新系统能够合理有效的对现有系统功能进行提升和有效维护,保证新系统的有效性、使用性和合理性。针对本系统开发的实际情况,从业务﹑技术,操作等方面对其可行性进行了分析。2.1业务可行性利用计算机实现企业的考勤管理势在必行。对于企业来说,利用计算机支持企业高效率完成考勤管理的日常事务,是适应现代企业制度要求、推动企业劳动22万方数据 第三章需求分析型管理走向科学化、规范化的必要条件;而考勤管理是一项琐碎、复杂而又十分细致的工作,员工日常考勤,加班,请假等管理,一般不允许出错,如果实行手工操作,须手工填制大量的表格,这就会耗费工作人员大量的时间和精力,计算机进行考勤工作的管理,不仅能够保证各项信息准确无误、快速输出,同时计算机具有手工管理所无法比拟的优点。例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高企业管理的效率,也是企业的科学化、正规化管理,与世界接轨的重要条件,因此本系统在业务上是可行的。1.1技术可行性分析开发一个中小型人事信息管理系统,主要涉及用到的技术就是一门可视化开发的编程语言和数据库。在前台开发编程方面,本系统采用Microsoft公司的VisualBasic6.0作为主要的开发工具。微软公司的VisualBasic6.0是Windows应用程序开发工具,使目前最为广泛的、易学易用的面向对象的开发工具。VisualBasic提供了大量的控件,这些控件可用于设计界面和实现各种功能,减少了编程人员的工作量,也简化了界面设计过程,从而有效的提高了应用程序的运行效率和可靠性,并且具有强大的可视化程序设计和面向对象程序设计的功能。数据库主要是用来存放数据,就目前主流的数据库来看,可以考虑采用MicrosoftSQLServer2008或Oracle。Oracle是一个安全、可靠的并且支持面向对象设计的数据库系统,同时Oracle又有海量存储的特点。然而,相对于MicrosoftSQLServer而言,Oracle的易用性和可维护性相对差一点,而且Oracle的成本相对较高,不太适合于中小企业使用。因此,我们选择了目前比较流行的MicrosoftSQLServer2008数据库系统。SQLServer2008是开放式的关系数据库,其各功能都比较完善,可以兼顾小、中、大规模的应用,又有着远远比Access强大的伸缩性。而且SQLServer2008与VisualBasic6.0同属微软公司产品,二者兼容性较好,可实现无缝链接。综上所述,本系统在技术上是可行的。23万方数据 电子科技大学硕士学位论文1.1操作可行性分析现代社会,计算机与人们的学习和生活密切相关,它的融入,在不断地改变着人们的生活,给人们带来了极大方便,计算机已成为现代人不可缺少的使用工具,各行各业的办公已基本上实现了电子化,所以在技术操作上也是可行的。2.1数据库需求分析需求分析是设计数据库的起点,需求分析的结果是否准确地反映了用户的实际要求,将直接影响到后面各个阶段的设计,并影响到设计结果是否合理和实用。需求分析作为整个设计过程的基础,是最困难、最耗时间的一步,需求分析是否做的充分与准确,决定了在其上构建数据库大厦的速度与质量。经过仔细分析调查,可得到系统信息处理示意图如图3-2所示。图3-2系统信息处理示意图24万方数据 第三章需求分析针对企业考勤管理系统的需求,通过对考勤信息内容和数据流程的分析,主要表的内容设计如下:1、员工基本信息表:职员编号、部门名称、部门职能描述、工资、民族、生日、政治面貌、婚姻状况、所在部门编号、入职时间、文化程度、籍贯、身份证号、电子邮箱、办公电话、手机号码、在职人员类型、居住地址、邮政编码、职务、档案编号、户口所在地、信息录入人员编号、班次编号、工资。2、加班信息表:加班日期、职员编号、加班类型编号、加班开始时间、确认者、加班累计时间、加班工作描述、确认标志、加班结束时间。3、请假信息表:请假日期、职员编号、请假类型编号、请假开始时间、确认者、请假累计天数、请假原因描述、确认标志、请假结束时间。4、班次信息表:班次编号、班次名称、上班时间、下班时间、考勤方式、当月全勤天数。5、出勤信息表:出勤日期、职员编号、所在部门编号、出勤时间、退勤时间、全天工作时间、确认标志、确认者、出勤状况、早退天数、迟到天数。6、出勤信息统计表:累计工作小时、考勤月份、职员编号、所在部门编号、当月全勤天数、未出勤天数、迟到天数、早退天数、考勤年份。7、加班信息统计表:考勤年份、考勤月份、职员编号、加班工作小时、加班类型编码、所在部门编号。8、请假信息统计表:请假信息统计表、考勤年份、考勤月份、请假累计天数、所在部门编号、请假类型编码、职员编号。9、用户信息表:用户名、用户密码、用户类型。10、请假类型信息表:请假类型编码、请假类型名称、请假类型描述。11、加班类型信息表:加班类型编码、加班类型名称、加班类型描述。12、部门信息表:部门编号、部门名称、部门职能描述、工资。13、工资统计表:职员编号、所在部门编号、基本工资、请假天数、职员姓名、迟到次数、早退次数、总工资、加班小时。14、工资设置表:请假工资、加班工资、迟到工资、早退工资。25万方数据 电子科技大学硕士学位论文第四章系统设计1.1系统功能概述在中小型企业,考勤管理主要包括排班管理、请假管理、加班管理、工资管理、员工出勤信息记录和统计。考勤管理系统对实时性要求较高,在系统的使用者中,一般职员、部门经理、系统管理员和最高管理者人别扮演着不同的角色:一般职员—登录系统,出勤,可提出加班和请假申请;允许其查询企业全体员工的加班、请假和考勤情况以及查询班次,这样可以实现考勤管理的透明化和员工的相互监督制度。部门经理—登录系统,出勤,对本部门员工的出勤、加班申请和请假申请进行确认。可以查询企业全体员工的加班、请假和考勤情况,可以查询班次。由于现在的企业部门经理一般都参与分红,因此对部门经理不提供加班申请功能。系统管理员—登录系统,出勤,设置用户权限、基础数据;定义、录入班次,并拥有除出勤、加班和请假确认以外的其他权限。最高管理者—仅不能设置用户权限。综上所述,考勤管理系统应该满足以下需求:(1)业务上要满足企业原有的考勤管理职能,能够方便地进行排班管理、请假管理、加班管理、员工出勤信息记录和统计。(2)为保障考勤数据的准确性,出勤、加班和请假信息要由最高管理者或本部门上级管理人员进行确认。(3)与传统的手工管理相比,要添加基础数据的管理和用户权限的设置。(4)可以打印需要的报表。1.2系统功能分析企业员工考勤的管理具有符合业务逻辑所需要的关于企业考勤管理方面的信息,例如:系统管理、数据管理、考勤管理、工资管理等一系列详细信息。除此26万方数据 第四章系统设计之外,还要对数据库信息设置一部分必须具有的功能:例如:排班管理、加班管理、请假管理等。系统功能模块图如图4-1所示:图4-1系统功能模块图1.1系统管理模块功能是管理用户权限和密码,包括用户管理和修改密码。要进行用户权限设置,可以在权限范围内进行用户的添加、删除和修改,一般职员可以修改自己的密码。根据需求分析和本模块的功能,如图4-3所示:图4-3系统管理模块图27万方数据 电子科技大学硕士学位论文1.1数据管理模块功能是设置和管理基础数据,包括加班、请假类别的定义和班次的定义。在权限范围内进行基础数据的添加、删除和修改。可以进行员工信息、部门信息的添加、删除、修改。根据需求分析和本模块的功能,如图4-4所示:图4-4数据管理模块图1.2排班管理模块包括员工基本信息查询和排班管理。可以查询全体员工的信息并对全部职员进行排班。根据需求分析和本模块的实现流程,如图4-5所示:图4-5排班管理模块图1.3加班管理模块一般职员可以提出加班申请,并浏览所有加班信息。管理层次位于部门经理及以上级别的人有权进行加班确认。根据需求分析和本模块的实现流程,如图4-6所示:28万方数据 第四章系统设计图4-6加班管理模块图1.1请假管理模块员工可提出请假申请,并浏览所有请假信息。管理层次位于部门经理及以上级别的人有权进行请假确认。根据需求分析和本模块的实现流程,如图4-7下:图4-7请假管理模块图1.2考勤管理模块包括出勤动作、出勤信息的查询;上级对下级的员工出勤信息的确认;生成考勤统计信息并可以根据指定条件进行查询。主要功能是对用户的权限,密码管理。实现过程如图4-8所示图4-8考勤管理模块图1.3工资管理模块通过对员工工资的统计,实现对员工的奖惩,还可以对员工工资进行查询,从而达到调动员工工作的积极性的目的。29万方数据 电子科技大学硕士学位论文主要功能是对用户的权限,密码管理。实现过程如图4-9所示图4-9工资管理模块图1.1系统数据库设计数据库设计是指对于一个给定的应用环境[13],构造优化的数据库逻辑模式和物理结构,并据此建立数据库及其应用系统,使之能够有效地存储和管理数据,满足各种用户的应用需求,包括信息管理要求和数据操作要求。信息管理要求是指在数据库中应该存储和管理哪些数据对象;数据操作要求是指对数据对象需要进行哪些操作,如查询、增加、删除、修改、统计等操作。数据库是长期存储在计算机内的,有组织的,可共享的数据集合。其中的数据按照一定的数据模型组织,描述和存储。它具有较小冗余度,较高的数据独立性和易扩展性等特征,可以让多个用户在不同的权限使用。合理的数据库结构设计可以提高数据存储的效率,保证数据的完整和一致,也将有利于程序的实现。不良的数据库设计有大量的数据冗余,存在数据不良和使用不必要的磁盘空间这两大缺点,不能满足客户的需求。按照规范设计的方法,考虑数据库及其应用系统开发全过程,将数据库设计分为三个阶段:数据库需求分析阶段、数据库概念结构设计阶段以及数据库的逻辑结构设计阶段。2.1数据库概念结构设计将需求分析得到的用户需求抽象为信息结构即概念模型的过程就是概念结构设计。它是整个数据库设计的关键。在需求分析阶段得到的应用需求应该首先抽象为信息世界的结构,才能更好地、更准确地用某一DBMS实现这些需求[14]。概念结构设计的主要特点是:能真实、充分地反映现实世界,包括事物和事物之间的联系,能满足用户对数据的处理要求,是对现实世界的一个真实模型;30万方数据 第四章系统设计易于理解,从而可以用它和不熟悉计算机的用户交换意见,用户的积极参与是数据库的设计成功的关键;易于更改,当应用环境和应用要求改变时,容易对概念模型修改和扩充。概念结构是各种数据模型的共同基础,它比数据模型更独立于机器、更抽象,从而更加稳定。综合设计过程,主要实体有:职工基本信息实体、加班信息实体、请假信息实体、班次信息实体、出勤信息实体、工资信息实体。如图4-10所示是员工基本信息实体属性图。员工基本信息实体的属性包括:职员编号、部门名称、部门职能描述、工资、民族、生日、政治面貌、婚姻状况、所在部门编号、入职时间、文化程度、籍贯、身份证号、电子邮箱、办公电话、手机号码、在职人员类型、居住地址、邮政编码、职务、档案编号、户口所在地、信息录入人员编号、班次编号、工资。员工基本信息实体员工姓名毕业院校员工编号„„所在部门图4-10员工基本信息E-R图如图4-11所示是加班信息实体属性图。加班信息实体的属性包括:加班日期、职员编号、加班类型编号、加班开始时间、确认者、加班累计时间、加班工作描述、确认标志、加班结束时间。31万方数据 电子科技大学硕士学位论文图4-11加班信息E-R图如图4-12所示是请假信息实体属性图。请假信息实体的属性包括:请假日期、职员编号、请假类型编号、请假开始时间、确认者、请假累计天数、请假原因描述、确认标志、请假结束时间。图4-12请假信息E-R图如图4-13所示是班次信息实体属性图。班次信息实体的属性包括:班次编号、班次名称、上班时间、下班时间、考勤方式、当月全勤天数。32万方数据 第四章系统设计图4-13班次信息E-R图如图4-14所示是出勤信息实体属性图。出勤信息实体的属性包括:出勤日期、职员编号、所在部门编号、出勤时间、退勤时间、全天工作时间、早退天数、出勤状况、迟到天数、确认标志、确认者。图4-14出勤信息E-R图如图4-15所示是员工工资信息实体属性图。员工工资信息实体的属性包括:职员编号、所在部门编号、基本工资、请假天数、职员姓名、迟到次数、早退次数、总工资、加班小时。33万方数据 电子科技大学硕士学位论文图4-15员工工资信息E-R图涉及到的数据库和数据表很多,关系也很多。下面详细介绍各个数据库以及数据表。1.1数据库概念结构设计逻辑结构设计的任务就是把概念结构设计阶段设计好的基本E-R图转换为与选用DBMS产品所支持的数据模型相符合的逻辑结构。即将概念结构上的数据转化为SOLServer2008数据库系统所支持的实际数据模型。首先将数据库概念结构设计过程中的E-R图转换为关系模型。关系码用下横线标出。职工(职员编号、部门名称、部门职能描述、工资、民族、生日、政治面貌、婚姻状况、所在部门编号、入职时间、文化程度、籍贯、身份证号、电子邮箱、办公电话、手机号码、在职人员类型、居住地址、邮政编码、职务、档案编号、户口所在地、信息录入人员编号、班次编号、工资)加班(加班日期、职员编号、加班类型编号、加班开始时间、确认者、加班累计时间、加班工作描述、确认标志、加班结束时间)请假(请假日期、职员编号、请假类型编号、请假开始时间、确认者、请假累计天数、请假原因描述、确认标志、请假结束时间)班次(班次编号、班次名称、上班时间、下班时间、考勤方式、当月全勤天数)出勤(出勤日期、职员编号、所在部门编号、出勤时间、退勤时间、全天工34万方数据 第四章系统设计作时间、早退天数、出勤状况、迟到天数、确认标志、确认者)工资(职员编号、所在部门编号、基本工资、请假天数、职员姓名、迟到次数、早退次数、总工资、加班小时)其次将实体转化为关系表,只需要将实体的属性定义为表的属性即可。例如:可将概念结构设计阶段规划出的六个实体的属性定义为相应的六个表的属性(其余数据库表内容见附录B):如表4-1所示,职工基本信息表主要是通过对职工基本数据的管理,提供查询职工的基本信息,是由职工基本信息实体转化而来的。表4-1职员基本信息表:tbEmployee字段名称数据类型字段长度可否为空字段说明EmpIdchar8否部门编号EmpNamevarchar30否部门名称Gendervarchar50是部门职能描述Ageint4是工资NationNamechar20是民族Birthdaydatetime8是生日PoliticalPartyvarchar20是政治面貌MaritalConvarchar6是婚姻状况DepIdchar8是所在部门编号HireDatedatetime8是入职时间EduNamechar20是文化程度FamilyPlacevarchar20是籍贯IdCardvarchar20否身份证号Emailvarchar30是电子邮箱Officephonevarchar20是办公电话Homephonevarchar20是家庭电话Mobilevarchar20是手机号码Statevarchar20否人员状态Residencevarchar100是居住地址35万方数据 电子科技大学硕士学位论文Postcodevarchar10是邮政编码DutyNamechar20是职务RecorIdchar10是档案编号PRLocationvarchar50是户口所在地EmpIdRecordchar30是信息录入人员编号RuleIdchar8否班次编号Payint4是工资如表4-2所示,加班信息表主要是对加班管理模块的录入,对职员提出的加班申请进行确认和查询,是由加班信息实体转化而来的。表4-2加班信息表:tbOverTime字段名称数据类型字段长度可否为空字段说明DateWorkchar10否加班日期EmpIdchar8否职员编号OverKindIdchar2是加班类型编号TimeFromchar8是加班开始时间TimeTochar8是加班结束时间Hourint4是加班累计时间Descriptionvarchar50是加班工作描述Flagvarchar8是确认标志CheckManvarchar30是确认者如表4-3所示,请假信息表主要对请假管理模块的录入,对职员提出的请假申请进行确认和查询,是由请假信息实体转化而来的。表4-3请假信息表:tbLeave字段名称数据类型字段长度可否为空字段说明DateWorkchar10否请假日期EmpIdchar8否职员编号LeaveKindIdchar2是请假类型编号TimeFromchar10是请假开始时间36万方数据 第四章系统设计TimeTochar10是请假结束时间Daysint4是请假累计天数Descriptionvarchar50是请假原因描述Flagvarchar8是确认标志CheckManvarchar30是确认者如表4-4所示,班次信息表主要对基础数据管理模块的录入,对职员班次进行修改,是由班次信息实体转化而来的。表4-4班次信息表:tbCheckRule字段名称数据类型字段长度可否为空字段说明RuleIdchar8否班次编号RuleNamevarchar30否班次名称DutyTimeFromchar8是上班时间DutyTimeTochar8是下班时间Modevarchar10是考勤方式DaysPresiMonthint4是当月全勤天数如表4-5所示,出勤信息表主要对考勤管理模块的录入,对职员进行考勤管理,是由出勤信息实体转化而来的。表4-5出勤信息表:tbOnWork字段名称数据类型字段长度可否为空字段说明DateWorkchar10否出勤日期EmpIdchar8否职员编号DepIdchar8是所在部门编号OnWorkFromdatetime8是出勤时间OnWorkTodatetime8是退勤时间WorkHourint4是全天工作时间Flagvarchar8是确认标志CheckManvarchar30是确认者LateFlagvarchar8是出勤状况37万方数据 电子科技大学硕士学位论文LateCountint4是迟到天数EarlyCountint4是早退天数如表4-6所示,工资信息表主要对工资管理模块的录入,对职员工资进行管理,是由工资信息实体转化而来的。表4-6工资信息表:tbPayRecord字段名称数据类型字段长度可否为空字段说明EmpIdchar8否职员编号DepIdchar8否所在部门编号BasePayint4否基本工资LeaveDaysint4否请假天数Overhoursint4否加班小时Latesint4否迟到次数Earlysint4否早退次数Payint4否总工资EmpNamevarchar20否职员姓名38万方数据 第五章系统实现第五章系统实现系统分析和系统设计阶段的工作主要是集中在逻辑、功能的设计上,系统实现阶段要继承此前各阶段的成果,将技术设计转化为物理实现,因此系统实现的成果是系统分析和设计阶段的结晶。系统的具体实现必须以系统分析和设计工作为依据,系统的实现对于整个系统的质量、可靠性和维护性等有着重要影响。1.1ODBC数据源的配置ADO通过ODBC方式访问数据库可以使用用户DSN、系统DSN和文件DSN。鉴于系统的安全性考虑,本系统使用文件DSN。连接数据库前要首先通过ODBC建立文件DSN:DBWorkCheck.dsn。创建DBWorkCheck.dsn的过程为:打开“ODBC数据源管理器”对话框,选择“文件DSN”选项卡,单击“添加”按钮,如图5-1所示:图5-1“创建新数据源”对话框39万方数据 电子科技大学硕士学位论文1、在“创建新数据源”对话框中选择数据源驱动程序为SQLServer;单击“下一步”按钮,输入文件DSN的名称:DBWorkCheck.dsn;2、单击“下一步”,弹出的对话框将显示出上面设置的数据源,单击“完成”按钮,在“创建到SQLServer的新数据源对话框中选择服务器名称为local;3、单击“下一步”按钮,在弹出的窗口中选中“使用用户输入登录ID和密码的SQLServer验证,输入帐号和密码;4、单击“下一步”,在弹出的窗口中选中“更改默认的数据库为(D):”这一项,在下拉列表中选择“DBWorkCheck”;然后继续单击“下一步”按钮;5、单击“完成”按钮,再单击“测试数据源”按钮,若显示“测试成功”,则ODBC数据源配置成功。1.1系统模块ConnectString函数:设置数据库连接字符串,连接数据库前要首先通过ODBC建立文件DSN:DBWorkCheck.dsnPublicFunctionConnectString()AsStringConnectString="FileDSN=dbworkcheck.dsn;UID=sa;PWD=sa"EndFunction系统启动函数:SubMain()„每月一号初始化个人总工资IfFormat(Date,"dd")="01"ThenDimrstDepAsNewADODB.RecordsetDimrstEmpAsNewADODB.RecordsetDimresultAsBooleanDimtxtsqlAsStringtxtsql="selectDepId,PayfromtbDep"result=ExecuteSQL(txtsql,rstDep,False)DoWhileNotrstDep.EOF40万方数据 第五章系统实现txtsql="updatetbEmployeesetPay="&rstDep.Fields("Pay")&"whereDepId=""&rstDep.Fields("DepId")&"""result=ExecuteSQL(txtsql,rstEmp,True)rstDep.MoveNextLoopSetrstEmp=NothingSetrstDep=NothingEndIf„显示登录模式窗体frmLoginMode.ShowvbModal EndSub1.1登录模块的实现由于本系统用软件模拟硬件来实现考勤的刷卡过程的,所以登录的时候要进行一下选择,登录选择的界面如图5-2所示:图5-2登录选择的界面选择“刷卡出勤”按扭就进入出勤界面,在下拉列表框处选择卡号,点击“出勤”按扭,则卡号和出勤时间就自动显示在下面,同样其他员工的出勤也是如此。点击“退出”按扭,即退出出勤界面。刷卡出勤界面如图5-3所示:41万方数据 电子科技大学硕士学位论文图5-3刷卡出勤界面其中调用ExecuteSQL函数执行SQL语句PublicFunctionExecuteSQL(ByValSqlAsString,RstAsADODB.Recordset,_OptionalenableWriteAsBoolean=True)AsBooleanDimconAsADODB.ConnectionOnErrorGoToExecute_Error„如果出错进行跳转Setcon=NewADODB.Connectioncon.OpenConnectStringSetRst=NewADODB.Recordset„按查询或其它写操作执行SQL语句IfenableWriteThenRst.OpenTrim$(Sql),con,adOpenStatic,adLockOptimisticElseRst.OpenTrim$(Sql),con,adOpenStatic,adLockReadOnlyEndIfExecuteSQL=TrueExitFunctionExecute_Error:„错误处理ExecuteSQL=FalseExitFunctionEndFunction选择“员工登录”则进入登录界面,系统登录窗体主要是根据登录用户的用户名和密码来识别登录人员的身份权限,当用户将自己的用户名及密码输入到窗42万方数据 第五章系统实现体对应位置并按确定后,系统会自动连接数据库以核对用户身份,核对正确无误,则按权限分类登录系统主窗体,进行相应的操作;而当用户输入的用户名和密码错误时,系统将自动提示,考勤管理系统的登录界面如图5-4所示:图5-4考勤管理系统的登录界面主要代码调用DBExist函数判断数据库中是否存在记录PublicFunctionDBExist(ByValSqlAsString)AsIntegerDimconAsADODB.ConnectionDimflagAsStringDimRstAsADODB.RecordsetSetcon=NewADODB.Connectioncon.OpenConnectStringflag=ExecuteSQL(Sql,Rst,False)"判断该记录是否存在IfRst.RecordCount<>0ThenDBExist=Rst.RecordCountElseDBExist=0EndIfcon.CloseEndFunction1.1系统主窗体的实现系统主控平台采用简单、直观的布局,通过菜单实现对系统各个模块的调用43万方数据 电子科技大学硕士学位论文和对各个窗体的显示。用菜单编辑器来显示各个功能模块下的详细信息,它是整个系统总体的功能框架。主窗体的菜单包括三部分:菜单栏、工具栏和状态栏,菜单栏体现了系统的整体功能模块;工具栏中把系统常用的功能体现出来;设置状态栏用来显示当前日期、时间和当前用户信息。系统主窗体如图5-5所示:图5-5系统主窗体系统主窗体包括的内容分为1、系统管理菜单:用户管理,修改密码2、数据管理模块:基础数据管理,班次确定3、排班管理模块:员工排班记录,企业员工查询4、加班管理模块:加班申请,加班信息查询5、请假管理模块:请假申请,请假信息查询1.1考勤管理模块:出勤信息查询,出勤信息确认,考勤统计信息1.2工资管理模块:我的工资,奖罚设置,工资查询44万方数据 第五章系统实现1.1系统管理模块的实现2.1用户管理由于在系统的使用者中,一般职员、部门经理、系统管理员、最高管理者设有不同的权限,而系统管理员拥有设置用户权限的职能,因此,当用户类型是系统管理员时,根据管理员的选择进行添加、修改、删除等操作。用户管理窗体如图5-6所示:图5-6用户管理窗体其中调用viewData函数将数据在datagrid中显示PublicFunctionviewData(ByValtxtsqlAsString,dgAllAsDataGrid)AsIntegerDimrstDataAsADODB.RecordsetDimresultAsString"检索需要的信息result=ExecuteSQL(txtsql,rstData,False)45万方数据 电子科技大学硕士学位论文Ifresult=FalseThenMsgBox"数据查询出错!",vbCritical,"警告"ExitFunctionEndIf„如果有数据设置datagrid的数据源IfrstData.RecordCount<>0ThenSetdgAll.DataSource=rstDataviewData=rstData.RecordCountElseMsgBox"还没有数据!",vbOKOnly+vbExclamation,"警告"viewData=0EndIfEndFunction1.1修改密码启动修改密码窗体,输入原密码、新密码和确认密码。从用户信息表中检查该用户的原密码是否与输入的原密码相同,如果相同,检验新密码是否为空,若新密码非空,检验输入的确认密码和新密码是否相同,如果相同,更新用户信息中的用户密码字段。从而完成对用户信息表的密码字段进行修改。修改密码窗体如图5-7所示:图5-7修改密码窗体46万方数据 第五章系统实现1.1数据管理模块的实现2.1基础数据管理基础数据管理包括加班类型设置和请假类型设置两方面的管理,当用户类型为系统员和最高管理者时该菜单可用,输入加班类型或者请假类型的编号和名称,根据系统管理员的选择进行添加、删除和修改。基础数据管理窗体如图5-8所示:图5-8基础数据管理窗体2.2职员信息管理输入职员编号、部门名称、部门职能描述、工资、民族、生日、政治面貌、婚姻状况、所在部门编号、入职时间、文化程度、籍贯、身份证号、电子邮箱、办公电话、手机号码、在职人员类型、居住地址、邮政编码、职务、档案编号、户口所在地、信息录入人员编号、班次编号等信息,可以对职员进行“添加”、“删除”、“修改”等管理。职员信息管理窗体如图5-9所示:47万方数据 电子科技大学硕士学位论文图5-9职员信息管理窗体1.1排班管理模块的实现2.1员工排班记录员工排班记录窗体如图5-10所示,如果当前用户类型为“一般用户”,“确定”和“删除”按钮不可用。从员工基本信息表和班次信息表中读取员工姓名、班次名称和班次的基本信息,显示在表格控件中。如果当前用户类型是部门经理,则从职员信息表中读取该部门经理所在部门的职员姓名,否则读取全部职员姓名。选择好班次名称,除了“一般用户”外,其他用户可以对员工排班信息进行修改或删除。48万方数据 第五章系统实现图5-10员工排班记录窗体1.1排班管理模块的实现2.1新增请假申请请假管理包括新增请假申请,输入请假日期、请假开始时间、请假结束时间、请假类型、请假累计天数和请假工作描述,点击“提交”即可。还可以进行修改和删除等操作。新增请假申请窗体如图5-11所示:49万方数据 电子科技大学硕士学位论文图5-11新增请假申请窗体1.1请假信息查询启动“请假信息查询”窗体,从请假信息表和和职员基本信息表中读取记录,显示在表格控件中;检索部门信息表,为所在部门控件下拉列表框赋值,输入加班时间年、月、日和所在部门,根据查询条件检索请假信息表和职员信息表,刷新表格数据,输出在指定查询条件下的检索结果。请假信息查询窗体如图5-12所示:图5-12请假信息查询窗体50万方数据 第五章系统实现1.1考勤管理模块的实现考勤统计信息查询包括出勤统计信息查询、加班统计信息查询和请假统计信息查询,同时可以对查询出来的结果打印报表。考勤统计信息窗体如图5-13所示:图5-13考勤统计信息窗体打印出来的报表如图5-14所示:图5-14加班统计报表51万方数据 电子科技大学硕士学位论文1.1工资管理模块的实现2.1奖罚设置为了提高员工上班的积极性,特设立了奖罚制度,即对加班的员工进行工资上的奖励,而对于请假、迟到、早退等情况进行工资的扣除。具体奖罚设置如图5-15所示:图5-15奖罚设置窗体2.2工资查询为了更好的为员工提供方便,特设立了员工工资查询窗体,方便于各个部门的员工对每月工资的查询,以及奖罚设置更新后对工资的查询。还可以对查询后的结果进行打印。工资查询窗体如图5-16所示:52万方数据 第五章系统实现图5-16工资查询窗体打印的报表如图5-17所示:图5-17员工工资报表53万方数据 电子科技大学硕士学位论文第六章结论与展望经过三个多月的设计和开发,企业考勤管理系统基本开发完毕。其功能基本符合用户需求,能够完成信息录入、修改、删除、查询和打印报表等功能,使用户方便的对数据进行操作。经过分析了企业考勤管理系统的应用和实现,按照数据库设计理论一步一步地给出了系统设计的过程,具体的界面和模块设计,具体划分了的操作规范,设计了几个操作界面。实现了数据库表的浏览,记录的添加,删除和修改,实现了多数据库表的连接操作,实现了主从表操作。最后,系统还可导入数据库以对任意结构的数据库进行操作。在设计过程中,难免会遇到一些困难,经过这次的企业考勤管理系统开发,我总结出以下结论:将ADO字段中数据存储到文本框时,如果数据库中该字段为空,会产生错误,当估计可能会出现一个错误时,可以使用OnErrorResumeNext语句。不过,使用OnErrorResumeNext语句可能有一定的危险,因为它会使你注意不到运行期的错误。不能将这个语句当作万能语句来使用,如果估计不会出现错误,则不要用它。另外,仅仅因为你估计过程中可能出现错误,也并不意味着应该将OnErrorResumeNext语句用于整个过程。使用OnErrorResumeGoTo语句可以捕获意料之外的错误,但是要修改紧靠可能产生预期错误的代码行前面的已激活错误处理程序。当对预期的错误进行处理后,加上一个OnErrorResumeGoTo语句,再次激活主要的错误处理程序。1.1当前系统的局限性分析(1)本系统当前的问题是针对局域网用户,由于本系统采用C/S的架构体系导致必须要安装后才可以使用本系统,最终可能导致用户使用上不是非常便捷。(2)本系统当前部署方式是针对局域网用户的单一环境进行部署,考虑到考54万方数据 第六章系统的部署与测试勤管理系统的通用性以及扩展性,所以系统的架构转变也成了此系统重点考虑的问题之一。(3)系统界面的单一化和简单化可能会导致用户体验的降低,在现在软件大潮中,用户对软件产品的要求不断提高,不单单满足对软件功能的完善和强大,对于软件界面的友好性,观赏性和易用性,也同样成为用户喜欢软件的首选之一,因此本管理系统并没有充分考虑到这个部分。上述问题本人会通过继续的学习是的系统能够进一步的完善!1.1系统未来的发展2.1系统架构的改变针对于系统的架构的改变,本人愿意使用B/S的开发架构是的系统的灵活程度得到加强。并且随着Internet和WWW的流行[15],以往的主机/终端和C/S都无法满足当前的全球网络开放、互连、信息随处可见和信息共享的新要求,于是就出现了B/S型模式,即浏览器/服务器结构。B/S模式最大特点是:用户可以通过WWW浏览器去访问Internet上的文本、数据、图像、动画、视频点播和声音信息,这些信息都是由许许多多的Web服务器产生的,而每一个Web服务器又可以通过各种方式与数据库服务器连接,大量的数据实际存放在数据库服务器中。客户端除了WWW浏览器,一般无须任何用户程序,只需从Web服务器上下载程序到本地来执行,在下载过程中若遇到与数据库有关的指令,由Web服务器交给数据库服务器来解释执行,并返回给Web服务器,Web服务器又返回给用户。在这种结构中,将许许多多的网连接到一块,形成一个巨大的网,即全球网。而各个企业可以在此结构的基础上建立自己的Intranet。2.2当前问题的解决方案由于目前系统的部署是使用windowsservice进行的,从某种角度来说比较死板。所以当系统的总体架构改变成B/S是,我们的考勤管理系统的部署方式就可以更加多元化和便捷化。我们可以利用B/S的部署特性,可以把我们的系统部署到windows或Linux服务器上去,从而是的我们的系统更加强大。55万方数据 电子科技大学硕士学位论文对于系统界面的单一化这个问题的解决,我们可以通过团队的合作和美工,用户体验的多次交流和早期界面的定义,从这些角度上解决目前存在的问题。随着JS与XHTML的应用普及,越来越多的web界面应用技术出现在网站上,比如我们常见的日历控件,搜索下拉框等,这些web界面应用技术大大的丰富了网站的表现形式,Web应用程序的界面设计,其核心就是网页设计,但它的重点主要是在功能方面。要超越桌面应用程序,Web应用程序必须提供简单、直观和即时响应的用户界面,让他们的用户花更少的精力和时间去完成事情。以前,我们并没有注意到web应用程序这个方式,但是现在是时候仔细看看一些实用的技术和设计解决方案,我们也可以使用这些先进的页面开发技术使得我们的考勤管理系统更加漂亮和美观。56万方数据 致谢致谢经过几个月的忙碌和学习,本次毕业设计已经接近尾声了,作为一个刚接触软件工程的我,由于经验的匮乏,难免有许多考虑不周全的地方,如果没有指导教师的的督促指导,想要完成这个设计是难以想象的。在这里我要感谢的是我的指导老师。指导老师平日里工作繁多,但在我做毕业设计的每个阶段,从选题到查阅资料,论文提纲的确定,中期的指导,后期论文格式调整等各个环节中都给予了我悉心的指导。他的治学严谨和科学研究的精神也是我永远学习的榜样,并将积极影响我今后的学习和工作;他的和蔼可亲、为人师表让我从心底由衷地敬佩!感谢授课老师课上对我们的教导,你们丰富的授课内容拓宽了我的视野,让我能更顺利的完成这篇文章;感谢我的同学们,你们不仅让我感受到友情的力量,也让我感觉到了生活的愉悦,通过课堂讨论学到的思维方式将使我受益终生;还要感谢济南市各民间社团上至领导者、下至会员不遗余力的支持,没有你们的帮助,这篇论文是无法完成的。最后,我要向我的家人表示深深的谢意。你们的理解、支持、鼓励和鞭策催我更加上进,我竭尽全力的努力,更希望的是能够让你们高兴和满意。你们的情感永远都是我上进的不竭的动力源泉。这些时光会慢慢的沉淀下来,但无论何时,我想到这段岁月,都如同是看到一枚珍藏已久的夹在书里发黄的书签,永远都是那么璀璨、那么绚烂。57万方数据 电子科技大学硕士学位论文参考文献[1]邓荣霖,中国企业管理现状和发展,新浪网,2004[2]神州数码ERP,企业管理信息系统的“五化”发展趋势,2009[3]飘摇,赛迪网-企业管理信息系统的发展趋势,2009[4]杭州中正生物认证技术有限公司,指纹考勤管理系统技术建设方案,2010[5]百度百科,C/S介绍,2010[6]戴有炜WindowsServer2008网络专业指南科学出版社,2009[7](美)佩措尔德Windows程序设计清华大学出版社,2010[8]ItzikBen-Gan,实用MicrosoftSQLServer2008技术内幕:T-SQL语言基础,2009[9]李天真,方锦明VisualBasic60程序设计科学出版社,2003[10]百度百科,VBScript介绍,2010[11]何旭洪,骆娟VisualBasic数据库系统开发实例导航人民邮电出版社,2003[12]高春艳,李俊民,张耀庭VisualBasic信息系统开发实例精选机械工业出版社,2005[13]黄崇本,马林华数据库应用技术实用教程科学出版社,2003[14]萨师煊数据库系统概论第3版高等教育出版社,2000[15]百度百科,B/S介绍,2010[16]韩万江软件项目管理案例教程机械工业出版社,2005[17](美)威索基,(美)麦加里有效的项目管理电子工业出版社,2004[18](美)海史密斯敏捷项目管理清华大学出版社,2005[19]郭波,龚时雨,谭云涛项目风险管理电子工业出版社,2008[20](美)柯林斯基业长青中信出版社,2002[21](美)赫瓦特Windows高级调试机械工业出版社,2010[22]潘锦平,施小英,姚天昉软件系统开发技术西安电子科技大学出版社,2009[23]郭圣路,张荣圣,VisualBasic6.0中文版从入门到精通,电子工业出版社,2008[24]罗朝盛,郑玲利,VisualBasic6.0程序设计实用教程(第2版),清华大学出版社,2008[25]朱丽敏,面向对象程序设计——VisualBasic6.0,机械工业出版社,2007[26]苗雪兰,宋歌,数据库原理与应用技术,电子工业出版社,2009[27](美)戴维森等著,程桦等译,SQLServer2008数据库设计与实现,人民邮电出版社,2009[28](美)项目管理协会著,王勇,张斌译,项目管理知识体系指南(第4版)(PMBOK指58万方数据 参考文献南),电子工业出版社,2009[29](美)科兹纳著,杨爱华等译,项目管理:计划、进度和控制的系统方法(第10版),电子工业出版社,2010[30]刘晓辉,陈洪彬,从网管员到CTO--WindowsSerer2008服务器配置及管理实战详解,化学工业出版社,201059万方数据 电子科技大学硕士学位论文附录A数据库表表B.1用户信息表:tbUser字段名称数据类型字段长度可否为空字段说明UserIdchar10否用户名UserPasswordchar8否用户密码UserKindvarchar20否用户类型表B.2请假类型信息表:tbLeaveKind字段名称数据类型字段长度可否为空字段说明LeaveKindIdchar2否请假类型编号LeaveKindNamevarchar20否请假类型名称LeaveKindDesvarchar100是请假类型描述表B.3加班类型信息表:tbOverKind字段名称数据类型字段长度可否为空字段说明OverKindIdchar2否加班类型编号OverKindNamevarchar20否加班类型名称OverKindDesvarchar100是加班类型描述表B.4部门信息表:tbDep字段名称数据类型字段长度可否为空字段说明DepIdchar8否部门编号DepNamevarchar30否部门名称Describevarchar50是部门职能描述Payint4是工资60万方数据 附录A表B.5出勤信息统计表:tbWorkRecord字段名称数据类型字段长度可否为空字段说明RecordYearchar4否考勤年份RecordMonthchar2否考勤月份EmpIdchar8否职员编号DepIdchar8是所在部门编号DaysPresiMonthint4是当月全勤天数AbentDaysint4是未出勤天数LateDaysint4是迟到天数LeaveEarlyDaysint4是早退天数Hoursint4是累计工作小时表B.6加班信息统计表:tbOverRecord字段名称数据类型字段长度可否为空字段说明RecordYearchar4否考勤年份RecordMonthchar2否考勤月份EmpIdchar8否职员编号DepIdchar8是所在部门编号OverKindIdchar2是加班类型编码Hoursint4是加班工作小时表B.7请假信息统计表:tbLeaveRecord字段名称数据类型字段长度可否为空字段说明RecordYearchar4否考勤年份RecordMonthchar2否考勤月份EmpIdchar8否职员编号DepIdchar8是所在部门编号61万方数据 电子科技大学硕士学位论文LeaveKindIdchar2是请假类型编码LeaveDaysint4是请假累计天数表B.8工资统计表:tbPayrecord字段名称数据类型字段长度可否为空字段说明EmpIdchar8否职员编号DepIdchar8否所在部门编号BasePayint4否基本工资LeaveDatesint4否请假天数Overhoursint4否加班小时Latesint4否迟到次数Earlysint4否早退次数Payint4否总工资EmpNamevarchar20否职员姓名表B.9工资设置表:tbPaySet字段名称数据类型字段长度可否为空字段说明LeavePayreal4否请假工资OverPayreal4否加班工资LatePayreal4否迟到工资EarlyPayreal4否早退工资62万方数据