考勤管理系统实验报告附源代码.docx

上传人:b****2 文档编号:18054839 上传时间:2023-08-07 格式:DOCX 页数:76 大小:450.12KB
下载 相关 举报
考勤管理系统实验报告附源代码.docx_第1页
第1页 / 共76页
考勤管理系统实验报告附源代码.docx_第2页
第2页 / 共76页
考勤管理系统实验报告附源代码.docx_第3页
第3页 / 共76页
考勤管理系统实验报告附源代码.docx_第4页
第4页 / 共76页
考勤管理系统实验报告附源代码.docx_第5页
第5页 / 共76页
考勤管理系统实验报告附源代码.docx_第6页
第6页 / 共76页
考勤管理系统实验报告附源代码.docx_第7页
第7页 / 共76页
考勤管理系统实验报告附源代码.docx_第8页
第8页 / 共76页
考勤管理系统实验报告附源代码.docx_第9页
第9页 / 共76页
考勤管理系统实验报告附源代码.docx_第10页
第10页 / 共76页
考勤管理系统实验报告附源代码.docx_第11页
第11页 / 共76页
考勤管理系统实验报告附源代码.docx_第12页
第12页 / 共76页
考勤管理系统实验报告附源代码.docx_第13页
第13页 / 共76页
考勤管理系统实验报告附源代码.docx_第14页
第14页 / 共76页
考勤管理系统实验报告附源代码.docx_第15页
第15页 / 共76页
考勤管理系统实验报告附源代码.docx_第16页
第16页 / 共76页
考勤管理系统实验报告附源代码.docx_第17页
第17页 / 共76页
考勤管理系统实验报告附源代码.docx_第18页
第18页 / 共76页
考勤管理系统实验报告附源代码.docx_第19页
第19页 / 共76页
考勤管理系统实验报告附源代码.docx_第20页
第20页 / 共76页
亲,该文档总共76页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

考勤管理系统实验报告附源代码.docx

《考勤管理系统实验报告附源代码.docx》由会员分享,可在线阅读,更多相关《考勤管理系统实验报告附源代码.docx(76页珍藏版)》请在冰点文库上搜索。

考勤管理系统实验报告附源代码.docx

考勤管理系统实验报告附源代码

第一章信息系统概况

1.1选题介绍

当今社会,计算机已经十分普及,性能也日趋完善。

它已经被应用于许多领域。

比如说,小到图书馆的图书管理,超市或网吧的收费管理,KTV的点歌系统,大到航空、铁路的售票,全国人口户籍的管理等等。

随着现代科技的进步,用计算机来进行考勤的管理也成为现代化企业运作必不可少的一部分。

在过去我们的考勤工作都是人工完成的,不仅浪费了很多的人力跟物力,而且无法保证其准确性和透明度,给企业的管理带来了许多的不便。

现在利用计算机来管理我们的考勤工作,大大降低了工作人员的工作量,提高了工作效率,使原本复杂和枯燥无味的工作变得简单而轻松了,而且也实用、安全。

计算机技术特别是数据库技术的发展为企业建立管理信息系统,甚至对改变管理思想起着不可估量的作用。

实践证明信息技术已在企业的管理层面扮演越来越重要的角色。

通过考勤系统我们能很容易地对公司员工的信息有一个基本的了解,可以很方便地知道员工的出勤情况,通过对员工出勤信息的了解,就能计算出员工的实际工资。

一切的统计和计算都由计算机代为管理了,考勤信息管理系统对企业的合理化管理起到了很大的作用,它为企业信息化的建设打响了头炮,而企业的信息化建设已成为现代各个企业发展的需要。

所以说,考勤管理系统的开发具有非常重要的意义。

第二章信息系统分析

2.1可行性分析

目前,计算机在我国的考勤管理工作中,主要可用来进行报表处理,档案管理,文书编辑,信息查询,综合分析。

查询统计作为考勤管理的一个重要组成部分,是通过对考勤情况的调查,整理和分析,了解考勤情况的发展趋势,为各级领导机关制定考出勤的方针,政策,加强干部管理,改革干部制度提供准确数字的依据。

其工作除涉及到干部的基本情况统计之外,还包括职工的工资统计,职工的考勤情况统计,职工的奖惩情况统计,职工的出差情况统计,职工的请假情况统计等方面,其涉及的面之广,数据量之大可想而知,若利用手工进行考勤的统计工作,大致要经过考勤统计查询,考勤的统计资料的整理,考勤统计分析三个过程,但这种手工统计过程,存在着几个明显的问题,比如说统计资料缺乏准确性,及时性,需要花费大量的人力,物力,财力等。

手工方法所表现出来的种种劣势,使人们慢慢意识到管理现代化已成为当代社会发展的一股不可抗拒的洪流。

在管理现代化的浪潮中,考勤管理现代化也势在必行。

实现考勤管理现代化是一个复杂的系统工程,需要采取科学的管理方法和先进的科技手段。

科学的管理方法在管理中一般是指数学方法、系统方法、信息方法、控制论方法、社会学方法、心理学方法等科学方法,而先进的科技手段主要是运用当代最新科学技术之一的电子计算机来为考勤管理现代化服务。

而且一个完善的考勤系统应做到以下几点:

•提高了考勤管理效率,减轻劳动强度;

•提高信息处理速度和准确性;

•为考勤负责人提供更方便、科学的服务项目

2.1.1技术可行性分析

系统开发环境:

Windowsxpsp3+vs2005+sqlserver2000技术已经比较成熟,和其他应用开发语言比起来有很大的优势,所以利用这些技术是完全可以完成这些功能的。

同时由于逻辑不是太复杂,估计可以按时完成此项目。

考勤管理系统是工作主要是在职工和管理都有之间架起一座桥梁,能相互沟通信息和处理信息。

这一特点非常适合计算机特点,通过网络internet技术,发挥计算机的信息传输速度快、准确度高的优势。

计算机硬件和软件技术的飞速发展,为系统的建议提供了技术条件。

2.1.2经济可行性分析

(1)支出

A、在基建投资上,只需要配置一台DELL服务器,大概2万左右;

B、软件设计和开发费用:

2.5万元

C、经常性指出:

(主要是指软件的维护费用)

(2)收益

进一步实现办公自动化,减少人力投资和办公费用,极大提高办公效率,同时更好地控制考勤制度,降低成本。

(3)投资回收周期

根据经验算法,收益的累计数开始超过支出的累计数的时间为1年。

2.1.3社会因素可行性分析

对所建议系统的社会因素方面的可行性分析:

(1)法律可行性

新系统的研制和开发,所有软件都选用正版,将不会侵犯他、集体和国家的利益,不会违反国家政策和法律。

(2)使用方面的可行性

由于新系统的客户端只要求用浏览器,管理者与人员完全有能力使用此系统,并且新系统的研制和开发是充分考虑工作人员对考勤的易于管理,提高工作效率,界面友好,操作简单方便,能完全满足职工的使用要求。

对传统管理理念的冲击,可能引起管理层的变动和人员调整。

对于企业管理人员的要求提高,使企业在一定的可能下进行机构精简,迫使工作人员继续学习新知识,拓宽企业在市场竞争环境下的生存空间。

对于企业的管理者与职工之间管理方式的转变和扩充。

2.1.4可行性分析结论

结论意见:

经上述可行性分析,系统研制和开发可以立即开始进行

2.2客户需求分析

考勤系统应该便于管理者的查询、修改、更新、统计以及高层管理人员的查询等操作。

能从整体上体现去每个员工每日,每月的出勤情况。

基本信息管理包括节假日日期设置、部门信息管理和员工信息管理。

(1)主要功能

a.员工

考勤签到:

员工每天上班时需要登陆系统进行签到,如果当天已经签到了,则不执行重复操作!

考勤签退:

员工每天下班时需要登陆系统进行签退,如果当天还没有签过到,则不执行签退操作,如果当天还没有到下班时间,也不执行签退操作!

节假日查看:

员工可以登录查看节假日加班安排

系统管理:

修改自己的密码,查看系统简介.

b.管理员

员工信息管理:

管理员登陆系统后可以添加新的员工信息,可以对现有员工的信息进行修改和查询!

可以删除某些员工信息,当删除员工信息时同时将删除他们的考勤信息

职位类别及上下班时间管理:

