企业工资管理系统 2文档格式.docx
- 文档编号:17254820
- 上传时间:2022-11-29
- 格式:DOCX
- 页数:22
- 大小:342.69KB
企业工资管理系统 2文档格式.docx
《企业工资管理系统 2文档格式.docx》由会员分享,可在线阅读,更多相关《企业工资管理系统 2文档格式.docx(22页珍藏版)》请在冰豆网上搜索。
4、面向对象设计的核心是类的设计。
例如:
可以定义一个“工资查询表单”类,该类中可以定义查询的姓名、年龄、工资等等信息,则以此类为原型可以设计出众多的“工资查询表单”类的对象实例,这些实体都具有类中所定义的特征。
5、设计的工资管理系统也是建立在一系列类基础之上的,其编程的思想是:
先根据一定的需要创建一系列的子类或直接调用vfp提供的基类,编制程序时,由这些类派生出相应的对象,所派生出的对象继承了其父类所有的功能,而且具有很好的封装性,这样就可利用派生出的对象像搭积木一样来设计自己的程序。
打个比方,就比如要制造一台机器,首先要制造各种零件的模具,然后用制造好的模具生产出所需的零件,所有这些做完后,剩下的就只是如何把这些零件组装起来,这样一台机器就很容易制造出来了。
实际编程也是如此。
每个表单都是由一定数量的对象按某一种方式组合在一起的,程序编制的核心是类的设计。
1.3企业工资管理系统现状分析
1.3.1企业工资管理的应用现状
随着我国国民经济建设的蓬勃发展和具有中国特色的社会主义市场经济体制的迅速完善,各个行业都在积极使用现代化的手段,不断改善服务质量,提高工作效率,这些都在很大程度上给企业提出越来越严峻的挑战,对企业体系无论是在行政职能、企业管理水平以及优质服务上都提出更高的要求。
建设一个科学高效的信息管理系统是解决这一问题的必由之路。
企业内部财务管理是该企业运用现代化技术创造更多更高的经济效益的主要因素之一。
工资管理作为企业内部的一种财务管理也是如此,由于企业职工人数较多,每一位职工的具体实际情况也不尽相同,各项工资条款的发放,如果没有一个完整的管理系统来进行管理,那么势必会给管理人员带来种种麻烦,因此类似工资管理系统之类的财务软件的开发势在必行。
1.3.2管理系统开发的目的
本系统开发的主要目的就是要使企事业单位工资管理实现计算机管理,使管理员能够有序的管理每一位职工的各项工资条款的发放以及员工个人台帐的生成,使企业运用现代化技术创造更多更高的经济效益。
2.系统分析
2.1系统目标
本系统要对企业工资管理的日常的工资发放进行数据输入,并对各项工资条款进行计算。
汇总各项数据生成员工个人台帐,打印工资报表。
采用用户名,密码安全机制,分用户权限登陆访问,保证系统资源不受人为因素的干扰。
2.2可行性研究与分析
可行性研究的目的使用最小的代价在尽可能短的时间里确定问题是否能解决,通过复杂系统的规模与目标,研究与此类似的系统后,我们具体从下面两个方面考虑。
(1)技术上的可行性。
技术上的可行性分析主要分析现有技术条件能否顺利完成开发工作,软硬件配置能否满足开发者需要等,这一特点非常适合计算机的特点,发挥计算机的数据处理速度快,准确率高的优势,现代计算机硬件和软件技术的飞速发展,为系统的建设提供了技术条件。
由于对企业工资管理系统这一类的企业财务系统进行开发已有一定的时期,有很多成功的实例,技术基础也已经非常雄厚,因而技术上的准备应该不成问题。
(2)经济上的可行性。
主要是对项目的经济效益进行评价,一方面是支出的费用,其中包括设备购置费,软件开发费,管理和维护费,人员工资和培训费等。
另一方面是取得的收益中可以用钱来衡量的那部分(收益的另一部分难以用钱来表示)。
基于企业的现有计算机及配套设备,建设MIS系统。
不但能大大减少重复性的书面报告,降低办公费用,提高办公室效率,而且能提高检测数据效用,为企业提供很方便。
由于企业工资管理系统是一个比较小型的系统,是由我及几个同学小组进行开发的,所以从人力、物力、财力方面来说都是可行的。
(3)管理上的可行性
主要是管理人员对开发信息系统是否支持,现有管理制度和方法是否科学,规章制度是否齐全,原始数据是否正确等,企业工资管理系统比较完善的规章制度和管理方法为系统的建设提供了保障。
(4)社会可行性
社会可行性研究是对系统投入使用后对社会可能带来的影响进行分析,比如是否为人们所接受,是否为社会带来利益。
可行性分析的最后成果是写出可行性分析报告,可行性分析报告包括下列内容
企业工资管理系统的战略目标,新系统的总体目标及主要功能。
主要问题和主要信息要求。
拟订新系统的方案。
从经济,技术,管理,社会等方面论证方案的可行性。
2.3.需求分析
对用户需求的分析应该全面、深入、发展,全面是指考查由MIS管理的信息是否有纰漏,必须保证各静态、动态信息的完全;
深入是指对信息的内容、结构、含义、变换、生存周期的分析和认识;
发展是指对信息未来发展变化的预测,因为信息在某个系统、机构内的变化往往存在着自身特有的发展规律,需求分析应该预见这种规律,否则就会缩短MIS的使用寿命。
为了保证需求分析的完备性,就必须保证需求分析的时间。
1.系统业务流程图
通过对企业原先手工进行员工工资管理业务的情况,可以设计出它的业务流程图,如图4-1所示。
用户登录数据输入工资计算存储数据
工资查询报表汇总
图4-1
2.系统的功能要求。
①整体结构合理,风格一致,模块化结构,界面清晰,接口灵活,操作简便。
②开发方法,文档规范化,便于管理,可扩充。
③完善的数据输入,维护,输出。
④自检性能高,用户误输、错输均有提示。
⑤容错性能高,某个用户的操作错误不会引起整个系统的瘫痪,每一功能的操作都有信息提示以免重复操作,错误操作有警告,以便用户及时改正。
2.4.数据流程图
1.管理系统的数据流程图符号如图4-2所示
外部实体处理数据流数据存储
图4-2数据流程图的符号
2.本系统的数据流程如图4-3所示
图4-3企业工资管理系统的数据流程图
3系统总体结构设计
1.系统功能模块图
本系统在设计时采用结构化程序的设计方法,系统的总体结构采用菜单来调用表单,利用表单来对信息进行管理、数据加工、信息查询、系统维护等工作,系统的功能模块本结构图如图5-1所示。
图5-1系统功能模块图
2.功能的说明
本系统大致分为如下四大功能模块。
1.员工信息
分为员工信息浏览和员工信息查询:
在员工信息浏览子模块中,可以对员工的编号、姓名、性别、岗位、工龄、工资等级等信息进行浏览,并可以对员工信息进行增加记录,修改记录,删除记录等操作;
在员工信息查询模块中,可按员工号或员工姓名进行查询。
2.工资基本设定
包括对基础工资、岗位工资、工龄工资的设定。
基础工资的设定包括工资等级、工资额的设定,可以对工资等级及相应的工资额进行修改、添加、删除。
岗位工资的设定包括岗位名称、岗位工资额的设定,可以对岗位名称及相应的岗位工资额进行修改、添加、删除。
工龄工资的设定包括工龄、工资额的设定,可以对各个工龄段及相应的工龄工资额进行修改、添加、删除。
3.工资汇总
在工资管理中,要分别输入每一个员工的各项工资条款,这样才能运用计算机技术来管理好员工的工资发放情况,其中包括:
员工基本情况,员工基本工资情况,员工岗位工资情况,员工工龄工资,工资综合。
4.个人工资查询
此查询分为按职工姓名查询、按职工号查询。
5.退出
此功能块为退出系统。
、。
3.系统的运行要求
1.硬件要求。
设备名称
说明
处理器
奔腾III以上,256MB
内存
256MB,内存越大,速度越快
硬盘
40GB
鼠标
双飞燕2D鼠标
2.软件要求。
名称
操作系统
WINDOWS95/98,WINDOWSXP
应用软件
VISUALFOXPRO6.0(中文版)
本部分简明扼要的介绍了各个部分要实现的功能,搭好了设计的总体框架,使我们对要开发的系统能够更加系统的,全面的,确切的认识,下一步就可以进行系统的详细设计与具体功能的实现了。
4系统详细设计
1.数据库设计
概要设计基础是完成需求分析后提供的需求说明书,用概念数据模型表示数据及其相互间的关系,这种数据模型是与DBMS无关的、面向现实世界的、易如理解的数据模型,其独立于计算机的数据模型,独立于计算机的软硬件系统,与用户进行交流十分方便。
概念性数据模型关心的是如何完整、正确地反映客观实际情况,不关心在数据库中如何实现。
这种数据模式能真实地反应用户要求的实际情况,是一种容易被人们理解的直观的数据库结构模式。
同时也是一种相对稳定统一的数据模式,一般情况下很少变动。
概念性数据在用户和设计者之间建立了桥梁。
是设计数据库结构的基础。
概念设计中自顶向下的实体分析方法,即常用的实体联系模型(简称E-R模型),对具体数据进行抽象加工,将实体集合抽象成实体类型。
用实体间联系反映现实世界事物间的内在联系。
E-R模型是建立概念性数据模型的有力工具。
通过对企业工资管理内容和过程的分析,本系统应设计的实体和属性如下:
本系统一共用到了3个表。
如下:
岗位表(dept.dbf)(包括岗位名称,岗位工资)
工龄表(gongling.dbf)(包括工龄,工龄工资)
工人信息表(personnel.dbf)(包括编号,姓名,性别,工作岗位,工龄,工资等级)。
图6-1为本系统中工人信息的实体集及有关属性的图例:
图6-1
6.1.2实体和实体之间的关系E-R图如图6-2:
图6-2
2.系统中有关数据库表结构设计如下:
部门表
字段名
类型
宽度
小数位数
索引
部门
字符型
10
部门工资
数值型
2
2.工龄表
工龄
工龄工资
3.员工信息表
序号
主索引
姓名
6
性别
岗位
5
工资等级
3.系统模块设计举例
下面对本系统的具体的几个模块做详细说明。
1、系统主程序MAIN.PRG
clearscreen
clearevents
setdefatod:
\qygz
opendatabasedatabase\salary
dosalary\main.mpr
doformsalary\form\ksjm
readevents
2、Ksjm.frm
(1)打开表单设计器,设计好表单,并且设置好必要的属性,设计结果见图6-3。
Form1.load事件代码:
publici
i=0
Timer.timer事件代码:
ifThisform.Label1.Left<
0-Thisform.Label1.Width
Thisform.Label1.Left=Thisform.Width+3
Endif
Thisform.Label1.Left=Thisform.Label1.Left-10
I=I+10
IfI>
=255*2-6
I=0
(2)“员工基本信息“按钮的CLICK事件为:
doformsalary\form\personnel
personnel.frm的有关设计见第3目
图6-3
(3)“工资基本设定“按钮的CLICK事件为:
doformsalary\form\dataformat
(4)“工资汇总“按钮的CLICK事件为:
doformsalary\form\result
(5)“个人工资查询“按钮的CLICK事件为:
doformsalary\form\grcx
(6)“退出“按钮的CLICK事件为:
thisform.release
3.personnel.frm的有关设计:
(1)打开表单设计器,设计好表单,并且设置好必要的属性,设计结果见图6-4。
Form1.init事件代码:
setmultilockson
cursorsetprop("
buffering"
3)
(2)mand1.click事件代码:
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,"
错误"
)
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
4.工龄工资设定窗体代码:
1.”修改”按钮有关代码:
thisform.grdgongling.column1.text1.enabled=.T.
thisform.grdgongling.column2.text1.enabled=.T.
thisform.grdgongling.column1.text1.setfocus
2.”修改确认”按钮有关代码:
thisform.grdgongling.column1.text1.enabled=.F.
thisform.grdgongling.column2.text1.enabled=.F.
3.”添加”按钮有关代码:
gobottom
4.”删除”按钮有关代码:
thisform.grdgongling.recordsource='
'
usegonglingexclusive
deletefromgonglingwheregname=getgname
pack
gongling'
thisform.grdgongling.refresh
5.”退出”按钮有关代码
thisform.release
5.个人查询窗体有关代码:
(1).”确定”按钮有关代码:
inname=alltrim(thisform.text1.value)
inpswd=alltrim(thisform.text2.value)
setordertotms_user
seekinname
if!
found()
cMessageTitle='
设备管理系统'
cMessageText='
用户名错误,请重新输入'
nDialogType=4+32
nAnswer=messagebox(cMessageText,nDialogType,cMessageTitle)
docase
casenAnswer=6
thisform.text1.value='
thisform.text1.setfocus
casenAnswer=7
messagebox("
请勿偷窥他人资料"
警告"
endcase
iftms_pswd!
=inpswd
cMessageTitle='
cMessageText='
密码错误,请重新输入'
nanswer=messagebox(cMessageText,nDialogType,cMessageTitle)
docase
casenAnswer=6
ifflag<
thisform.text2.value='
thisform.text2.setfocus
flag=flag+1
else
messagebox("
thisform.release
endif
casenAnswer=7
警
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 企业工资管理系统 企业 工资管理 系统