工资发放管理系统 马飞.docx
《工资发放管理系统 马飞.docx》由会员分享,可在线阅读,更多相关《工资发放管理系统 马飞.docx(47页珍藏版)》请在冰豆网上搜索。
工资发放管理系统马飞
山西大学继续教育学院
毕业论文
类别专科
年级2006级
专业计算机信息与管理
姓名马飞
学号06418538025
论文题目工资发放管理系统
论文评语
建议成绩指导老师
年月日
目 录
摘要………………………………………………………………………1
前言………………………………………………………………………2
目录………………………………………………………………………3
第1章系统设计………………………………………………………5
1.1模块结构图………………………………………………4
1.1.1总体模块…………………………………………4
1.1.2工资管理子系统…………………………………4
1.1.3工资项目管理子系统……………………………6
1.2处理流程图………………………………………………6
1.2.1工资录入…………………………………………6
1.2.2工资项目管理……………………………………8
1.2.3工资查询…………………………………………8
1.2.4补贴标准增加……………………………………9
1.3模块外部设计……………………………………………9
1.4数据库设计……………………………………………13
1.4.1E-R图……………………………………………13
1.4.2系统数据表结构…………………………………14
第2章程序设计..........................................262.1用户界面接口设计………………………………………26
2.2模块管理………………………………………………28
2.2.1工资项目管理…………………………………28
2.2.2补贴录入模块…………………………………29
开发总结及心得体会…………………………………………………32
结束语…………………………………………………………………34
参考文献………………………………………………………………35
致谢……………………………………………………………………36
摘 要
工资发放管理系统是财务管理中的一个重要环节,其管理的合理性直接影响到整个财务部门的工作效率。
为此,根据我校财务管理的实际情况开发一套适用于我校特点的工资发放管理系统软件是十分必要的。
工资发放管理系统就是为此而设计的,它采用PowerBuilder9.0为开发语言,SQLServer2000为后台数据库。
本文简要介绍了工资发放管理系统的项目背景和意义,着重阐述了该系统开发实现过程,从系统的需求分析、方案论证、模块设计、数据设计、详细设计等各个环节都进行了详尽的分析和描述。
关键词:
工资发放管理系统PowerBuilder9.0SQLServer2000
工资发放管理系统
前 言
工资发放管理系统是使用PowerBuilder9.0和SQLServer2000数据库为开发工具开发的一个全新的管理系统(MIS)。
开发出的软件可以在任何一个装有PowerBuilder9.0环境的机器上运行。
本工资发放管理系统包括两个子模块:
工资管理模块、工资项目管理模块。
每个子模块大致可实现的功能有:
录入、查询、修改、删除。
论文介绍了工资发放管理系统开发的主要过程,包含五个章节以及开发总结及心得体会、结束语、参考文献、致谢几个部分。
第1章系统设计
1.1模块结构图
1.1.1总体模块
本系统由两个子系统组成:
工资管理子系统和工资项目管理子系统。
其中,工资管理子系统是负责对工资表的操作,可以查询职员工资记录,生成月份工资,增加职员工资记录,修改职员工资记录,删除不需要的工资记录。
工资项目管理子系统主要用来对工资项目的管理。
因为根据国家政策,教育部规定,教师工资会不定时调整,所以需要对工资项目进行设定,可以按最新记录对职员工资进行调整。
值得注意的是工资项目的旧记录必须保存,以备以后查询。
系统总体模块图如图4-1所示:
图1-1总体模块图
1.1.2工资管理子系统
工资管理子系统主要连接数据库中的工资表,职工信息表,部门信息表,做到数据的传递作用。
工资管理子系统由工资查询模块、工资录入模块、工资修改模块组成:
在工资查询模块中,主要完成对职员工资记录的查询,可以按照职工工号,职工姓名,部门等进行查询。
界面友好,简单易懂。
工资录入模块完成职工工资的增加,但应收项目中,职务工资、岗位工资,工资津贴,综合补贴,补贴,养老补贴,电话补贴为工资自动生成,不允许人为修改,应扣项目中,工会费、养老费、教卫费、医保金、公积金、失业金也为公式生成项目,也不允许人为修改,体现了学校财务管理的规范性和正规性。
工资修改模块中同样存在这样的问题,上述公式生成项也是不允许修改的,其他不固定项目根据不同职员可以进行修改。
查询子系统的功能如图1-2所示:
工资管理模块
工资录入子系统
工资查询模块
工资修改模块
W_gzxx
W_gzxg_add
W_gzxg_upd
图1-2工资管理子系统的功能图
1.1.3工资项目管理子系统
工资项目管理子系统由补贴模块、电话补贴模块、房贴模块、工会费模块、公积金比例模块、工人职务岗位津贴工资管理模块、岗位津贴模块,工资津贴院部比例模块,工资津贴应用/延陵比例模块、技术工人岗位技术等级工资管理模块、教卫费模块、临收1模块、临收2模块、临扣1模块、临扣2模块、临扣3模块、普通工人岗位等级工资管理模块、失业金比例模块、医保费模块、医疗补贴模块、养老金比例模块、综合补贴模块、专业技术人员岗位津贴工资管理模块、专业技术职务等级工资管理模块、职员职务等级工资模块组成。
以补贴模块为例,该模块负责对补贴的增加修改,有补贴增加,补贴修改两个子模块。
补贴增加模块中完成最新补贴标准的录入,使其标记位为1,设置为最新标准。
以便公式套用。
补贴修改模块中完成对补贴标准的修改,并保存以备作为档案查看。
工资项目管理子系统的简单功能如图1-3所示:
图1-3工资项目管理子系统的功能图
1.2处理流程图
1.2.1工资录入
工资的录入也称工资生成,它是工资发放系统中的最为重要的模块,也可以说是工资系统的核心所在。
工资系统的生成,计算公式等都包含其中。
所涉及的数据也是最为复杂的,要在财务室人员输入职工号后立即输出相应的工资项目组成的数据,涉及到多张表的查询判断。
以下是输入职工号后的数据生成步骤:
(1)由zgh查询表rsjbxx(人事基本信息表),得到职工姓名,职称级别,档次,个人编制,来院工作时间,性别,类别标记,职务级别,职务档次,个人身份,出生年月。
(2)由职称级别,档次查询职称表得到相应工资标准,由职务级别,档次得到相应工资标准,两者取最大值得到职务工资。
(3)由个人编制查询工资津贴院部/应用/延陵比例表得到比例值,再乘以职务工资得到工资津贴。
(4)算出工龄和学龄之和,对应职工岗位津贴表求出职位津贴。
(5)取出综合补贴值。
(6)由性别,判断有无补贴,取出其目前标准。
(7)由个人身份和个人编制得出其有无养老补贴。
(8)由工作时间得出其有无房贴。
(9)由类别标记算出电话补贴。
(10)取职务工资和工资津贴之和乘目前工会费比例标准得到工会费。
(11)由个人编制得出养老金比例,算出养老金。
(12)从jwf表中调出教卫费标准。
(13)有月份得到有无医保费。
(14)和养老金原理相同得到公积金、失业金。
(15)输入水电费、房租、临收1、临收2、临扣1、临扣2、临扣3。
录入程序中使用了一个datawindow控件,输入工资信息。
内容包括:
编号(id)、职工号(zgh)、标准工资(bzgz)、工资津贴(gzjt)、 岗位津贴(gwjt)、综合补贴(zhbt)、补贴(bt)、养老补贴(ylbt)、房贴(ft)、电话补贴(dhbt)、临收1(ls1)、临收2(ls2)、 工会费(ghf)、养老费(ylj)、教卫费(jwf)、医保金(ybf)、公积金(gjj)、失业金(syj)、水电费(sdf)、房租(fz)、临扣1(lk1)、临扣2(lk2)、临扣3(lk3)。
工资录入的程序流程如图1-4所示:
图1-4工资录入程序流程图
1.2.2工资项目管理
在查询工资项目后若要对项目进行修改,则调用此模块。
根据用户点击数据窗体的不同记录条来连接不同窗体,对不同的工资项目进行修改。
用户选择需要查看的工资项目记录后,系统查询数据库中xmb表,若查询出错则显示出错信息,否则判断id号,显示相应的工资项目窗体。
工资项目管理程序流程如图1-5所示:
图1-5工资项目管理程序流程图
1.2.3工资查询
该模块负责工资的查询,可选择或输入职工号,姓名,部门,输出相应的职工工资信息。
用户进入工资查询界面后,由用户选择查询条件,可以选择职工号,输入职工姓名,选择职工所在部门,确定后,系统根据查询条件进行数据库访问。
若按职工号查询,则判断职工号是否出错,出错则显示出错信息。
若按职工姓名进行查询,则先要访问人事信息表,得到符合条件的职工号,对此过程进行判断,是否出错,出错显示出错信息。
同样,若按职工部门进行查询,则也要访问人事信息表,得到符合条件的职工号,对此过程进行判断,是否出错,出错则显示出错信息。
然后根据职工号查询工资表,无错误则显示符合查询条件的职员工资信息。
工资查询程序流程如图1-6所示:
图1-6工资查询程序流程图
1.2.4补贴标准增加
该模块负责补贴新标准的增加,并将新记录添加到数据库中。
补贴标准增加程序流程如图1-7所示:
图1-7补贴标准增加程序流程图
1.3模块外部设计
1.主模块
输入:
操作系统传递至的各种消息以及用户的输入数据
输出:
用户界面显示
2.工资信息模块
输入:
用户的输入
输出:
相应的界面
3.工资套项目信息模块
输入:
用户的输入
输出:
相应的界面
4.工资查询模块
输入:
工号、姓名、月份、工资套
输出:
职工工资信息
5.工资信息修改模块
输入:
用户口令
输出:
相应的界面
6.工资增加模块
输入:
工资信息相关内容
输出:
增加允许/禁止对话框
7.工资修改模块
输入:
工资信息相关内容
输出:
修改允许/禁止对话框
8.工资套项目信息管理模块
输入:
用户的输入
输出:
相应的界面
9.专业技术职务等级工资管理模块
输入:
与数据库操作子对话框有关的用户输入及系统消息
输出:
相应的界面
10.职员职务等级工资管理模块
输入:
与数据库操作子对话框有关的用户输入及系统消息
输出:
相应的界面
11.技术工人岗位技术等级工资管理模块
输入:
与数据库操作子对话框有关的用户输入及系统消息
输出:
相应的界面
12.普通工人岗位工资管理模块
输入:
与数据库操作子对话框有关的用户输入及系统消息
输出:
相应的界面
13.工资津贴应用/延陵比例管理模块
输入:
与数据库操作子对话框有关的用户输入及系统消息
输出:
相应的界面
14.工人职务岗位津贴管理模块
输入:
与数据库操作子对话框有关的用户输入及系统消息
输出:
相应的界面
15.行政管理人员岗位津贴管理模块
输入:
与数据库操作子对话框有关的用户输入及系统消息
输出:
相应的界面
16.专业技术人员岗位津贴管理模块
输入:
与数据库操作子对话框有关的用户输入及系统消息
输出:
相应的界面
17.工资津贴院部比例管理模块
输入:
与数据库操作子对话框有关的用户输入及系统消息
输出:
相应的界面
18.岗位津贴管理模块
输入:
与数据库操作子对话框有关的用户输入及系统消息
输出:
相应的界面
19.综合补贴管理模块
输入:
与数据库操作子对话框有关的用户输入及系统消息
输出:
相应的界面
20.补贴管理模块
输入:
与数据库操作子对话框有关的用户输入及系统消息
输出:
相应的界面
21.房贴管理模块
输入:
与数据库操作子对话框有关的用户输入及系统消息
输出:
相应的界面
22.电话补贴管理模块
输入:
与数据库操作子对话框有关的用户输入及系统消息
输出:
相应的界面
23.工会费管理模块
输入:
与数据库操作子对话框有关的用户输入及系统消息
输出:
相应的界面
24.养老金管理模块
输入:
与数据库操作子对话框有关的用户输入及系统消息输出:
相应的界面
25.公积金管理模块
输入:
与数据库操作子对话框有关的用户输入及系统消息
输出:
相应的界面
26.失业金管理模块
输入:
与数据库操作子对话框有关的用户输入及系统消息
输出:
相应的界面
27.教卫费管理模块
输入:
与数据库操作子对话框有关的用户输入及系统消息
输出:
相应的界面
28.医保费管理模块
输入:
与数据库操作子对话框有关的用户输入及系统消息
输出:
相应的界面
1.4数据库设计
1.4.1E-R图
E-R图如图1-8所示:
图1-8E-R图
1.4.2系统数据表结构
xmb(项目表)如表1-1所示:
表1-1项目表
序号
字段名
字段含义
数据类型
是否为空
主/外键
1
id
编号
Smallint
(2)
否
主键
2
xmmc
项目名称
Nvarchar(50)
是
3
xmlb
项目类别
Nvarchar(50)
是
4
Fz1
备注1
Ntext(16)
是
5
Fz2
备注2
Ntext(16)
是
gzb(工资表)如表1-2所示:
表1-2工资表
序号
字段名
字段含义
数据类型
是否为空
主/外键
1
id
编号
Smallint
(2)
否
主键
2
zgh
职工号
Nvarchar(50)
是
外键
3
bzgz
标准工资
Nvarchar(50)
是
4
gzjt
工资津贴
Nvarchar(50)
是
5
gwjt
岗位津贴
Nvarchar(50)
是
6
zhbt
综合补贴
Nvarchar(50)
是
7
bt
补贴
Nvarchar(50)
是
8
ylbt
养老补贴
Nvarchar(50)
是
9
ft
房帖
Nvarchar(50)
是
10
dhbt
电话补贴
Nvarchar(50)
是
11
ls1
临收1
Nvarchar(50)
是
12
ls2
临收2
Nvarchar(50)
是
13
ghf
工会费
Nvarchar(50)
是
14
ylj
养老费
Nvarchar(50)
是
15
jwf
教卫费
Nvarchar(50)
是
16
ybf
医保金
Nvarchar(50)
是
17
gjj
公积金
Nvarchar(50)
是
18
syj
失业金
Nvarchar(50)
是
19
sdf
水电费
Nvarchar(50)
是
20
fz
房租
Nvarchar(50)
是
21
lk1
临扣1
Nvarchar(50)
是
22
lk2
临扣2
Nvarchar(50)
是
23
lk3
临扣3
Nvarchar(50)
是
Zyjszwdjgzb(专业技术职务等级工资表)如表1-3所示:
表1-3专业技术登记工资表
序号
字段名
字段含义
数据类型
是否为空
主/外键
1
id
编号
int(4)
否
主键
2
gwlbbh
岗位类别编号
Nvarchar(50)
是
3
dc1
档次1
int(4)
是
4
dc2
档次2
int(4)
是
5
dc3
档次3
int(4)
是
6
dc4
档次4
int(4)
是
7
dc5
档次5
int(4)
是
8
dc6
档次6
int(4)
是
9
dc7
档次7
int(4)
是
10
dc8
档次8
int(4)
是
11
dc9
档次9
int(4)
是
12
dc10
档次10
int(4)
是
13
dc11
档次11
int(4)
是
14
dc12
档次12
int(4)
是
15
dc13
档次13
int(4)
是
16
dc14
档次14
int(4)
是
17
dc15
档次15
int(4)
是
18
dc16
档次16
int(4)
是
19
dc17
档次17
int(4)
是
20
bj
标记
int(4)
是
21
fz1
备注1
Ntext(16)
是
22
fz2
备注2
Ntext(16)
是
23
xgsj
修改时间
Smalldatetim(4)
是
zyzwdjgzb(职员职务等级工资表)如表1-4所示:
表1-4职员职务等级工资表
序号
字段名
字段含义
数据类型
是否为空
主/外键
1
id
编号
int(4)
否
主键
2
zwjbbh
职务级别编号
Nvarchar(50)
是
3
dc1
档次1
int(4)
是
4
dc2
档次2
int(4)
是
5
dc3
档次3
int(4)
是
6
dc4
档次4
int(4)
是
7
dc5
档次5
int(4)
是
8
dc6
档次6
int(4)
是
9
dc7
档次7
int(4)
是
10
dc8
档次8
int(4)
是
11
dc9
档次9
int(4)
是
12
dc10
档次10
int(4)
是
13
dc11
档次11
int(4)
是
14
dc12
档次12
int(4)
是
15
dc13
档次13
int(4)
是
16
dc14
档次14
int(4)
是
17
dc15
档次15
int(4)
是
18
bj
标记
int(4)
是
19
fz1
备注1
Ntext(16)
是
20
fz2
备注2
Ntext(16)
是
21
xgsj
修改时间
Smalldatetim(4)
是
jsgrgwdjjsgzb(技术工人岗位技术等级工资表)如表1-5所示:
表1-5技术工人岗位技术等级工资表
序号
字段名
字段含义
数据类型
是否为空
主/外键
1
id
编号
int(4)
否
主键
2
jsdjbh
技术等级编号
Nvarchar(50)
是
3
dc1
档次1
int(4)
是
4
dc2
档次2
int(4)
是
5
dc3
档次3
int(4)
是
6
dc4
档次4
int(4)
是
7
dc5
档次5
int(4)
是
8
dc6
档次6
int(4)
是
9
dc7
档次7
int(4)
是
10
dc8
档次8
int(4)
是
11
dc9
档次9
int(4)
是
12
dc10
档次10
int(4)
是
13
dc11
档次11
int(4)
是
14
dc12
档次12
int(4)
是
15
dc13
档次13
int(4)
是
16
bj
标记
int(4)
是
17
fz1
备注1
Ntext(16)
是
18
fz2
备注2
Ntext(16)
是
19
xgsj
修改时间
Smalldatetim(4)
是
ptgrgwgzb(普通工人岗位工资表)如表1-6所示:
表1-6普通工人岗位工资表
序号
字段名
字段含义
数据类型
是否为空
主/外键
1
id
编号
int(4)
否
主键
2
dc1
档次1
int(4)
是
3
dc2
档次2
int(4)
是
4
dc3
档次3
int(4)
是
5
dc4
档次4
int(4)
是
6
dc5
档次5
int(4)
是
7
dc6
档次6
int(4)
是
8
dc7
档次7
int(4)
是
9
dc8
档次8
int(4)
是
10
dc9
档次9
int(4)
是
11
dc10
档次10
int(4)
是
12
dc11
档次11
int(4)
是
13
dc12
档次12
int(4)
是
14
dc13
档次13
int(4)
是
15
dc14
档次14
int(4)
是
16
dc15
档次15
int(4)
是
17
dc16
档次16
int(4)
是
18
bj
标记
int(4)
是
19
fz1
备注1
Ntext(16)
是
20
fz2
备注2
Ntext(16)
是
gzjtybblb(工资津贴院部比例表)如表1-7所示:
表1-7工资津贴院部比例表
序号
字段名
字段含义
数据类型
是否为空
主/外键
1
id
编号
int(4)
否
主键
2
bl
比例
Nvarchar(50)
是
3
xgsj
修改时间
Smalldatetim(4)
是
4
bj
标记
int(4)
是
5
fz1
备注1
Ntext(16)
是
6
fz2
备注2
Ntext(16)
是
zhbt(综合补贴标准表)如表1-8所示:
表1-8综合补贴标准表
序号
字段名
字段含义
数据类型
是否为空
主键/外键
1
id
编号
int(4)
否
主键
2
bz
标准
Nvarchar(50)
是
3
xgsj
修改时间
Smalldatetim(4)
是
4
bj
标记
int(4)
是
5
fz1
备注1
Ntext(16)
是
6
fz2
备注2
Ntext(16)
是
bt(补贴标准表)如表1-9所示:
表1-9补贴标准表
ft(房贴标准表)如表1-10所示:
表1-10房贴标准表
dhbt(电话补贴标准表)如表1-11所示:
表1-11电话补贴标准表
ghfblb(工会费比例表)如表4-12所示:
表4-12工会费比例表
yljblb(养老金比例表)如表4-13所示:
表4-13养老金比例表
gjjblb(公积金比例表)如表4-14所示:
表4-14公积金比例表
syjblb(失业金比例表)如表4-15所示: