企业工资管理系统设计论文.docx
- 文档编号:27514151
- 上传时间:2023-07-02
- 格式:DOCX
- 页数:17
- 大小:371.45KB
企业工资管理系统设计论文.docx
《企业工资管理系统设计论文.docx》由会员分享,可在线阅读,更多相关《企业工资管理系统设计论文.docx(17页珍藏版)》请在冰豆网上搜索。
企业工资管理系统设计论文
课程设计:
企业工资管理系统设计
专业:
班级:
学号:
学生姓名:
指导教师:
2011年6月15日
系统功能需求简介
工资管理信息系统对企业加强工资管理有着极其重要的作用,就一般的大型企业来说,它的设计内容非常复杂而且繁多,比如拥有工资计算功能,工资统计功能,报表输出功能,而且设计的模块也很多,比如工资管理模块,工资统计模块,报表设计模块,打印输出模块,模糊查询模块等等。
由于本软件主要是为作者工作的一家科技公司定制开发的。
该公司是一家刚刚成立的公司,总体人员比较少,有正式员工20人,人员结构比较简单,学历比较高,基本上都拥有大专以上学历,部门划分也很清晰,而且人员的流动性不高,所以该公司目前对工资管理的要求并不高。
因此,针对该公司而言,我们经过了反复地论证,最终确定了工资管理系统的设计方案。
该工资管理系统的主要功能如图所示:
系统功能模块图
功能需求描述
1、员工基本信息模块
员工基本信息模块具有员工信息输入、员工增删和员工信息查询三个功能。
员工基本信息包括员工号、员工姓名、员工性别、所在部门、所在岗位等信息。
员工增删实现了对数据库中员工信息的增加和删除。
员工信息查询可以通过员工号或员工姓名对员工信息进行查询。
2、工资结构设置模块
根据该公司的工资管理实际情况,本系统将工资结构分为基础工资、加班津贴和考勤扣除三部分。
3、工资汇总模块
用户在员工信息管理模块对该员工的工资进行输入以后,在工资汇总模块会自动对员工工资进行汇总。
用户可以打印出工资汇总表,打印之前可以通过打印预览功能进行打印预览。
数据库介绍
所谓数据库(Database)就是指按一定组织方式存储在一起的,相互有关的若干个数据的结合,数据库管理系统(DatabaseManagementSystem)就是一种操纵和管理数据库的大型软件,简称DBMS,他们建立在操作系统的基础上,对数据库进行统一的管理和控制,其功能包括数据库定义,数据库管理,数据库建立和维护,于操作系统通信等。
DBMS通常由数据字典,数据描述语言及其编译程序,数据操纵(查询)语言及其编译程序,数据库管理例行程序等部分组成。
关系数据库是以关系模型为基础的数据库,是根据表、记录和字段之间的关系进行组织和访问的一种数据库,它通过若干个表(Table)来存取数据,并且通过关系(Relation)将这些表联系在一起,关系数据库提供了成为机构化查询语言(SQL)标准接口,该接口允许使用多种数据库工具和产品,关系数据库是目前最广泛应用的数据库。
在VFP中数据库是一个逻辑上的概念,通过一组系统文件将相互关联的数据表及其数据库对象组织起来,成为扩展名为.dbc的数据库文件、扩展名为.dct的数据库备注文件和扩展名为.dcx的数据库索引文件,三个文件一般不能直接使用,而是交由VFP数据库统一管理。
VFP把.dbf文件称为表文件,一个库可以容纳多个表,通过库我们可明确各表之间的相互关系,使表文件不在彼此孤立,而成为相互关联的数据集合。
数据流图
根据对工资管理工作的调查和用户需求分析,该系统的数据流图如图示。
数据词典分析
该软件的数据库由下述四张数据表组成:
员工信息表工种工资信息表加班工资信息表考勤工资信息表
1、员工信息表
字段
字段名
类型
宽度
说明
1
员工工号
整型
3
数字
2
员工姓名
字符型
10
小于等于5个汉字
3
员工性别
字符型
2
“男”或“女”
4
员工工种
字符型
10
小于等于5个汉字
5
部门名称
字符型
10
小于等于5个汉字
2、工种工资信息表
字段
字段名
类型
宽度
说明
1
员工工种
字符型
10
汉字
2
基本工资
数值型
4
1-9999之间
3、加班工资信息表
字段
字段名
类型
宽度
说明
1
加班时间
字符型
14
小于等于7个汉字
2
加班类型
字符型
14
小于等于7个汉字
3
加班津贴
数值型
10
1-9999之间
4、考勤工资信息表
字段
字段名
类型
宽度
说明
1
员工工号
数值型
2
1-99之间
2
缺勤天数
数值型
4
1-9999之间
3
缺勤扣除
数值型
4
1-9999之间
月份
数值型
4
1-12之间
5、管理员注册表
字段
字段名
类型
宽度
说明
1
注册名
字符型
10
任意字符
2
口令
字符型
10
英文字母或数字
工资管理系统的功能实现
1、员工基本信息增删改功能
员工基本信息模块主要分为员工信息浏览界面和员工信息查询界面,员工信息浏览界面如图所示:
图4.1
具体编码如下:
(1)“增加新记录”按钮控件源代码:
thisform.pageframe1.page1.fy1.enabled=.F.
mand2.enabled=.F.
mand3.enabled=.F.
mand4.enabled=.T.
ifmand1.caption='增加新记录'
thisform.pageframe1.page1.txtpid.enabled=.T.
thisform.pageframe1.page1.txtpname.enabled=.T.
thisform.pageframe1.page1.txtpsex.enabled=.T.
thisform.pageframe1.page1.txtpjob.enabled=.T.
thisform.pageframe1.page1.txtpindate.enabled=.T.
thisform.pageframe1.page1.txtprank.enabled=.T.
appendblank
mand1.caption='增加确认'
thisform.pageframe1.page1.refresh
thisform.pageframe1.page1.txtpid.setfocus
else
getid=alltrim(thisform.pageframe1.page1.txtpid.value)
getname=alltrim(thisform.pageframe1.page1.txtpname.value)
getsex=alltrim(thisform.pageframe1.page1.txtpsex.value)
getjob=alltrim(thisform.pageframe1.page1.txtpjob.value)
getindate=alltrim(thisform.pageframe1.page1.txtpindate.value)
getrank=alltrim(thisform.pageframe1.page1.txtprank.value)
ifempty(getid)orempty(getname)orempty(getsex)orempty(getjob)orempty(getindate)orempty(getrank)
messagebox("资料不足",48,"错误")
else
mand1.caption='增加新记录'
tableupdate(.t.)
thisform.pageframe1.page1.txtpid.enabled=.F.
thisform.pageframe1.page1.txtpname.enabled=.F.
thisform.pageframe1.page1.txtpsex.enabled=.F.
thisform.pageframe1.page1.txtpjob.enabled=.F.
thisform.pageframe1.page1.txtpindate.enabled=.F.
thisform.pageframe1.page1.txtprank.enabled=.F.
thisform.pageframe1.page1.fy1.enabled=.T.
mand2.enabled=.T.
mand3.enabled=.T.
mand4.enabled=.F.
endif
endif
(2)“修改这条记录”按钮控件源代码:
mand1.enabled=.F.
mand3.enabled=.F.
mand4.enabled=.T.
thisform.pageframe1.page1.fy1.enabled=.F.
ifmand2.caption='修改这条记录'
thisform.pageframe1.page1.txtpid.enabled=.T.
thisform.pageframe1.page1.txtpname.enabled=.T.
thisform.pageframe1.page1.txtpsex.enabled=.T.
thisform.pageframe1.page1.txtpjob.enabled=.T.
thisform.pageframe1.page1.txtpindate.enabled=.T.
thisform.pageframe1.page1.txtprank.enabled=.T.
mand2.caption='修改确认'
thisform.pageframe1.page1.refresh
thisform.pageframe1.page1.txtpid.setfocus
else
mand2.caption='修改这条记录'
tableupdate(.t.)
thisform.pageframe1.page1.txtpid.enabled=.F.
thisform.pageframe1.page1.txtpname.enabled=.F.
thisform.pageframe1.page1.txtpsex.enabled=.F.
thisform.pageframe1.page1.txtpjob.enabled=.F.
thisform.pageframe1.page1.txtpindate.enabled=.F.
thisform.pageframe1.page1.txtprank.enabled=.F.
mand1.enabled=.T.
mand3.enabled=.T.
mand4.enabled=.F.
thisform.pageframe1.page1.fy1.enabled=.T.
endif
2、员工信息查询功能
员工信息查询界面如图所示。
具体编码如下:
“查询”按钮控件源代码:
getpid=alltrim(thisform.pageframe1.page2.text1.value)
getpname=alltrim(thisform.pageframe1.page2.text2.value)
flag1=thisform.pageframe1.page2.check1.value
flag2=thisform.pageframe1.page2.check2.value
ifflag1=0andflag2=0
messagebox("请输入查询条件",48,"错误")
endif
ifflag1=1andflag2=0
setordertopid
seekgetpid
iffound()
messagebox("查到记录",48,"注意")
select*frompersonnelwherepid=getpidintocursorling
thisform.pageframe1.page3.enabled=.T.
thisform.pageframe1.page3.refresh
else
messagebox("没有这条记录",48,"注意")
endif
endif
ifflag1=0andflag2=1
setordertopname
seekgetpname
iffound()
messagebox("查到记录",48,"注意")
select*frompersonnelwherepname=getpnameintocursorling
thisform.pageframe1.page3.enabled=.T.
thisform.pageframe1.page3.refresh
else
messagebox("没有这条记录",48,"注意")
endif
endif
ifflag1=1andflag2=1
setordertopid
seekgetpid
ifpersonnel.pname=getpname
messagebox("查到记录",48,"注意")
select*frompersonnelwherepid=getpidandpname=getpnameintocursorling
thisform.pageframe1.page3.enabled=.T.
thisform.pageframe1.page3.refresh
else
messagebox("没有这条记录",48,"注意")
endif
endif
工资结构设置模块界面如图所示
其中“基础工资”功能界面如图所示:
具体编码如下:
“修改”按钮控件源代码:
thisform.grdrank.column1.text1.enabled=.T.
thisform.grdrank.column2.text1.enabled=.T.
thisform.grdrank.column1.text1.setfocus
“修改确认”按钮控件源代码:
thisform.grdrank.column1.text1.enabled=.F.
thisform.grdrank.column2.text1.enabled=.F.
“添加”按钮控件源代码:
appendblank
gobottom
thisform.grdrank.column1.text1.enabled=.T.
thisform.grdrank.column2.text1.enabled=.T.
thisform.grdrank.column1.text1.setfocus
“删除”按钮控件源代码:
thisform.grdrank.recordsource=''
userankexclusive
deletefromrankwherername=getid
pack
thisform.grdrank.recordsource='rank'
thisform.grdrank.refresh
“退出”按钮控件源代码:
thisform.release
doformform\dataformat
第五章小结
随着我国成功加入WTO及信息化浪潮的日益临近,企业在激烈的市场竞争环境下的求得生存,就必须有效地利用人才、时间、信息结合的优势。
因此,如何使企业及时掌握本企业人才的各种信息、第一时间处理好随时变化的工资管理问题,建立一套符合企业实际的工资管理系统就显得尤为重要。
在本项目的软件开发的过程中,我全面实践一个面向数据库的应用系统的开发过程,学习了很多有关的知识。
这样的项目对我学过的数据结构,程序设计,数据库,软件工程等课程是一个综合性很高的实践。
一些以前没有学得很杂实的课程的内容,由于需要在实践中运用,刚开始我也感到很头痛。
但回过头再去看有关的教科书,经过一段时间的钻研,对与这些知识点的相关的背景,概念和解决方案理解得更透彻了,学习起来也越来越有兴趣,越来越轻松。
另外我还充分体会了从事软件开发工作需要特别严谨认真的态度和作风,一点都马虎不得。
每一个细微的细节都必须十分的注意,如果不认真思考决策,就会出现或大或小的错误,如果早期的错误隐藏下来,对后面的工作影响就会很大,甚至有时要推倒很多前面做的工作重来。
有时候,我自己觉得我写的程序非常的正确,但是就是编译通不过,在查找错误的过程中,面临着否认自己的过程,非常的痛苦,而且由于自己的经验及各方面的能力的不足,所以进展的速度非常的缓慢,往往几天的时间还没有一点进展。
这时候,我一般是先自己通过书本,手册和资料找解决办法,实在没辙了才向专家请教。
尽管向专家请教解决问题比较快,自己钻研花的时间较多,但我强迫自己独立的思考对我的学习提高帮助非常大。
在开始编写程序的时候,我看到别人的软件功能非常的详细,而且界面非常的漂亮,总希望自己的软件也非常的完善,但是,经过二个月的学习,发现编一个优秀的软件决不是一蹴而就的事情,需要长时间的积累和经验。
我认清自己的能力后,我就特别注意在工作的过程中不贪图大而全,而是根据自己的能力,制定适当的目标。
在反反复复的学习及不耻下问之下,我的辛勤努力有了回报,终于做出了一个简单的软件,虽然这个软件的功能非常的简单,而且我想,在实际的运用中,还有些不足。
因为工资的内容非常的丰富,我涉及到的仅仅是工资管理的一部分简单内容,离实际的客户需求肯定还有一定的差距。
例如工资管理和人事管理,考勤管理以及财务帐表的关联考虑得还不完善。
最好是这几部分之间的数据可以相互利用转化,不需要重复的输入有关的数据。
针对工资管理,还应该建立一个有普遍意义的模型,这样对用户来说,就比较容易通过修改有关管理制度来适应我们开发的软件。
由于我的知识浅薄,经验不足及阅历颇浅,因此,在该系统的设计方面还有很多不足,比如功能过少,界面不够醒目等问题,我会在工作的使用过程中,根据工作的具体要求不断的修改,完善,争取使该系统慢慢趋向完美。
在本系统的设计过程和论文编写过程中,很多老师、同事和朋友都给予了我许多无私的帮助,尤其是我的导师给我的论文提出了很多宝贵的修改意见,在这里,我向这些无私帮助我的人表示衷心的感谢。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 企业 工资管理 系统 设计 论文