数据库大作业员工工资管理系统1.docx

上传人:b****9 文档编号:25136098 上传时间:2023-06-05 格式:DOCX 页数:23 大小:256.14KB
下载 相关 举报
数据库大作业员工工资管理系统1.docx_第1页
第1页 / 共23页
数据库大作业员工工资管理系统1.docx_第2页
第2页 / 共23页
数据库大作业员工工资管理系统1.docx_第3页
第3页 / 共23页
数据库大作业员工工资管理系统1.docx_第4页
第4页 / 共23页
数据库大作业员工工资管理系统1.docx_第5页
第5页 / 共23页
点击查看更多>>
下载资源
资源描述

数据库大作业员工工资管理系统1.docx

《数据库大作业员工工资管理系统1.docx》由会员分享,可在线阅读,更多相关《数据库大作业员工工资管理系统1.docx(23页珍藏版)》请在冰豆网上搜索。

数据库大作业员工工资管理系统1.docx

数据库大作业员工工资管理系统1

 

HefeiUniversity

数据库技术综合报告

BACHELORDISSERTATION

 

题目:

员工工资管理系统设计

系别:

电子信息与电气工程系

班级:

电子信息工程

(1)班

姓名:

王蓓蓓

学号:

1405011007

2015年12月11日

 

摘要

人事管理是企业管理中的一个重要内容,随着时代的进步,企业也逐渐变得庞大起来。

如何管理好企业内部员工的信息,成为企业管理中的一个大问题。

在这种情况下,开发一个企业人事管理系统就显得非常必要。

本企业人事管理系统具有如下功能:

员工基本信息的录入、修改、查询、删除模块,员工考勤信息和员工调动信息的录入、修改、查询、删除模块,以及系统维护功能.为企业人事管理提供信息咨询,信息检索,信息存取等服务,基本上能够满足现代企业对人事管理的需要.

一、应用背景

1.1引言

企业人事管理是企业管理的一个重要内容,随着时代的进步,企业也逐渐变的庞大起来。

如何管理好企业内部员工的信息,成为企业管理中的一个大问题。

在这种情况下,一个可以规范化,自动化的企业人事管理系统就显得非常必要。

最初的人事管理,都是靠人力来完成的.当企业规模比较小的时候,人力可以完成,随着企业的规模越来越大,企业的员工人数也越来越多,依然维持着人力进行人事管理,必然会造成工作效率低,工作错误增高的问题。

人事管理系统就是把分散的企事业单位的职工信息实行统一,集中,规范的收集管理,建立分类编号管理,电脑存储查询以及防火,防潮,防蛀,防盗等现代化,专业化的管理系统,为企事业单位和职工解除后顾之忧。

企业人事管理系统为企事业单位提供信息咨询,信息检索,信息存取等服务。

1.2管理信息系统的发展历史

管理信息系统的概念起源很早.早在20世纪30年代,柏德就强调了决策在组织管理中的作用.50年代,西蒙提出了管理依赖于信息和决策的概念。

同一时代维纳发表了控制论与管理,他把管理过程当成一个控制过程。

50年代计算机已用于会计工作,1958年盖尔写道:

管理将以较低的成本得到及时准确的信息,做到较好的控制."这时数据处理一词已经出现。

管理信息系统已经逐步成为一个独立的学科分支,它继承了其他众多学科的理论、方法与应用技术,它与信息科学、系统科学、控制理论、运筹学、会计学、统计学、经济学、管理科学、计算机科学有着十分密切的联系。

同时,管理信息系统作为一种应用工具,又广泛地应用于工业、农业、交通、运输、文化、教育、卫生、体育以及各种社会经济活动的信息管理之中,并起着益重要的作用,显示出强大的生命力。

随着社会的不断进步、科学技术快速发展以及生产力水平逐步提高,使得管理工作显得越来越重要.在现代管理科学体系中,管理信息系统已经被公认为是一门不可替代的崭新学科,目前,其正处在不断发展、逐步完善阶段.计算机作为现代化的工具与手段应用于管理,已成为信息处理的重要工具。

计算机的应用范围越来越广,应用的功能由一般数据处理发展为分析预测、支持决策,最终导致了管理信息系统的产生.

管理信息系统它是依赖于管理和科学技术的发展而形成的。

管理信息系统的三要素是系统的观点、数学的方法和计算机的应用,而这三点也正是管理现代化的标志。

管理信息系统是依赖于电子计算机的发展而发展的。

管理信息系统是与电子计算机同步发展的.从原理上讲,任何部门或企业,无论有无计算机,均有信息的收集,加工和使用,因而都有管理信息系统。

但是,只是有了计算机以后管理信息系统的功能才能真正体现出来.

1.3国内信息系统发展现状

企业是国民经济的基本单元,而企业信息系统建设是我国企业走向现代化的必由之路。

我国目前共有各类企业800万家,这些企业在近20年来,在不同程度上都遇到了企业信息系统建设的问题.80年代以来,国家有关部门就一直非常重视企业信息化的推进.国家有关部门曾重点扶持过一批国有大企业的信息化工程,并以它们为样板在全国制造业企业中推广过CIMS。

沈阳鼓风机厂、成都飞机制造厂、北京第一机床厂等,都是这一时期涌现出来的企业信息化样板企业。

90年代以后,随着微型计算机、互连网等迅速普及,计算机技术对企业的影响越来越大,企业信息化进一步为人们所重视。

有关部门领导曾明确提出:

到2000年,全国一千个大型骨干企业基本实现企业信息化,全国大型产业企业80%(含零售业、批发业、仓储业、饮食业和工业企业)全面应用计算机管理,初步实现管理现代化。

30~40%的中小企业普及计算机管理。

1995年以后,我国企业信息化走向了以ERP为主的道路,许多外国ERP厂商如SAP、BAAN、ORACLE、FOUTHSHIFT等纷纷进入中国,国内目前也已有数十家ERP软件供应商,不少已经形成商品化且有几百家用户。

一些调查说明,我国企业购买MRPII、ERP软件的费用在90年代以后迅速增长。

例如在机械行业,购买了国外软件公司MRPII系统的企业高达66%,企业平均用于硬件的投资费用约为604万元,软件费171万元,实施及咨询费143万元,合计约800万元.与之类似,其他行业对于信息化的投资,在近几年来也有较大的增长。

1。

4国内信息系统存在的问题

在企业信息化快速发展的时代,我们在充分肯定这些已经取得的成果的同时也不能忽视一些普遍性的问题。

首先是过10年左右,我国企业信息系统建设虽然轰轰烈烈地发展,但其成功率究竟如何?

根据广东省信息中心和信息协会对335家已经实现了信息化的企业的调查,有52.24%的企业认为本企业进行信息化建设的成效一般;认为不理想的有21。

79%;认为效果非常好的只有9.55%。

根据研究还发现:

一些企业已经投入使用的模块,实际中并未发挥作用,它只是针对若干局部系统,或者特定类型的产品的试运行。

运行最好的为库存管理模块,原因主要是库存与其它部门间的相互影响较小。

其次,物料单、销售、采购及财务统计模块也在部分企业得到较好的应用。

但成本管理及预测模块等使用情况较差。

根据另一次对300名来自不同行业、不同企业的中层管理者的调查发现,这些管理者工作的科室中,人均微机数量0.4~1台的占33%,其中人均微机数量达到1台以上的企业占37%。

但是,这些企业中的计算机的97%是用来做文字处理工作,有1/2是用于浏览网页,甚至有1/5的计算机是经常用来玩游戏的。

而大多数被调查者都认为:

他们企业并没有实现信息化。

这些调查和结果分析都说明了:

我国企业目前虽然使用计算机已经比较普遍,但许多信息系统的应用情况却并没有达到预想的效果。

1.5信息系统开发的紧迫性

随着企业规模的扩大和市场竞争的更加激烈,各类企业都愈来愈认识到人力资源管理的重要性及提升企业自身人力资源管理水平的迫切性,而人力资源管理水平的提升不仅需要高素质的管理人员,而且也需要信息化工具进行辅助。

人力资源管理软件也就应运而生了.

目前,无论是机关单位、事业单位,还是企业单位,人力资源管理对于组织生存与长远发展所具备的重要性都已经有了明确的认识,对于加强组织本身人力资源管理水平的需求已经产生.随着中国企业管理水平的提高及中国加入WTO的事实,人才的争夺与管理已成为中国企业乃至各级事业、机关单位所面临的严重问题。

要应对高强度的竞争无疑是需要优秀的管理人才,而科学管理的实施在信息化的今天是离不开数字化的工具做辅助的。

特别在组织规模不断扩大的今天,做为管理人员和组织领导者要想对组织进行有效的管理和正确的决策就必须借助于数字化工具的帮助.

人力资源管理软件的市场是非常大的,据国家工商行政管理局统计,中国注册企业有近1,000万家,这些都是潜在的市场。

在今后5年内人力资源管理软件必然会迅速发展成为一个巨大的市场,但现在国内人力资源开发厂家而言,在人力资源管理软件的深层次开发方面,只能说刚刚启动,现有人力资源系统的厂商的开发层面几乎只停留在人事作的层面上。

国外成熟的产品虽然在理论性和先进性上优于国内产品,但在中国现今人力资源管理制度不规范的现状下,其功能的实用性及有效性已大打折扣,同时其高昂的价格也使得大多数企业望而生畏.同时,中国企业受中华民族深远文化的影响有其与西方企业所不同的管理文化底蕴。

而国外软件开发商则很难将产品与中国国情相结合,使得产品无法真正为广大中国企业所受用。

二、系统的主要功能

此工资管理系统的主要任务是用计算机对各种工资信息进行日常的管理,如查询、修改、增加、删除以及存储等,迅速准确地完成各种工资信息的统计计算和汇总工作,快速打印出工资报表,针对系统服务对象的具体要求,设计了企业工资管理系统.企业工资管理系统主要有以下几大功能:

对单位人员的变动进行处理。

一个单位的职工不会是一成不变的,总是在不断的变化:

有调出、有调入、也有职工在本单位内部调动。

因此,设计系统是应考虑到这些情况。

对职工的工资进行计算、修改。

可以对职工的工资档案进行个别、部分和批量修改,同时,能对各职工的工资进行计算,即计算应发金额、应扣金额及实发金额等。

查询统计功能。

要求即可以单项查询,比如查看某个职工的工资情况等;也可以多项查询,比如某部门工资数在某一范围的职工的工资情况等。

报表打印功能。

每月发放工资时,要求能够打印本月的工资表、随工资发给每个职工的工资条以及工资统计表。

 

2。

1数据库需求分析

数据库的设计是指对于一个给定的应用环境,构造最有效的数据库模式,建立数据及应用系统,实质能够有效地存储数据,满足用户的需求,数据库设计是在数据库管理系统支持下进行的。

根据数据流程图,可以列出以下数据项和数据结构:

员工信息:

工号,姓名,性别,年龄,出生日期,地址,电话,政治面貌,毕业院校,身份证号,所在部门,备注。

考勤管理:

工号,姓名,月份,本月天数,公休天数,出勤天数,出勤,旷工,年休,请假,迟到,早退,忘订卡,假日加班,其它加班,补休天数,出差,加班费,扣考核,其它,备注.

员工评价:

工号,姓名,工作态度,各种奖励及处罚,技术水平,备注。

工资管理:

工号,姓名,底薪,奖金,补贴,加班,养老金,,医疗保险,公积金,实发工资,月份.

人事变动:

编号,事件,备注。

部门管理:

编号,名称,部门经理.

管理员:

编号,用户名,口令。

2。

2功能陈述

要求具备如下基本功能:

基本工种、基本工资的管理;

公司部门、部门津贴、员工的管理;

加班类型、加班津贴的管理;

公司员工的考勤信息管理;

公司员工月工资管理

月工资=基本工资+部门津贴+加班津贴-被扣工资

查询统计上述信息,进行企业工资报表。

2。

3数据流图

人事管理系统主要有以下几项功能:

员工档案的管理:

包括员工基本信息,所在部门,工作信息和工作简历的输入,员工信息的查询和修改.

员工考勤的管理:

包括考勤的添加,查询,修改和删除。

员工工资的管理:

包括工资的添加,工资报表的查询,修改和删除.

员工评价的管理:

包括评价的输入,查询和修改。

人事变动的详细记录,包括岗位和部门的调整,便于掌握人员的动向,及时调整人才的分配。

企业所有部门的查询与管理.

管理员以及其它功能模块。

仔细分析调查有关企业人事信息需求的基础上,将得到如图1的数据流程。

 

图1数据流图

2。

4功能流程图

根据系统功能的要求,可以将系统分解成几个功能模块来分别设计,功能模块如图2所示:

 

 

2.5E-R模型图

2.5.1部门实体E—R图

图3部门E—R图

2。

5.2员工实体E—R图

图4员工E-R图

2.5。

3考勤表实体E-R图

图5考勤表E—R图

2。

5。

4加班表实体E—R图

图6加班表E—R图

2。

5。

5工种表实体E—R图

图7工种表E-R图

2。

5.6实体与实体之间的E-R模型如图8所示

 

图8实体间的E–R模型

三、数据库逻辑设计

3。

1表的定义

3。

1.1员工表

employee

字段名

数据类型

含义说明

空值情况

EmpID

Char(6)

职工编号

主关键字

Name

varChar(10)

职工姓名

不为空

Sex

Char

(2)

性别

不为空

age

int

