目录
1 概述 ........................................................................................................................................................................... 1 1.1设计背景 ..................................................................................................................................................................... 1 1.2研究目的 ..................................................................................................................................................................... 1 1.3理论基础的分析 ......................................................................................................................................................... 2 1.4预期结果和意义 ......................................................................................................................................................... 2 2 需求分析 .................................................................................................................................................................. 2 2.1功能需求 ..................................................................................................................................................................... 2 2.2数据流图 ..................................................................................................................................................................... 3 2.3功能模块图 ................................................................................................................................................................. 3 2.4系统数据流程图 ......................................................................................................................................................... 4 3 概念结构设计 .......................................................................................................................................................... 5 3.1 局部E-R图 ................................................................................................................................................................. 5 3.2 整体E-R图 ................................................................................................................................................................. 7 4 逻辑结构设计 ............................................................................................................................................................ 8 4.1 关系模式 .................................................................................................................................................................... 8 4.2数据关系图 ................................................................................................................................................................. 9 5 物理结构设计 ............................................................................................................................................................ 9 5.1存储记录结构设计 ..................................................................................................................................................... 9 5.2创建索引 ................................................................................................................................................................... 12 6 数据库实施 .............................................................................................................................................................. 13 6.1建立数据库 ............................................................................................................................................................... 13 6.2数据表的创建 ........................................................................................................................................................... 13 6.3建立存储过程 ........................................................................................................................................................... 16 6.4创建触发器 ............................................................................................................................................................... 17
0
70+120+120+70m连续梁桥 及80+140+140+80m连续刚构桥施工方案
7 数据库运行和维护 ................................................................................................................................................... 19 8 结论 ......................................................................................................................................................................... 19
1 概述
1.1设计背景
随着企业人事管理的日趋复杂和企业人员的增多,企业的考勤管理变得越来越复杂。规范的考勤管理是现代企业提高管理效益的重要保证,而传统的人工管理存在着效率低、不易统计、成本高和易出错等弊端,已经无法适应现代企业的需求。随着计算机技术和通信技术的迅速发展,将传统的人工考勤管理计算机化,建立一个高效率的、无差错的考勤管理系统,能够有效的帮助企业实现“公正考勤,高效薪资”,使企业的管理水平登上一个新的台阶。
企业考勤管理经过如下的业务流程: (1)员工基本信息管理,添加,删除,更改
(2)员工考勤管理,员工根据自己的班次在上下班时分别进行出勤操作,采用手动方式或者使用划卡机。由人事部门专门的人员管理出勤和退勤信息。
(3)一般在每个月月初进行考勤汇总,汇总信息包括工作日的出勤情况、请假天数、出差天数、休假天数和不同性质的加班记录等。
1.2研究目的
待开发的系统的名称为企业职工在线考勤系统;
我们以中小型企业的考勤管理业务为依托,结合科学管理的理论,设计并开发一个企业考勤管理信息系统,提供一个科学合理的考勤管理解决方案,彻底实现无纸化作业。根据管理权限的不同,将界面分为一般职员、部门经理、系统管理员和最高管理者四个层次,系统目标如下:
(1)提供简单、方便的操作。
(2)根据企业原来的考勤管理制度,为企业不同管理层次提供相应的功能。
1
70+120+120+70m连续梁桥 及80+140+140+80m连续刚构桥施工方案
(3)通过考勤管理无纸化的实现,使企业的考勤管理更加科学规范。 (4)节省考勤管理的成本。
(5)提高企业考勤管理的透明度和效率,防止“虚假出勤“的现象。 (6)对系统提供必要的权限管理。
(7)为企业实现整体信息化的其他相关系统提供必要的数据支持。
1.3理论基础的分析
本设计利用sql server 2005建立数据库,表格化存储,利用表的查询,连接,修改,删除数据等管理员工信息,对数据库设定必要的权限,只有具有权限的人才能进行查看,修改数据。
1.4预期结果和意义
考勤系统能实现职工日考勤记录,记录请假信息,记录出差信息等功能,并最终所有信息归入月统计中去。
本考勤系统建立了一个高效率的、无差错的考勤管理系统,能够有效的帮助企业实现“公正考勤,高效薪资”,使企业的管理水平登上一个新的台阶。
2 需求分析
2.1功能需求
(1) 数据管理
功能是设置和管理基础数据,包括加班、请假类别的定义和班次的定义,在全县范围内可以进行基础数据的添加、删除和修改。
(2) 考勤管理
包括出勤动作、出勤信息的查询;上级对下级员工的出勤信息的确认;生成考勤统计信息并可以根据指定的条件进行查询。实现从每日出勤到统计全部考勤信息的无纸化操作。为方便数据传递
2
70+120+120+70m连续梁桥 及80+140+140+80m连续刚构桥施工方案
和查阅,要根据需求提供不同时间短的考勤统计信息表。
(3) 加班管理
对员工的加班时间进行统计,记录开始时间和结束时间,对加班信息实现添加,删除等操作。 (4) 请假管理
可以提出请假申请,并完善请假信息,如请假开始时间,请假结束时间,请假的次数进行管理。 (5) 出差管理
管理者安排员工出差,对出差时间,次数的管理。
2.2数据流图
数据流图 如图2.1所示 请假信息 加班信息 N 请假 N M M 加班 统计 M 职工 出差 出差记录 M N N M 月统计 出勤 N 出勤记录 2.1 数据流图
2.3功能模块图
如图2.2所示,图为功能模块图
3
70+120+120+70m连续梁桥 及80+140+140+80m连续刚构桥施工方案
职工考勤管理信息系统
员出出 请加月 工基勤差 假班统 本信记记 记记计 息 录 录 录 录
2.2 功能模块图
2.4系统数据流程图
如图2.3所示,图为数据流程图 员记录出勤员工出勤月度员工工 时间 记录 考勤统计 请假、值 班、出差记各种统计信息
经理审批 考勤上下班时管理员 间安排 人员 2.3 数据流程图
4
70+120+120+70m连续梁桥 及80+140+140+80m连续刚构桥施工方案
3 概念结构设计
局部E-R图
(1)员工E-R图,如图3.1.1所示
职工 年龄 编号 姓名 性别 图3.1 员工E-R图
(2)图2.3.2 为出勤E-R图 出勤记录 职工编号 年龄 上班时间 缺勤记录 下班时间
图3.2 出勤E-R图
(3)图3.3为出差E-R图
5
3.1
70+120+120+70m连续梁桥 及80+140+140+80m连续刚构桥施工方案
出差记录 职工编号 出差编号 开始时间
结束时间 缺勤记录 图3.3出差E-R图
(4)加班E-R图如图3.4所示 出勤记录 职工编号 加班编号 开始时间 加班统计 结束时间
3.4 加班E-R图
(5)请假E-R图如图3.5所示
6
70+120+120+70m连续梁桥 及80+140+140+80m连续刚构桥施工方案
请假记录 请假编号 编号 开始时间 请假统计
结束时间 3.5 请假E-R图
(6)月统计E-R图
出勤记录 上班时间 缺勤记录
下班时间 职工编号 3.6 月统计E-R图
3.2 整体E-R图
如图3.7所示,图为整体E-R图 结束时间 统计天数 起始时间 结束时间 开始时间 请假信息 时间统计 7
70+120+120+70m连续梁桥 及80+140+140+80m连续刚构桥施工方案
结束时间
3.7 整体E-R图
4 逻辑结构设计
4.1 关系模式
职工(职工编号,姓名,性别,年龄)
出勤记录(职工编号,出勤编号,上班时间,下班时间,缺勤记录) 出差记录(职工编号,出差编号,开始时间,结束时间,统计天数)
加班信息(职工编号,加班编号,加班开始时间,加班结束时间,加班时间统计)请假信息(职工编号,请假编号,请假开始时间,请假结束时间,请假时间统计)8
70+120+120+70m连续梁桥 及80+140+140+80m连续刚构桥施工方案
月统计(职工编号,出勤月统计,出差月统计,加班月统计,请假月统计)
4.2数据关系图
如图4.2.1所示,在数据库中生成的关系图中,员工编号是员工信息表的主键,是其他表的外键。
图4.1 数据关系图
5 物理结构设计
5.1存储记录结构设计
在物理结构中,数据的基本存取单位是存储记录。有了逻辑结构以后,就可以设计存储记录结构,一个存储记录可以与多个逻辑记录相对应。存储记录就包括记录的组成,数据项的类型和长度等。
在本图中5.1职工信息表主要包括职工编号,姓名,性别,年龄
表5.1 职工信息表
9
70+120+120+70m连续梁桥 及80+140+140+80m连续刚构桥施工方案
列名 说明 字段类型 约束控制 w_id 职工编号 Char(4) 主键 w_name 姓名 Char(6) 非空 w_sex 性别 Char(2) ‘男’或’女’ w_age 年龄 Int 非空 w_degree 职称 char(4) 非空 在本表5.2中出勤记录包含职工编号,出勤编号,上班时间,下班时间,缺勤记录
表5.2 出勤记录表
列名 说明 字段类型 约束控制 w_id 职工编号 Char(4) 主键 w_num 出勤编号 Int 主键 work_tim 上班时间 Datetime 允许空 end_tim 下班时间 Datetime 允许空 Work_note 缺勤记录 Datetime 允许空
在本图5.3中出差记录职工编号,出差编号,开始时间,结束时间,统计天数
表5.3 出差记录表
列名 说明 字段类型 约束控制 w_id 职工编号 Char(4) 主键 Out_num 出差编号 Int 主键 Out_tim 开始时间 Datetime 允许空 Back_tim 结束时间 Datetime 允许空 Out_days 统计天数 Int 允许空
在本表5.4中加班记录表主要包含职工编号,加班编号,开始时间、结束时间。时间统计10
70+120+120+70m连续梁桥 及80+140+140+80m连续刚构桥施工方案
表5.4 加班记录表
列名 w_id Over_num Over_tim Overend_tim Over_days 说明 职工编号 加班编号 开始时间 结束时间 时间统计 字段类型 Char(4) Int Datetime Datetime Int
在本表5.5中,请假记录表主要包括职工编号,请假编号,请假开始时间和请假结束时间组成。
主键 主键 允许空 允许空 允许空 约束控制 11
70+120+120+70m连续梁桥 及80+140+140+80m连续刚构桥施工方案
表5.5 请假记录表
列名 w_id Off_num Off_tim Offend_tim Off_days 说明 职工编号 请假编号 请假开始时间 请假结束时间 统计天数 字段类型 Char(4) Int Datetime Datetime Int
在本图5.6中月统计主要包括职工编号,出勤月统计,出差月统计,请假月统计,加班月统计
表5.6 月统计记录表
列名 w_id Work_note Out_note Over_note Off_note 说明 职工编号 出勤月统计 出差月统计 加班月统计 请假月统计 字段类型 Char(4) Int Int Int Int 主键 非空 允许空 允许空 允许空 约束控制 主键 主键 允许空 允许空 允许空 约束控制 5.2创建索引
为mounth_note在w_id上创建唯一索引 Create index M1 on mounth_note(w_id) Go
Exec sp_helpIndex mounth_note
12
70+120+120+70m连续梁桥 及80+140+140+80m连续刚构桥施工方案
6 数据库实施
6.1建立数据库
CREATE DATABASE worker ON
( NAME=worker_data, FILENAME='f:\\worker.mdf', SIZE=3,
FILEGROWTH=1 ) LOG ON
( NAME=worker_LOG,
FILENAME='C:\\worker_log.ldf', SIZE=1, MAXSIZE=50, FILEGROWTH=10% )
6.2数据表的创建
(1)如图6.1所示 员工信息表(worker) CREATE TABLE worker
( W_id CHAR(4) CONSTRAINT worker_Prim PRIMARY KEY, w_name CHAR(6) not null,
SEX CHAR(2) CONSTRAINT SEX_Chk CHECK(SEX='男'OR SEX='女') not null, AGE INT not null,
w_drgee VARCHAR(4) NOT NULL,
13
70+120+120+70m连续梁桥 及80+140+140+80m连续刚构桥施工方案
)
图6.1 员工信息表
2)如图6.2所示 出勤记录表(work_note) CREATE TABLE work_note ( W_id CHAR(4), w_num int ,
CONSTRAINT work_note_Prim PRIMARY KEY(W_id,w_num), work_tim datetime, end_tim datetime, work_note datetime, )
图6.2 出勤记录
3)如图6.3所示 出差记录表(out_note) CREATE TABLE out_note ( W_id CHAR(4), out_num int ,
CONSTRAINT out_note_Prim PRIMARY KEY(W_id,out_num), out_tim datetime, back_tim datetime,
14
((70+120+120+70m连续梁桥 及80+140+140+80m连续刚构桥施工方案
out_days int, )
图6.3 出差记录
4)如图 6.4所示 加班记录表(over_note) CREATE TABLE over_note ( W_id CHAR(4), over_num int ,
CONSTRAINT over_note_Prim PRIMARY KEY(W_id,over_num), over_tim datetime, overend_tim datetime, over_days int, )
图6.4 加班记录
5)如图6.2.5所示 请假记录表(off_note) CREATE TABLE off_note ( W_id CHAR(4), off_num int ,
CONSTRAINT off_note_Prim PRIMARY KEY(W_id,off_num), off_tim datetime,
15
((70+120+120+70m连续梁桥 及80+140+140+80m连续刚构桥施工方案
offend_tim datetime, off_days int, )
图 6.5 请假记录
(6)如图6.6所示 月纪录表(mounth) CREATE TABLE mounth_note
( w_id CHAR(6) CONSTRAINT mounth_Prim PRIMARY KEY, work_note int not null, out_note int, over_note int, off_note int, )
图6.6 月统计记录表
6.3建立存储过程
如图6.7所示 建立一个向员工出勤表中插入数据的存储过程 CREATE PROCEDURE insert_in (
@W_id CHAR(4),
16
70+120+120+70m连续梁桥 及80+140+140+80m连续刚构桥施工方案
@w_num int , @work_tim datetime , @end_tim datetime , @work_note datetime ) AS
insert into work_note
values(@W_id, @w_num, @work_tim ,@end_tim ,@work_note ) go
execinsert_in@W_id='0001',@w_num=1,@work_tim='2010/11/1' ,@end_tim='2010/11/1' ,@work_note=null
go select * from work_note
图6.7 运行结果
6.4创建触发器
(1)建立一个触发器,当想考勤记录中添加一条新的考勤记录时,触发统计该员工一个月的考勤记录,并存入月统计的月考勤记录表中。请假记录,出差记录,加班记录分别建立此类触发器。
CREATE TRIGGER mounth_insert ON work_note FOR insert AS begin
17
70+120+120+70m连续梁桥 及80+140+140+80m连续刚构桥施工方案
if update(w_id) update mounth_note
set work_note=(select count(work_tim) )
where w_id = (SELECT W_id FROM inserted) end
CREATE TRIGGER worker_insert ON worker FOR insert AS begin
declare @id char(20)
select @id=W_id FROM inserted if update(W_id) insert into mounth_note values (@id,'0','0','0','0') end
create view mywork as
select worker.W_id,w_name,SEX,AGE,w_drgee,work_note,over_note,out_note,off_note from worker,mounth_note
where worker.W_id = mounth_note.w_id
(2)创建一个触发器,当删除员工基本信息时,同事也删除其他表中员工的信息。 如当删除worker表中信息是,也删除员工考勤记录表中的内容,请假记录,出差记录,加班记录分别建立此类触发器。
18
from work_note
where w_id =(SELECT W_id FROM inserted) group by w_id
70+120+120+70m连续梁桥 及80+140+140+80m连续刚构桥施工方案
create trigger delete_data on worker for delete as delete from work_note
where w_id=(select w_id from deleted)
7 数据库运行和维护
本系统经过实际的测试和运行,基本可以满足中小企业考勤业务的要求。该系统运行稳定,在使用和维护中应该注意以下几个问题:
(1)定期备份数据库和日志,以使数据库在发生故障后恢复到一致性状态,保障数据库的完整性。
(2)定期清理数据库中的无效数据,以提高运行效率。 (3)对软件及运行环境进行日常维护。
8 结论
本系统在信息表述上还不完备,一些模块的信息还不够详细,主要是提供的报表有限。系统虽然针对中小企业的考勤管理业务。对使用打卡机、指纹机进行出、退勤的企业,还需要添加一个采集打卡机和指纹机的数据模块。下一步可以再熟悉系统设计风格的基础上,在各个界面上进一步添加多需要的字段和报表,或者添加采集数据的模块,以扩充系统的功能。本系统的创新点在于触发器的应用,每增加一条记录,都会重新统计一下记录次数,并存入月纪录中,使得信息更加准确。 在设计时由于对编程语言知识的匮乏,所以数据库的界面化没有做成,如若想更加完善数据库,应该结合一些编程语言,使得操作界面更加人性化,简单化。
通过本次设计,我对数据库有了更深入的了解,见证了一个系统从无到有,从漏洞百出到逐渐完善的过称,是我所学的只是得以所用,加深了对数据库的理解,在设计过程中有很多不会的问题,通过自己查阅资料逐渐解决,这本身就是一个学习的过程,不仅学到了只是,还掌握了学习方法。
19
70+120+120+70m连续梁桥 及80+140+140+80m连续刚构桥施工方案
同时让我认识到自己所学知识的匮乏,所以要全面发展自己的专业,一个人的能力总是有限的,所以团队合作很重要,在做设计的过程中要学习他人之长,听取他人的意见,虚心向别人请教。相互配合做好自己的工作,才能成为一名合格的网路工程师。虽然自己做的设计还不是很完善,但我觉得很有意义,对我以及我今后的人生都很有帮助。
饱食终日,无所用心,难矣哉。——《论语•阳货》
20
因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- 91gzw.com 版权所有 湘ICP备2023023988号-2
违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务