不同的职位类别拥有不同的上下班时间,管理员可以添加新的职位类别,修改已经存在的职位类别的名称和上下班时间,

部门信息管理:

管理员可以添加和删除部门信息,当部门下面存在员工信息时不执行删除操作.

系统管理:

修改自己的登陆密码,查看系统简介。

节假日管理:

节假日的设置和查看;

(2)特点

实现了管理员和员工登陆信息的自动判断!

根据不同的身份显示不同的功能菜单。

程序使用三层架构思想,采用完全面向对象的思想方法设计。

系统在进行相关操作如删除员工信息时使用了存储过程。

(3)数据

输入:

通过登录系统输入职工上班下班,以及请假、出差等信息。

输出:

职工考勤情况。

(用户对相关职工的查询结果和报表)

(4)安全保密

系统对不同权限的用户提供不同的功能模块,对历史数据的更改和新数据的添加只有一定权限的用户才能操作,一般用户只能进行查询操作。

对数据库的关键数据应要求保密。

系统默认管理员登陆信息:

帐号admin密码admin

2.3系统分析部分

2.3.1业务流程图

图2-1业务流程图

2.3.2数据流程图

图2-2顶层数据流程图

图2-3一层数据流程图

2.3.3E-R图

图2-5E-R图

名字:

上班时间数据

描述:

关于每日上班时间的信息,用于员工对上班时间的确认

定义:

上班时间数据=上午工作开始时间+上午工作离开时间+下午工作开始时间+下午工作离开时间

位置:

输入到上班时间表

2.3.4数据字典

 

名字:

部门数据

描述:

部门的信息,用于对部门的确认

定义:

部门资料数据=部门代号+部门名称

位置:

输入到部门表

 

名字:

上班类型数据

描述:

上班类型的信息,用于对员工上班时间类型的确认

定义:

上班类型数据=类型代号+类型名称

位置:

输入到上班类型表

 

 

 

 

 

第三章信息系统设计

3.1功能结构图设计

图3-1功能结构图

3.2输入输出设计

表3-1登录

名称、标识符

登录

输入

填写用户的ID号和密码,点击确认按钮。

输出

提示登录成功进入系统主页面

表3-2员工上班

名称、标识符

上班

输入

选择部门、姓名,点击上班

输出

提示上班成功信息

表3-3员工下班

名称、标识符

下班

输入

输入部门、姓名,点击上班

输出

提示下班成功信息

表3-4修改密码

名称、标识符

修改密码

输入

管理员输入用户名、原始密码、新设定的密码

输出

提示修改密码成功信息

表3-5申请请假

名称、标识符

申请请假

输入

输入请假人姓名、所属部门、请假时间、请假时长、请假原因

输出

提示请假申请已经提交信息

表3-6申请出差

名称、标识符

申请出差

输入

申请人姓名、所属部门、出差的开始时间、出差地点、出差原因

输出

提示出差申请已经提交信息

表3-7员工添加

名称、标识符

添加员工

输入

输入部门、姓名、性别、年龄、进公司时间、个人密码

输出

提示添加已完成

表3-8部门添加

名称、标识符

部门添加

输入

输入部门名称

输出

提示添加已完成

表3-9上下班时间设定

名称、标识符

上、下班时间设定

输入

上、下班时间

输出

提示设置成功

3.3数据库结构设计

3.3.1概念设计

数据库一般分为三级模式:

外模式、概念模式和内模式。

在这里我们将要设计的是数据库的概念模式。

通过对职工出勤管理系统的内容和数据流程分析及E-R图,设计如下数据项和数据结构:

1.部门信息。

包括部门编号、部门名称、部门人数等。

2.超级用户信息。

包括用户名、密码、姓名、性别、出生日期、籍贯等。

3.普通用户信息。

包括编号、部门名称、姓名、性别、出生日期、籍贯等信息。

4.考勤信息。

包括序列号、编号、签到时间、签离时间等信息。

5.员工状态。

包括员工请假、出差、早退、迟到、上班。

6.考勤历史信息。

包括记录号、编号、日期、签到时间、签离时间、迟到、缺勤、早退等信息。

7.用户信息。

包括用户名称、密码、所在单位、用户权限信息、操作员、最后修改时间。