年龄

address

Varchar(100)

地址

emptel

Varchar(15)

联系电话

JobID

Char(6)

工种编号

不为空

deptID

Char(6)

部门编号

不为空

表1

3。

1.2部门表

department

字段名

数据类型

含义说明

空值情况

deptID

Char(6)

部门编号

主键

deptName

Varchar(20)

部门名称

不为空

deptallowance

money

部门津贴

默认为0

manager

Varchar(20)

部门经理

depttel

Varchar(15)

办公室电话

表2

3.1.3工种表:

Job

字段名

数据类型

含义说明

空值情况

jobID

Char(6)

工种编号

主键

jobname

Varchar(20)

工种名称

不为空

deptid

Char(6)

部门编号

不为空

salary

money

基本工资

不为空

表3

3。

1.4加班类型表(类型,加班名称,加班薪酬)

extraWorkType

字段名

数据类型

含义说明

空值情况

ewtypeID

Char(3)

加班类型

主键

ewtypeName

Char(20)

加班名称

不为空

ewtypePay

number

加班薪酬

表4

加班表(职工号,日期,加班类型,加班时间,加班津贴)

Extrawork

字段名

数据类型

含义说明

空值情况

empID

Char(6)

员工编号

不为空

ewdate

date

加班日期

不为空

ewtypeID

Char(3)

加班类型

不为空

ewtime

Number

(2)

加班时间

不为空

ewpay

Number

加班薪酬

 

表5

表5

考勤表(日期,职工编号,是否出勤)

Attendance

字段名

数据类型

含义说明

空值情况

Attdate

Date

日期

不为空

empID

Char(6)

职工编号

不为空

ifattd

Char

(1)

是否出勤

不为空

表6

考勤类型表(出勤类型,出勤名字,扣除工资)

attendancetype

字段名

数据类型

含义说明

空值情况

attID

char(3)

出勤类型

主键

attName

char(20)

出勤名字

attSal

number

扣除工资

表7

3。

2代码

在主界面中,员工管理菜单是此系统的重要组成部份,其中包括4个主要功能模块:

员工基本信息模块,员工考勤模块,员工评价模块和员工工资管理模块。

在编写程序的具体代码之前首先要创建公用模块,VB中可以用公用模块来存放整个工程项目公用的函数,过程和全局变量等。

这样可以极大的提高代码的效率。

在项目资源管理器中为项目添加一个Module,并保存就可以开始添加代码了.公用代码如下:

PublicFunctionExecuteSQL(ByValSQL_

AsString,MsgStringAsString)_

AsADODB.Recordset

DimcnnAsADODB.Connection

DimrstAsADODB。

Recordset

DimsTokens()AsString

OnErrorGoToExecuteSQL_Error

sTokens=Split(SQL)

Setcnn=NewADODB。

Connection

cnn.OpenConnectString

IfInStr("INSERT,DELETE,UPDATE”,_

UCase$(sTokens(0)))Then

cnn。

ExecuteSQL

MsgString=sTokens(0)&_

”querysuccessful”

Else

Setrst=NewADODB。

Recordset

rst。

OpenTrim$(SQL),cnn,_

adOpenKeyset,_

adLockOptimistic

SetExecuteSQL=rst

MsgString=”查询到”&rst。

RecordCount&_”条记录"

EndIf

ExecuteSQL_Exit:

Setrst=Nothing

Setcnn=Nothing

ExitFunction

ExecuteSQL_Error:

MsgString=”查询错误:

”&_

Err.Description

ResumeExecuteSQL_Exit

EndFunction

PublicFunctionConnectString()AsString

ConnectString=”FileDSN=renshi.dsn"

EndFunction

以上两个函数代码分别用来完成执行各种SQL语句和连接数据库。

四、物理结构设计

4。

1存储结构设计

经过分析可知,本酒店管理系统中信息处理的特点如下:

(1)职员基本信息、职员考勤信息子系统的数据不仅经常需要查询,而且更新速度快,例如新职员的到来后要进行登记,职员每个月都要进行要作考勤等.

(2)各个部门信息要求共享的信息较多.例如员工信息,来客信息等。

但财务信息一般不共享。

(3)人事部门有一定的特殊职能:

汇总财务信息;对于被辞退的员工从系统中级联删除其信息、如从员工表中删除其基本信息、从它所服务的工作部门中删除该员工的工作名额,结算支付其工资、奖金;同时补充新的员工,代替它的工作.

针对这些特点,设计如下:

4.2确定数据库的存放位置

