




已阅读5页,还剩56页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
毕业设计(论 文) GRADUATE DESIGN (THESIS)论文题目:基于ASP的员工绩效管理设计与实现学 生 陶松 教学中心 安徽亳州蒙城奥鹏学习中心专 业 2010春电子商务指导教师 虞洪强 二一三年 三 月 十九 日57 / 61摘 要本文主要介绍员工绩效管理系统从系统设计到系统测试的实现全过程,本系统采用ASP语言和Access数据库开发而成,包括职工管理、档案管理、考勤管理、工资绩效管理等模块,并将工资计算与考勤、奖惩绩效相关联,生成较合理的薪酬管理体制,以产生有效的激励机制。同时系统设置了一些必要的辅助功能,比如对员工行程变动、工程重要节点提醒和生日提醒等功能,有助于巩固企业与员工的心理契约,促进员工积极向上,向公司靠拢;还能帮助员工克服不好的习惯、养成符合企业需要的良好的工作习惯。系统能够实现数据的录入、插入、删除、查询、统计、更新等功能,能满足企业职工管理方面的基本要求。关键词:员工绩效;ASP;B/S模式; 管理目 录摘 要I1. 绪 论11.1 背景11.2本文的主要内容22. 相关技术介绍42.1 SQL Server数据库42.1.1 SQL基础42.1.2SQL语句62.1.3DDL与DML。72.1.4复杂操作实现92.2ASP简介102.2.1ASP简介102.2.2ASP的特点与功能112.2.3ASP的执行132.2.4ASP内置对象142.3B/S模式152.4系统的基本配置173. 系统设计183.1需求分析183.2系统设计203.3数据库设计213.3.1E-R图213.3.2数据库结构244. 系统实现314.1登陆模块的功能实现314.2职工管理模块的功能实现344.3档案管理模块的功能实现364.5考勤管理模块的功能实现435. 系统测试485.1用户功能测试485.1.1查看职工信息485.1.2新增员工信息485.1.3修改员工信息495.2考勤系统测试505.3工资数据系统测试505.3.1工资计算505.3.2工资发放516. 研究结论及建议52参考文献531. 绪 论1.1 背景目前公司的工资计算用Excel工作表制作,需要收发数十封邮件用于数据整理,通常34天才能完成,数据收集比较麻烦。市场上现有的员工管理软件要价太高动辄上万元,成本大,软件功能多、界面精美造成容量大,也使得系统的维护和更新相当的困难,无法贴合我企业部门实际要求。管理系统应具有良好的交互性,尽量避免或消除以往管理中的某些局限性。以界面的友好,实施的规范化为前提;以方便、实用、易行为主导;以缩短人们的时间来提高工作效率为目标。最终实现信息化、规范化、系统化、便捷化,实用化的交互平台,使整个系统运行过程简单、方便、易行、顺利。研发这个软件就是为了解决个人绩效工资的数据收集、整理、生成报表这些问题,应该先解决这些问题。公司领导希望有一套软件能把个人按月考勤、工作状况、奖惩等信息统一管理起来,直接高效的、准确的与员工绩效工资的挂钩,促进员工不断提高自身素质,提高工作积极性,从而提高公司整体的良性发展。人事工资管理是企业内部很重要的一个管理事项,其管理方式和工具对企业的决策者和管理者来说至关重要。但一直以来大多数企业内部人事和工资的管理基本上都是传统的手工操作,这种人工管理的方式效率低,保密性差,而且很难满足及时记录、随时查询的需要,为信息的管理者带来诸多不便。利用计算机进行信息控制和数据处理,不仅从整体上大大提高了工作效率和安全性,而且具有存储量大,寿命长,成本低等优点,这些更是手工管理所无法比拟的。用计算机支持完成人事管理的日常事务,能够使人事管理自动化和科学化,提高了信息处理的速度和准确性;工资管理更是一项琐碎、复杂而又十分细致的工作,如果实行手工操作,会浪费工作人员很多时间和精力,且失误在所难免,而使用计算机进行工资计算和发放,不仅能够保证工资核算准确无误,而且能对相关信息进行统计,使工资与考勤、奖惩等事项合理挂钩,使企业内部管理体制更加科学有效。总之,为了很好的实现数据的录入、插入、删除、查询、统计、更新等功能,以达到使企业人事工资信息管理科学化、系统化、规范化和自动化的目的,建立人事工资管理系统是十分必要的。1.2本文的主要内容根据系统服务对象的实际情况和对管理员工信息和管理员工薪资的具体需求,我利用ASP和Access数据库,结合数据库原理及应用,软件工程开发方法,在经过深入地学习之后,开发了此人事工资管理系统。在本系统中,主要采用B/S结构,运用ASP技术和Access数据库实现。本文研究的内容为基于ASP的员工绩效管理设计与实现。本文的组织结构:全文共分五章。第一章 概述,主要是介绍系统开发的背景、开发的目的及意义,以及本文的内容及组织结构。第二章 相关技术介绍,介绍SQL Server数据库,ASP简介,B/S开发模式。第三章 系统设计,介绍对员工绩效管理系统进行需求分析,描述系统模块组成以及数据库的设计。第四章 系统实现,介绍各模块的功能实现过程。第五章 系统测试,对各功能模块进行系统测试,介绍测试过程。第六章 结论,总结系统开发和个人心得。2. 相关技术介绍2.1 SQL Server数据库2.1.1 SQL基础SQL(Structured Query Language,结构查询语言)是一个功能强大的数据库语言。SQL通常使用于数据库的通讯。ANSI(美国国家标准学会)声称,SQL是关系数据库管理系统的标准语言。SQL语句通常用于完成一些数据库的操作任务,比如在数据库中更新数据,或者从数据库中检索数据。使用SQL的常见关系数据库管理系统有:Oracle、 Sybase、 Microsoft SQL Server、 Access、 Ingress等等。虽然绝大多数的数据库系统使用SQL,但是它们同样有它们自立另外的专有扩展功能用于它们的系统。但是,标准的SQL命令,比如“Select”、 “Insert”、 “Update”、 “Delete”、 “Create”和 “Drop”常常被用于完成绝大多数数据库的操作。MS SQL Server就是用的Transact- SQL。SQL语言有着非常突出的优点,主要是:非过程化语言、统一的语言、是所有关系数据库的公共语言。非过程化语言:SQL是一个非过程化的语言,因为它一次处理一个记录,对数据提供自动导航。SQL允许用户在高层的数据结构上工作,而不对单个记录进行操作,可操作记录集,所有SQL语句接受集合作为输入,返回集合作为输出。SQL的集合特性允许一条SQL语句的结果作为另一条SQL语句的输入。SQL不要求用户指定对数据的存放方法, 这种特性使用户更易集中精力于要得到的结果;所有SQL语句使用查询优化器,它是RDBMS的一部分,由它决定对指定数据存取的最快速度的手段,查询优化器知道存在什么索引,在哪儿使用索引合适,而用户则从不需要知道表是否有索引、有什么类型的索引。统一的语言:SQL可用于所有用户的DB活动模型,包括系统管理员、数据库管理员、 应用程序员、决策支持系统人员及许多其它类型的终端用户。SQL为许多任务提供了命令,其中包括:查询数据在表中插入、修改和删除记录建立、修改和删除数据对象控制对数据和数据对象的存取保证数据库一致性和完整性以前的数据库管理系统为上述各类操作提供单独的语言,而SQL将全部任务统一在一种语言中。所有关系数据库的公共语言:由于所有主要的关系数据库管理系统都支持SQL语言,用户可将使用SQL的技能从一个RDBMS(关系数据库管理系统)转到另一个,所有用SQL编写的程序都是可以移植的。2.1.2SQL语句SQL功能强大,是一种完备的数据处理语言,不仅用于数据库查询,而且用于数据库中的数据修改和更新,概括起来,它可以分成以下几组:DML(Data Manipulation Language,数据操作语言):用于检索或者修改数据; DDL(Data Definition Language,数据定义语言): 用于定义数据的结构,比如 创建、修改或者删除数据库对象; DCL(Data Control Language,数据控制语言):用于定义数据库用户的权限。DML组可以细分为以下的几个语句:SELECT:用于检索数据;INSERT:用于增加数据到数据库;UPDATE:用于从数据库中修改现存的数据;DELETE:用于从数据库中删除数据。DDL语句可以用于创建用户和重建数据库对象。下面是DDL命令:CREATE TABLE,ALTER TABLE,DROP TABLE,CREATE INDEX,DROP INDEX下面是一个简单SQL语句的例子:我们使用SQL语句来从Book中检索借书证号为000001的借阅者姓名:SELECT姓名 FROM Book WHERE借书证号 = 0000012.1.3DDL与DML。数据定义语言DDL:它是用来创建和修改数据库结构的一种语句,包括Create、Alter和Drop语句。数据操作语言DML:包括数据查询与数据更新。数据查询主要是由Select语句完成,这一点不再赘述。而数据更新所造成的风险大大超过数据查询。数据库管理系统必须在更改期内保护所存储的数据的一致性,确保有效的数据进入数据库,数据库必须保持一致性,DBMS还必须协调多用户的并行更新,以确保用户和它们的更改不至于影响其它用户的作业。用于修改数据库内容的SQL语句主要有以下三个:Insert,向一个表中加入新的数据行; Delete,从一个表中删除数据行;Update,更改数据库中已经存在的数据。 Insert标准语法:INSERT INTO table name (col1, col2.) VALUES (value1, value2.)下例要将借书证号为000001作为一个新的借书情况加入借书情况表OWNER中。 Insert Into owner (借书证号,图书编号,借书日期) values (000001,00000001,2002-9-12)Insert语句还可以将多行数据添加到目标表中去,在这种形式的Insert语句中,新行的数据值不是在语句正文中明确地指定的,而是语句中指定的一个数据库查询。添加的值来自数据库自身的行,在某些特定的状态下,这是非常有用的。多行Insert语句为拷贝数据提供了一种紧凑而高效的方法,但我在自己做的图书管理系统中没有使用这种方法,我在系统中是使用循环依照上面的用法来完成多个记录的插入。 Update语句用于更新单表中选定行的一列或多列的值。要更新的目标表在语句中定义,Set子句则指定要更新哪些列并计算它们的值。Update语句总是包含Where语句,而且Update语句比较危险,所以您必须明确地认识到Where语句的重要性,Where语句被用来指定需要更新的行。标准语法:UPDATE table nameSET columnname1 = value1, columname2 = value2.WHERE search conditionDelete语句标准语法:DELETE FROM table name WHERE condition2.1.4复杂操作实现在信息管理系统中,我们往往会遇到归类、汇总、映射、索引、子查询等复杂操作,相应的支持与实现如下: GROUP BY方法GROUP BY子句语法为: SELECT column1, SUM(column2)FROM “list-of-tables”GROUP BY “column-list”; 这个GROUP BY子句将集中所有的行在一起,它包含了指定例的数据以及允许合计函数来计算一个或者多个列。在本人的系统中在显示数据时用到了此语句来对查询所得的内容排序然后再显示。组合条件和布尔运算符以下的SQL语句中就含有组合条件:SELECT column1, SUM(column2)FROM “list-of-tables”WHERE “condition1” AND “condition2”; 下面是一个示例:SELECT身份描述FROM ID, userWHERE ID.身份编号=USER.身份编号and user.借书证号=000001; 这条SQL语句是从user、id表中查找借阅证号为000001的借阅者的身份描述,第三条语句中如果其中有一个条件为假,那么就什么都没有显示。UNION子句有些时候,需要一起浏览多个查询的结果、组合它们的输出,我们可以使用UNION关键字。 2.2ASP简介2.2.1ASP简介近年来随着Internet技术的飞速发展及用户需求的不断升级,Web页面技术也不断的推陈出新,使得Web站点的功能越来越强大,能够提供的服务种类越来越繁多。从HTML、Client Script 到CGI,从JAVA的诞生到ActiveX, Web页面设计人员不断受到冲击,微软公司在总结了以往技术,重新思考Web页面设计的真正需要后,推出了Active Server Pages (ASP),一种用以取代CGI(Common Gateway Interface,通用网关接口)的技术。简单讲,ASP是位于服务器端的脚本运行环境,通过这种环境,用户可以创建和运行动态的交互式 Web 服务器应用程序,如交互式的动态网页,包括使用 HTML 表单收集和处理信息,上传与下载等等。更重要的是,ASP使用的ActiveX技术基于开放设计环境,用户可以自己定义和制作组件加入其中,使自己的动态网页几乎具有无限的扩充能力,这是传统的Web编写工具所远远不及的地方。使用ASP还有个好处,就在于ASP可利用ADO(Active Data Object,微软的一种新的数据访问模型)方便快捷地访问数据库,从而使得开发基于www的应用系统成为可能,这也是本文选择ASP作为开发工具最重要的原因之一。ASP (Active Server Pages)由Microsoft公司开发的服务器端脚本编程环境。通过ASP,用户可以结合HTML网页、ASP指令和ActiveX元件建立动态、交互且高效的Web服务器应用程序。ASP的出现使用户不必担心客户端浏览器是否能运行你所编写的代码,因为所有的程序都将在服务器端执行,包括所有嵌在普通HTML中的脚本程序。客户端只要使用可执行的HTML代码的浏览器,即可浏览通过ASP设计出来的页面内容。当程序执行完毕后,服务器仅将执行的结果返回客户端浏览器,这样就减轻了客户端浏览器的负担,大大提高了信息交换速度。2.2.2ASP的特点与功能从软件的技术层面看,ASP有如下的特点:1、无需编译ASP脚本集成于HTML当中,容易生成,无需编译或链接即可直接解释执行。2、易于生成使用常规文本编辑器(如Windows下的记事本),即可进行*.asp页面的设计。若从工作效率来考虑,不妨选用具有可视化编辑能力的Visual InterDev。3、独立于浏览器用户端只要使用可解释常规HTML码的浏览器, 即可浏览ASP所设计的主页。ASP脚本是在站点服务器端执行的,用户端的浏览器不需要支持它。因此,若不通过从服务器下载来观察*.asp 主页,在浏览器端见不到正确的页面内容。4、面向对象在ASP脚本中可以方便地引用系统组件和ASP的内置组件,还能通过定制 ActiveX Server Component(ActiveX服务器组件)来扩充功能。5、与任何ActiveX scripting 语言兼容除了可使用VBScript 和JScript语言进行设计外,还可通过Plug-in的方式,使用由第三方所提供的其它scripting 语言。6、源程序码不会外漏ASP脚本在服务器上执行,传到用户浏览器的只是ASP执行结果所生成的常规HTML码,这样可保证辛辛苦苦编写出来的程序代码不会被他人盗取。6从应用的层面看,ASP有如下的功能:1、处理由浏览器传送到站点服务器的表单输入。2、访问和编辑服务器端的数据库表。使用浏览器即可输入、更新和删除站点服务器的数据库中的数据。3、读写站点服务器的文件,实现访客计数器、座右铭等功能。4、提供广告轮播器、取得浏览器信息、URL表管理等内置功能。5、由cookies读写用户端的硬盘文件,以记录用户的数据。6、可以实现在多个主页间共享信息,以开发复杂的商务站点应用程序。7、使用VBScript或Javacript等简易的脚本语言,结合HTML码,快速完成站点的应用程序。通过站点服务器执行脚本语言,产生或更改在客户端执行的脚本语言。2.2.3ASP的执行一个ASP文件相当于一个可执行文件,因此必须放在Web服务器上有可执行权限的目录下。当浏览器向Web服务器请求调用ASP文件时,就启动了ASP。Web服务器开始调用ASP,将被请求的.asp文件从头到底,执行每一个命令,然后动态生成一个HTML页面并Web浏览器Web应用ASP,HTML申请ASP网页返回客户端脚本Web服务器解释定位数据请求数据库服务器送到浏览器。具体如图2-1所示。图2-1 执行ASP文件的过程2.2.4ASP内置对象ASP提供了可在脚本中使用的内建对象。使用这些对象编写的ASP脚本可帮助服务器收集浏览器发送和请求的信息、响应浏览器和存储用户信息,从而使对象开发者摆脱很多烦琐的工作。目前ASP提供的对象含有Web服务器和它的环境信息,并且它提供了一个灵活的数据存储系统。这些功能可被加入到Web应用中,使Web应用功能更加强大。ASP共有六个内建对象,现在对其只做简单介绍。Request对象:可以使用Request对象访问任何基于HTTP请求传递的所有信息,包括从HTML表格用POST方法或GET方法传递的参数、cookie和用户认证。Response对象:Response对象是用来控制发送给用户的信息,包括直接发送信息给浏览器、重定向浏览器到另一个URL或设置cookie的值。Server对象:Server对象提供对服务器上的方法和属性的访问。Application对象:可以使用Application对象,在给定的应用程序的所有用户之间共享信息,并在服务器运行期间持久的保存数据。Session对象:可以使用Session对象存储特定的用户会话所需的信息。当用户在应用程序的页之间跳转时,存储在Session对象中的变量不会清除;而用户在应用程序中访问页时,这些变量始终存在。ObjectContext对象:提交或撤消由ASP脚本初始化的事务。2.3B/S模式 目前大家所熟知的软件系统体系结构有两种,即C/S与B/S结构。C/S结构,即Client/Server(客户机/服务器)结构,是大家熟知的软件系统体系结构,通过将任务合理分配到Client端和Server端,降低了系统的通讯开销,可以充分利用两端硬件环境的优势。10B/S结构,即Browser/Server(浏览器/服务器)结构,是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构。在这种结构下,用户界面完全通过www浏览器实现,一部分事务逻辑在前端实现,但是主要事务逻辑在服务器端实现,形成所谓3-tier结构。软件系统的改进和升级越来越频繁,B/S架构的产品明显体现的更方便的特性。无论用户的规模有多大,有多少分支机构都不会增加任何维护升级的工作量,所有的操作只需要针对服务器进行,如果是异地只需要把服务器连接上网即可立即进行维护和升级,这对人力、时间、费用的节省是相当惊人的。B/S结构的最大优势是:1、它可以在任何时间、任何地点(没有局域、广域之分)、以任何接入方式(有线或无线连接)实现跨平台的网络实时操作。2、不限定用户使用人数,开发和使用成本都非常低3、突出的易用性,客户端采用国际标准化的浏览器(如IE),因此基本上不需要进行用户培训,无论是决策层还是操作层的人员都无需培训就可以直接使用。4、客户端免维护、免安装、免开发,节省了内存和存储空间,也节省了开发时间,降低了成本。给应用系统的安装、调试、日常维护和升级都带来极大的便利,传统的C/S模式除了问题则需要在服务器和客户端之间奔波,对于稍微大一点的机构这种工作量可想而知相当大,效率也低,时间花的非常多。5、强大的远程管理和维护能力。6、B/S模式也将为今后企业实现电子商务的后台管理系统(与前台开放式网站自动连接),从而为企业全面迈进电子商务打下基础。7、跨平台,更多选择。所有应用系统均具有跨平台的特性,适应任何主流平台,包括WindowsXP/NT/Linux/Unix/FreeBSD等,支持无线WAP、XML、XSL、WML等标准,拥有强大的扩展性和开放性、安全性、稳定性。因此,从技术发展的角度来说,现在选择管理软件最好考虑Web模式(B/S结构)的系统,以替代传统的、甚至是有缺陷的、价格昂贵的C/S结构的网络软件了。2.4系统的基本配置 为了能够更好的发挥ASP的功能,我使用了以下的配置:1、Intel Pentium 或更高档次的CPU处理器(建议使用Pentium 及以上)2、2MB以上的RAM内存(建议使用64MB或以上)3、至少80MB以上的可用硬盘空间(压缩模式安装),完全安装需要大约250MB的可用硬盘空间,考虑到运行效率,建议硬盘至少应有300MB以上的剩余空间4、CD-ROM驱动器5、VGA或更高分辨率的显示器6、鼠标或其他点击设备 Microsoft Windows 9x/2000或Windows NT 4.0(及Service Pack 3.0或更高版本)。3. 系统设计3.1需求分析随着科学技术的发展和人们生活水平的不断提高,计算机的价格也已经越来越能被很多人所接受。不管是在企业还是家庭,计算机的使用已经成为普遍现象。所以从用户经济方面考虑,本系统的开发不会有很大的困难和风险。且系统本身成本较低,不需要很多的开发费用和以后的维护费用。本系统使用ASP(Active Server Pages)作为开发工具。ASP采用面向对象的编程方法-把程序和数据封装起来作为一个对象,并为每个对象赋予相应的属性,在ASP脚本中可以方便地引用系统组件和ASP内置组件,还能够通过第三方组件来扩充功能;而且用ASP编写的页面非常小巧;灵活;实用无需编译;可以方便的进行人机交互。同时又可以用非常简单的语句实现对数据库的操作。由于ASP程序的短小精干,对于繁忙的网络系统不会造成很大的压力。系统采用Access作为后台数据库开发工具。Access作为Microsoft Office套件中的数据库管理软件,其图形化界面使数据库管理更加简洁、灵活,同时又具有丰富的编程接口以及强大的报表功能,能够为我们从事程序开发提供了很多方便。由于本系统管理的对象比较单一,都是企业员工,且每个数据库内容具有较强的关联性,设计的过程不是特别复杂,因此,比较适合于采用数据库管理。且因为本系统所耗费的资源非常小,企业一般使用的微机无论在软件上还是硬件上都可以满足运行要求。一个基于网络的人事工资管理系统,能在网络环境下实现数据的录入、插入、删除、查询、统计、更新等功能。将工资管理作为一个独立的模块与人事管理相联系,同时关联员工的考勤和奖惩等管理,来生成每个员工的基本工资、津贴、实际发放工资等等,能够实现人事信息和工资管理的科学化、系统化、规范化和自动化。工资管理系统是为服务于企业内部人事和工资信息的管理而开发,主要用于企业使用电脑掌握和记录员工档案、快速计算和记录工资发放、全面统计员工考勤和奖惩、培训等事项,要求系统界面美观大方,数据的修改和删除简单方便,数据具有可靠性和稳定性。具体应达到以下目的:1、科学管理员工档案,优化分类,全面反映员工情况。2、管理考勤信息,保证工作秩序。3、记录薪资发放信息,保证有效的激励机制。4、管理员工奖惩信息,促进员工积极向上。3.2系统设计人事工资管理系统共包括以下七个功能模块:职工管理模块、考勤管理模块、档案管理模块、工资管理模块、事项记录模块、其他事记模块、系统管理模块。其中每个模块又分为若干个小功能模块。其系统功能模块详细关系如图3-1所示。图3-1 系统模块结构图3.3数据库设计3.3.1E-R图规划出的实体包含:职工、管理员、部门、考勤记录、考勤统计、事项记录、工资管理、工资发放表。各个实体具体的描述E-R图如下:职工职工姓名职工编号所在部门图3-2 职工信息E-R图管理员用户名密码 权限图3-3.3部门E-R图考勤记录早退迟到加班请假日期时间图3-4考勤记录E-R图考勤统计 加班时间 上班天数图3-5考勤统计E-R图事项记录奖惩记录培训记录调动记录日期备注图3-6事项记录E-R图工资管理基本工资津贴计算公式图3-7 工资管理E-R图工资发放基本工资津贴加班费应发工资实发工资图3-8 工资发放E-R图3.3.2数据库结构本系统采用Access进行数据库的设计。根据系统功能需求及功能模块的划分要求,创建一个数据库文件worker.MDB。在此数据库中建立整个数据表:职工信息表(worker):存放企业人员姓名、编号、所在部门等基本信息。管理员信息表(user):存放操作员用户名、密码、权限等基本信息。部门信息表(dept):存放部门名称、部门编号等信息。考勤记录表(rool):存放每位员工每月早退、迟到、请假、加班等的日期和时间。考勤统计表(roolstat):存放每位员工一个月的上班天数、加班时间等。事项记录表(others):存放员工奖惩记录、培训记录、调动记录等重要事项记录,包括员工及记录事项、日期和说明。工资数据管理表(paymana):存放员工基本工资、津贴、工资计算使用公式等工资数据。工资发放记录表(pay):存放员工每月发放的基本工资、津贴、加班费、应发工资、实发工资等工资数额。对用来进行数据存取的所有8个表的数据项和数据结构见表3-9到表3-16所示:字段名称数据类型说明约束条件idint自动编号PKnameVarchar(20)姓名not nullcard_noint编号not nullcardnoVarchar(20)身份证号not nullsexChar(2)性别not nullbirthdaydate出生日期not nulladdVarchar(20)籍贯not nullwhVarchar(20)文化程度not nullzcVarchar(20)职称not nullzwVarchar(20)职务not nulljcVarchar(20)进厂日期not nullhthVarchar(20)合同号not nullhtqint合同期not nullhtdqdate合同到期日not nullsjVarchar(20)手机号not nullmailVarchar(20)Emailnot nullbyxxVarchar(20)毕业学校not nullpart_idVarchar(20)所在部门编号not nullzyVarchar(20)专业not null表3-9 职工信息表(worker)字段名称数据类型说明约束条件User idint自动编号PKUser nameVarchar(20)用户别名not nullpasswordVarchar(20)用户密码not nullTure nameVarchar(20)真实姓名not nullleaderint管理档案权限not nullmanagerint管理考勤记录权限not nullLogin timedate登录时间not null表3-10 管理员信息表(user)字段名称数据类型说明约束条件Uses idint编号PKUses nameVarchar(20)部门名称not nullmemoVarchar(20)备注表3-11 部门信息表(dept)字段名称数据类型说明约束条件idint自动编号PKwidint员工号FK(worker)cascadesxChar(2)上午或下午not nullctimefloat迟到或早退时间not nulljtime float加班时间not nullkqChar(2)是否缺勤not nulldatefloat日not nullkmfloat月not nullkyfloat年not null表3-12 考勤记录表(rool)字段名称数据类型说明约束条件idint自动编号PKwidint员工编号FK(worker) cascademonthint月份not nullkyearint年份not nullcdint迟到次数not nullsjint事假次数not nullbjint病假次数not nullkgint缺勤次数not nulljbint加班次数not nullctimefloat迟到时间累计not nulljtimefloat加班时间累计not nullztimefloat早退时间累计not nullcddVarchar(20)迟到日not nullzddVarchar(20)早退日not nullsddVarchar(20)事假日not nulljbbVarchar(20)加班日not nullkddVarchar(20)缺勤日not nullbddVarchar(20)病假日not null表3-13 考勤统计表(roolstat)字段名称数据类型说明约束条件idint自动编号PKwidint员工编号FK(worker) cascadejgfloat基本工资not nulljtfloat津贴或奖金not nullgsfloat工资计算公式not nullbzVarchar(200)备注表3-14 工资数据管理表(paymana)段名称数据类型说明约束条件idint自动编号PKwidint员工编号FK(worker) cascademonthint月not nullgyint年not nulljgfloat基本工资not nulljtfloat津贴或奖金not nulljbfloat加班费not nullqqfloat缺勤扣除not nullyffloat应发工资not nullssfloat税收扣除not nullqkfloat其他扣除not nullsffloat实际发放not nullyndate发放日期not null表3-15 工资发放记录表(pay)字段名称数据类型说明约束条件idint自动编号PKwidint员工编号FK(worker) cascadesxVarchar(200)事项名称not nulljlVarchar(200)事项记录not nullslint天数not nullRqdate日期not nullbzVarchar(200)备注not null表3-16 事项记录表(others)4. 系统实现4.1登陆模块的功能实现系统登录界面是系统管理模块中重要的一部分。它是进入人事工资管理系统后显示的默认页面,也是在使用过程中需要重新登录时返回的页面。该页的主要作用是提供填写用户名和密码的表单,即描述了一个FORM。该页面主要是为了进行密码验证而设置。其界面如图4-1所示:打开人事工资管理系统后,系统提示输入用户名和密码进行登录,用户填写完并提交表单后,系统对数据库进行检索,以验证输入的用户名和密码是否正确。如有误,将发出警告信息,如数据库中有对应记录,则表示用户合法。其主要验证代码如下:dim user,password,selstorage /声明变量user=request(username)/获取在登录界面中输入的用户名,并保存在变量user中password=request(password)sql=select * from user where username=&user& and password=&password& /数据库查询语句rs.open sql,conn,3,2 /执行数据库查询操作if rs.eof and rs.bof then /如果该记录为空response.writealert(错误的用户名或密码,请重新输入! ); /显示警告信息response.writejavascript:history.go(-1) /返回上一页else /如当前记录不是数据集rs的最后一条或第一条记录以下是记录用户是否登录、登录时间以及登录IP地址rs(isonline)=Truers(login_time)=now()rs(ip)=Request.ServerVariables(REMOTE_HOST)rs.update /执行操作 session(userlogin)=true /将会话级变量userlogin设置为真 session(storage)=selstorage session(username)=user /将用户名保存在会话级变量中以下是从数据集rs的当前记录中取得并保存在cookies中response.cookies(guestok)=true response.cookies(leader)=rs(leader) response.cookies(adminok)=rs(manager) response.redirect main.asprs.close /关闭连接end if4.2职工管理模块的功能实现职工管理模块:本模块根据搜索内容和方式分为按部门查看员工和离职员工查看两部分。其中按部门查看员工的界面如图4-2.2所示:图4-2.2 据部门查看员工页面图4-2.2 据部门查看员工页面搜索员工时,首先要获得表单提交的参数,建立与数据库的连接,读取符合搜索条件的记录。其关键代码如下:if not isempty(request(page) then /假如page不为空pagecount=cint(request(page) /提交page else /当page为空pagecount=1 /当前页指定为第一页end ifif t3=0 thensql=select * from worker where name like %&t1&% and card_no like %&t2&% /查询数据库 elsesql=select * from worker where name like %&t1&% and card_no like %&t2&% and part= &t3&end ifrs.open sql,conn,1,1 /执行操作该页所显示的记录数目是通过分页显示来实现的。每一页显示的记录数即人员个数用PageSize来表示,而当前记录所在的页号则由AbsolutePage来确定。实现分页功能的代码如下: if rs.eof then /如果当前记录是数据集的最后一条记录 response.writealert(对不起,没有符合搜索条件的记录!); /显示警告 response.writejavascript:history.go(-1); response.end /停止处理脚本并返回当前结果 end if rs.pagesize=10 /设置每页显示记录条数为10条 if pagecountrs.pagecount or pagecount=0 then /如果请求的页数大于总页数或小于等于0 pagecount=1 /页码号变量设为1end if rs.AbsolutePage=pagecount /定位到结果集pagecount指定的页a.离职员工页面的显示与按部门搜索员工页面相似,其特点是在读取数据库中的记录时,读取字段OUTONE值为1的记录,表明该员工已经离职。其它代码和界面显示不再详细介绍。4.3档案管理模块的功能实现该模块包括新增员工档案的建立、已有员工档案资料的修改、及员工辞退信息的记录。下面着重介绍档案的建立:员工档案的建立包括档案信息输入和档案保存。新增员工页面如图4-3.3所示: 图4
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 营销员综合考试题及答案
- 劳动合同终止及经济补偿
- 2025三元区国有商品林采伐与销售权转让合同书
- 2025年虚拟同步机在智能电网智能化运维技术创新报告
- 中国邮政2025泉州市秋招数据分析岗位面试模拟题及答案
- 广东省烟草公司2025秋招人力资源岗位面试模拟题及答案
- 2025年新能源汽车充电设施运营管理项目储能技术应用可行性研究
- 2025年母婴护理师资格考试试题及答案
- 中国邮政2025太原市秋招供应链解决方案岗位高频笔试题库含答案
- 2025年慢性病防控工作会议试题(附答案)
- 胃石的内镜下治疗
- GB/T 23356-2024卷烟烟气气相中一氧化碳的测定非散射红外法
- 结核课件教学课件
- 创新创业基础与实践 课件 项目4 捕捉创业商机
- 物流基础题库各章练习题与自测题习题库带答案复习题思考题章末测试题1-8章全
- 《大数据导论(第2版)》全套教学课件
- 小学数学教学中数形结合思想的应用
- 职业病防护设施与个体防护用品的使用和维护
- 江苏名校四年级数学上册第二单元《两、三位数除以两位数》试卷及答案
- 统编版语文四年级上册第三单元 连续细致观察 准确生动表达单元任务群整体公开课一等奖创新教学设计
- 【部编版】新人教小学语文五年级上册-中华成语千字文(打印稿)
评论
0/150
提交评论