3.3.1逻辑结构设计设计

根据职工考勤管理系统的功能要求,选取SQLServer2000作为后台数据库。

在上面的实体和实体之间的E-R图设计基础上,将ER图转化为关系模型,形成数据库中的表格及表格之间的关系。

该数据库由5个表组成,部门表、超级用户表、用户表、考勤表、考勤历史表。

分别如下表所示:

表3-10出差表

名称

字段

类型

为空性

备注

部门代号

departmentId

数字

员工ID

workerId

数字

出差时间

ccTime

日期/时间

出差地点

ccArea

文本

出差天数

ccLength

数字

登记时间

dcTime

日期/时间

销差时间

xcTime

日期/时间

出差备注

ccContent

文本

表3-11部门表

名称

字段

类型

为空性

备注

部门代号

departmentId

数字

唯一表示部门

部门名称

departmentName

文本

部门名称

表3-12请假表

名称

字段

类型

为空性

备注

部门代号

departmentId

数字

员工ID

workerId

数字

请假时间

qjTime

日期/时间

请假天数

qjLength

数字

登记时间

djTime

日期/时间

请假原因

qjReason

文本

销假时间

xjTime

日期/时间

是否旷工

ynKg

是/否

表3-13上班表

名称

字段

类型

为空性

备注

部门代号

departmentId

数字

员工ID

workerId

数字

工作日期

workday

日期/时间

上午上班时间

mstartTime

日期/时间

下午上班时间

astartTime

日期/时间

上午下班时间

mleaveTime

日期/时间

下午下班时间

aleaveTime

日期/时间

上班类型1

workmsType

数字

存放工作类型表中的typeId0:

正常上班1:

请假2:

出差3:

早退4:

迟到

上班类型2

workmlType

数字

默认值为0,作为是否已经登记的标记

上班类型3

workasType

数字

默认值为0,作为是否已经登记的标记

上班类型4

workalType

数字

默认值为0,作为是否已经登记的标记

表3-14用户表

名称

字段

类型

为空性

备注

用户名

username

文本

密码

password

文本

真实姓名

realname

文本

注册时间

regtime

日期/时间

权限

permission

数字

0:

管理员1:

普通用户

表3-15员工表

名称

字段

类型

为空性

备注

部门代号

departmentId

数字

员工ID

workerId

数字

员工姓名

workerName

文本

员工性别

workerSex

文本

员工年龄

workerAge

数字

进入公司时间

intoCompanyTime

日期/时间

员工密码

workerPsw

文本

进行出勤输入的最后验证

表3-16上班时间表

名称

字段

类型

为空性

备注

上午工作开始时间

mstartTime

日期/时间

上午工作离开时间

mleaveTime

日期/时间

下午工作开始时间

astartTime

日期/时间

下午工作离开时间

aleaveTime

日期/时间

表3-17上班类型表

名称

字段

类型

为空性

备注

类型代号

typeId

数字

类型名称

typeName

文本

3.4代码设计

部门代号为两位数,按照创建时间早晚排行。

例如:

生产部为第七个创建的部门,所以他的编号为07。

员工ID一共分成6位,前两位表示部门代号,中间两位表示进入部门年份,后两位表示员工编号。

例如:

娄京兆是2013年生产部招收的第一位员工,那么他的ID就是071301。

上班类型代号为一位数,按照上班类型分为五类,0:

正常上班 1:

请假 2:

出差 3:

早退 4:

迟到。

第四章信息系统实施

4.1源程序

4.1.1添加用户

Dimm_clsUserAsclsUser

PrivateSubcmdReg_Click()

Setm_clsUser=NewclsUser

m_clsUser.DoAddUsertxtUserName,txtPassword,txtPasswordConfirm,txtRealName,comboPermission,txtRegTime,frmAddUser

EndSub

PrivateSubForm_Load()

comboPermission.AddItem"管理员",0

comboPermission.AddItem"普通用户",1

comboPermission.ListIndex=0

EndSub

PrivateSubcmdClose_Click()

UnloadMe

EndSub

4.1.2修改密码

Dimm_clsUserAsclsUser

PrivateSubcmdChPwdOk_Click()

Setm_clsUser=NewclsUser