为了提高系统性能,现根据应用情况将数据按照易变部分和稳定部分、经常存取部分和存取频率较低的部分分别在两个磁盘上存放。

同时,考虑到本系统是多用户的,为了提高效率,数据库的备份的数据和日志文件将保存在磁带中.

(1)经常存取部分:

职员(职员编号、职员姓名、性别、年龄、工龄、民族编号、生日、政治面貌、婚姻状况、所在部门编号、入职时间、文化程度编号、籍贯、身份证号、电子邮箱、办公电话、职员状态、居住地址、邮政编码、户口所在地);

职员家庭(职员编号、家庭成员编号、家庭成员姓名、家庭成员性别、家庭成员年龄、与本人关系、所在单位)

职员月考勤(考勤年月、职员编号、所在部门编号、请假天数、旷工天数、加班天数、当月全勤天数)

(2)存取频率较低的部分:

文化程度(文化程度编码、文化程度名称)

民族(民族编码、民族名称)

部门(部门编号、部门名称、部门职能描述)

职务(职务编号、职务名称)

 

4.3存储过程

(1)指定员工工资情况的查询

定义一个名为stsffCost的存储过程,该存储过程以以工资年月(@staffgongzi)、出勤天数(@staffchuqin)、加班工资(@staffjiaban)、应发工资(@staffying)、实发工资(@staffshi)为输入参数返回指定员工工资信息的存储过程。

stsffCost代码如下:

CREATEPROCEDUREstaffCost

@staffgongzidecimal,

@staffchuqindecimal,

@staffjiabandecimal,

@staffyingdecimal,

@staffshidecimal

AS

SELECT*

FROM工资

WHERE工资年月=@staffgongziAND

出勤天数=@staffchuqinAND

加班工资=@staffjiabanAND

应发工资=@staffyingAND

实发工资=@staffshi

GO

(2)指定范围的员工的信息查询.

以员工工号、部门编号为输入参数返回指定员工基本信息的存储过程,要求输入部分员工信息查询员工全部信息。

定义一个名为stsffInfo的存储过程,该存储过程以员工工号(@staffNum)、部门编号(@bmNum)作为输入参数,存储过程返回查询到的结果集.

satffInfo的定义代码如下:

CREATEPROCEDUREstaffInfo

@staffNumVARCHAR(50)='%’,

@bmNumVARCHAR(50)=’%’

AS

SELECT*

FROM员工,部门

WHERE员工.部门名称=部门.部门名称AND

((员工。

工号LIKE@staffNumVARCHAR(50)+’%')AND

(部门编号LIKE@bmNumVARCHAR(50)+’%’))

GO

(3)统计指定年份各部门每个月份的工资总额。

以年份为输入参数,以总工资金额为输出参数,产生该年度12个月份的每部门工资统计的存储过程.定义该存储过程名为bmMonhSum,输入参数为@ThisYear,实现代码如下:

CREATEPROCEDUREbmMonthSum

@ThisYearCHAR(10)

AS

SELECTDATEPART(MM,工资年月)AS员工工资月份,SUM(实发工资)AS部门人数

FROM员工,工资,部门

WHERE员工.工号=工资。

工号AND员工.部门名称=部门.部门名称ANDDATEPART(YYYY,工资年月)=@ThisYear

GROUPBYDATEPART(MM,工资年月)

GO

4。

4触发器的实现

(1)关键操作,在工资表里添加一条新的记录,实发工资会自动更新新的数据。

定义这个触发器名称为insert_工资.

代码如下:

createtriggerinsert_工资on工资forinsert

as

declare@ichar(20)

declare@bbint

set@i=case

when@bb=0001then'实发工资’

when@bb=0002then’实发工资’

end

print@i

(2)员工新调入

进行员工新调入操作是在员工信息表中添加一条新的记录,可以为员工信息表设计一个Insert触发器,当员工信息表执行Insert操作后自动更改出部门信息表相应记录的数据.定义这个触发器名称为staffinsert。

其代码如下:

CREATETRIGGERstaffinsertON员工

FORINSERT

ASIF(SELECTCOUNT(*)

FROM部门,inserted,工资

WHERE部门。

部门人数=inserted。

部门人数AND工资.工号=inserted.工号)=0

ROLLBACKTRANSACTION

GO

 

(3)员工调出

进行员工调出操作是在员工信息表中删除该员工的记录,可以为员工信息表设计一个Delete触发器,当员工信息表执行Delete操作后,工资表、部门表中的记录也将全部删除。

定义这个触发器名称为staff_delete.

其实现代码如下:

CREATETRIG

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

当前位置:首页 > 医药卫生 > 基础医学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1