m_clsUser.DoChPwdtxtChUser,txtOldPwd,txtNewPwd,txtNewPwdagain,frmChPwd

EndSub

PrivateSubForm_Load()

EndSub

PrivateSubcmdChPwdCancel_Click()

UnloadMe

EndSub

4.1.3出差情况

DimstrSqlAsString

DimrsAsNewRecordset

PrivateSubcboDept_Click()

cboName.Clear

strSql="Select*fromTWorkerwheredepartmentId="&cboDept.ItemData(cboDept.ListIndex)&"orderbyworkerId"

Setrs=TransactSQL(strSql)

DoWhileNotrs.EOF

cboName.AddItem(rs.Fields

(2).Value)

cboName.ItemData(cboName.NewIndex)=rs.Fields

(1).Value

rs.MoveNext

Loop

rs.Close

cboName.ListIndex=0

cboName.Refresh

EndSub

PrivateSubcmdPrint_Click()

SetdrChuChai.DataSource=adodcChuChai.Recordset

drChuChai.Sections

(1).Controls

(1).Caption="请假情况统计表"

drChuChai.Sections

(2).Controls

(1).Caption="部门名称"

drChuChai.Sections

(2).Controls

(2).Caption="员工名称"

drChuChai.Sections

(2).Controls(3).Caption="出差时间"

drChuChai.Sections

(2).Controls(4).Caption="出差地点"

drChuChai.Sections

(2).Controls(5).Caption="出差天数"

drChuChai.Sections

(2).Controls(6).Caption="登记时间"

drChuChai.Sections

(2).Controls(7).Caption="销差时间"

drChuChai.Sections

(2).Controls(8).Caption="出差备注"

drChuChai.Sections(3).Controls

(1).DataField="部门名称"

drChuChai.Sections(3).Controls

(2).DataField="员工名称"

drChuChai.Sections(3).Controls(3).DataField="出差时间"

drChuChai.Sections(3).Controls(4).DataField="出差地点"

drChuChai.Sections(3).Controls(5).DataField="出差天数"

drChuChai.Sections(3).Controls(6).DataField="登记时间"

drChuChai.Sections(3).Controls(7).DataField="销差时间"

drChuChai.Sections(3).Controls(8).DataField="出差备注"

drChuChai.Show

EndSub

PrivateSubcmdQuery_Click()

strSql="selecta.departmentNameas部门名称,b.workerNameas员工名称,c.ccTimeas出差时间,c.ccAreaas出差地点,c.ccLengthas出差天数,c.dcTimeas登记时间,c.xcTimeas销差时间,c.ccContentas出差备注fromTDepartmenta,TWorkerb,TChuChaicwhereb.departmentId="&cboDept.ItemData(cboDept.ListIndex)&"andb.workerId="&cboName.ItemData(cboName.ListIndex)&"anda.departmentId=b.departmentIdandb.departmentId=c.departmentIdandb.workerId=c.workerIdandc.ccTimebetween#"&dtpStartDate&"#and#"&dtpEndDate&"#"

ConnectToDB

RefushDataGridadodcChuChai,dgChuChai,strSql

DisConnect

EndSub

PrivateSubForm_Load()

strSql="Select*fromTDepartmentorderbydepartmentId"

Setrs=TransactSQL(strSql)

DoWhileNotrs.EOF

cboDept.AddItem(rs.Fields

(1).Value)

cboDept.ItemData(cboDept.NewIndex)=rs.Fields(0).Value

rs.MoveNext

Loop

rs.Close

cboDept.ListIndex=0

cboDept.Refresh

EndSub

4.1.4添加部门

DimdepartIdAsInteger

DimdepartNameAsString

IftxtbmName.Text=""Then

MsgBox"部门名称不能有空值"

ExitSub

Else

departId=Trim(txtaddbmId.Text)

departName=Trim(txtbmName.Text)

strSql="insertintoTDepartment(departmentId,departmentName)values("_

&departId&",'"&departName&"')"

TransactSQL(strSql)

MsgBox"添加成功"

EndIf

EndSub

PublicSubinit()

txtbmName.Text=""

num=0

strSql="select*fromTDepartmentorderbydepartme

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 农林牧渔 > 林学

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2