收藏 分销(赏)

工资管理系统课程设计报告试卷教案.doc

上传人:可**** 文档编号:4630966 上传时间:2024-10-08 格式:DOC 页数:22 大小:3.05MB
下载 相关 举报
工资管理系统课程设计报告试卷教案.doc_第1页
第1页 / 共22页
工资管理系统课程设计报告试卷教案.doc_第2页
第2页 / 共22页
工资管理系统课程设计报告试卷教案.doc_第3页
第3页 / 共22页
工资管理系统课程设计报告试卷教案.doc_第4页
第4页 / 共22页
工资管理系统课程设计报告试卷教案.doc_第5页
第5页 / 共22页
点击查看更多>>
资源描述

1、目 录摘要1绪论1第一章需求分析21.1、系统功能需求简介21.2、功能需求描述21.3、目标系统要求21.4、系统平台选择21.5、数据流图3第二章概念模型设计42.1、概念模型设计4第三章逻辑模型设计53.1、数据信息53.1.1、员工信息表53.1.2、基础工资表53.1.3、岗位工资表53.1.4、工龄工资表53.1.5、管理员注册表5第四章系统详细设计64.1、系统功能分析6第五章系统实现75.1、界面设计75.1.1、欢迎界面75.1.2 、登录界面85.1.3、主界面95.1.4、员工基本信息模块设计105.1.5、工资结构设置模块编码设计165.1.6、工资汇总模块185.2、

2、主程序及编连编19第六章小结20参考文献21工资管理系统设计【摘 要】对企业而言,人力资源是企业最宝贵的资源,也是企业的“生命线”。而工资管理又是人力资源管理的重中之重。实行电子化的工资管理,可以让人力资源管理人员从繁重琐碎的案头工作解脱出来,去完成更重要的工作。本文介绍毕业设计课题的选题背景和意义,相关的研究和开发的比较和综述,研究开发的过程,以及设计思路和实现细节的考虑,最后给出了作者在毕业设计过程的体会。【关键字】管理信息系统,数据库,工资管理,实体关系图(E-R图),数据字典,数据流图。绪 论在各阶段的时间安排上,选题和调研用了一天左右的时间;熟悉开发环境,实验关键技术,查找类似的相关

3、系统的资料用了一天时间;系统概要设计用了四天的时间;数据库结构设计用了三天时间;功能模块开发和功能模块测试用了五天的时间;最后,系统调试和系统试运行和修改用了约一天的时间。完成全部工作大约用了两周的时间。概要设计数据库的结构设计功能模块开发功能模块测试系统调试定题调查研究资料查询开发环境熟悉研究关键技术系统试运行和修改第一章 工资管理需求分析一、需求分析1.1系统功能需求简介工资管理信息系统对企业加强工资管理有着极其重要的作用,就一般的大型企业来说,它的设计内容非常复杂而且繁多,比如拥有工资计算功能,工资统计功能,报表输出功能,而且设计的模块也很多,比如工资管理模块,工资统计模块,报表设计模块

4、,打印输出模块,模糊查询模块等等。由于本软件主要是为作者工作的一家科技公司定制开发的。该公司是一家刚刚成立的公司,总体人员比较少,有正式员工20人,人员结构比较简单,学历比较高,基本上都拥有大专以上学历,部门划分也很清晰,而且人员的流动性不高,所以该公司目前对工资管理的要求并不高。因此,针对该公司而言,我们经过了反复地论证,最终确定了工资管理系统的设计方案。 1.2功能需求描述1、员工基本信息模块员工基本信息模块具有员工信息输入、员工增删和员工信息查询三个功能。员工基本信息包括员工号、员工姓名、员工性别、所在部门、所在岗位、工龄和工资等级等信息。员工增删实现了对数据库中员工信息的增加和删除。员

5、工信息查询可以通过员工号或员工姓名对员工信息进行查询。2、工资结构设置模块根据该公司的工资管理实际情况,本系统将工资结构分为基础工资、岗位工资和工龄工资三部分。该模块可以对这三个工资类型设置工资等级,并对每个等级设置工资标准。3、工资汇总模块用户在员工信息管理模块对该员工的工资等级进行输入以后,在工资汇总模块会自动对员工工资进行汇总。用户可以打印出工资汇总表,打印之前可以通过打印预览功能进行打印预览。1.3目标系统要求目标系统应该达到以下要求: 1、时间经济性。优化逻辑设计与物理设计,使系统运行效率高,反映速度快。2、可靠性。能连续准确的处理业务,有较强的容错能力。3、可理解性。用户容易理解和

6、使用该系统。4、可维护性和适应性。系统应易于修改、易于扩充、易于维护,能够适应业务不断发展变化的需要。5、可用性。目标系统功能齐全,能够完全满足业务需求。6、安全保密性。保证系统的物理安全、数据存储和存取的安全与保密、数据传输的安全与保密,做好使用人员的授权管理。1.4系统平台选择选择微软平台作为主导,一方面考虑目前微软的飞速发展,越来越多的企业在规划内部网络时,将微软平台作为首选方案;另一方面从技术角度来讲,微软平台上的应用无论是在开发上,还是在软件的部署上都非常容易,而且性能优越。操作系统:Windows7开发工具与语言: Visual FoxPro8.0中文版 1.5数据流图图2.5 系

7、统的数据流图根据对工资管理工作的调查和用户需求分析,该系统的数据流图如图2.5所示。基础工资设定岗位工资设定工龄工资设定工资标准设定员工信息设定员工工资汇总第二章工资管理系统概念设计得到上面的数据项和数据结构以后,就可以设计出能够满足用户需求的各种实体以及它们之间的关系,为后面的逻辑结构设计打下基础。这些实体包含各种具体信息,通过相互间的作用形成数据的流动。本系统根据上面的设计规划出的实体有:管理员实体、员工信息实体、基本工资实体、物资余额信息实体。各个实体具体的描述E-R图如下:工资等级员工信息实体工龄员工性别岗位名称员工名称员工号工资等级基础工资基本工资工龄岗位工资岗位工龄工资岗位名称工龄

8、表 在找出所有实体基础上,需要进一步分析各个实体之间的关系,经过分析得到所有的E-R图员工领取执行基本工资具有岗位工龄第三章 逻辑模型设计3.1数据信息通过对数据库概念模型的设计,确定以下是该系统需建立的几个表:该软件的数据库由下述四张数据表组成:员工信息表:PERSONNEL.DBF 基础工资设置表:COURSE.DBF 岗位工资设置表:RANK.DBF 工龄工资设置表:GONGLING.DBF 3.1.1、员工信息表:PERSONNEL.DBF字段字段名类型宽度说明1员 工 号字符型3数字2员工姓名字符型10小于等于5个汉字3员工性别字符型2“男”或“女”4岗位名称字符型14小于等于7个汉

9、字5工 龄数值型21-99之间6工资等级数值型21-99之间 3.1.2、基础工资表:COURSE.DBF字段字段名类型宽度说明1工资等级数值型21-99之间2基础工资数值型41-9999之间 3.1.3、岗位工资表:RANK.DBF字段字段名类型宽度说明1岗位名称字符型14小于等于7个汉字2岗位工资数值型41-9999之间 3.1.4、工龄工资表:GONGLING.DBF字段字段名类型宽度说明1工龄数值型21-99之间2工龄工资数值型41-9999之间 3.1.5、管理员注册表:ADMINER.DBF字段字段名类型宽度说明1注册名字符型10任意字符2口 令字符型10英文字母或数字第四章 系统

10、详细设计4.1、系统功能分析系统开发的总体设计任务就是实现物质信息的系统化,规范化和自动化。系统功能分析是在系统开发总体任务的基础上进行的,本系统中需要的的主要功能有:u 工资管理系统登录;u 员工信息的输入;u 员工信息的增删;u 员工信息的查询;u 工资结构中基本工资;u 工资结构中岗位工资;u 工资结构中工龄工资;u 员工工资汇总的打印、预览。对上述各项功能进行集中、分块,按照结构化程序设计的要求,得到如图4.1所示的系统功能模块图。工资管理系统员工基本信息工资汇总工资结构设置资料输入工龄工资基础工资岗位工资员工查询员工增删基础工资工龄工资岗位工资图4.1 系统功能模块图第五章 工资管理

11、系统的系统功能实现5.1界面设计5.1.1欢迎界面具体步骤:在项目管理器窗口中,选择文档选项中的表单文件类型,单击新建按钮,弹出新建表单对话框,单击新建按钮,进入表单设计器窗口。在表单中设取“caption”属性为“欢迎界面”。在表单上添加一个容器,将该容器的backstyle属性设置为0。右键选择“编辑”命令。在容器上添加一个“label”控件和两个“timer”控件。将label的backstyle属性设置为0,caption属性设置为“欢迎使用物资管理系统!”。在表单上添加“command”控件。(1)将“timer1”的enabled属性设置为“T”,interval属性设置为“100

12、”。)在timer1的timer上添加代码:if this.parent.label1.left+this.parent.label1.width0 this.parent.label1.left=this.parent.label1.left-3else this.parent.label1.left=this.parent.widthendif实现使“欢迎使用物资管理系统!”这几个字在容器上滚动的效果。(2)将“timer2”的interval属性设置为“100”。在timer2的timer上添加代码:i=int(rand()*225)j=int(rand()*225)k=int(rand

13、()*225)thisform.container1.label1.forecolor=rgb(i,j,k)使“欢迎使用物资管理系统!”这几个字呈现闪烁效果。将command1的“caption”属性设为“确定”。在command1的click上添加代码:do form E:VFP课程设计登录界面.scxThisform.release将command2的“caption”属性设为“确定”。在command2的click上添加代码:release thisformquit5.1.2登录界面具体步骤:在项目管理器窗口中,选择文档选项中的表单文件类型,单击新建按钮,弹出新建表单对话框,单击新建按钮

14、,进入表单设计器窗口。在表单中设取“caption”属性为“用户登录”。 在表单上添加一个容器,将该容器的backstyle属性设置为0。右键选择“编辑”命令。在容器上添加3个“label”控件,1个“text”控件,1个“combo”控件和两个“command”控件。将label的backstyle属性设置为0,caption属性设置为“用户名”,“密码”,“*welcome*” ,将combo1的name属性设置为cboUser,rowsourcetype属性设置为6-字段。两个“timer”控件。Form的数据环境添加表adminer(1) timer控件的设置和欢迎界面一样。(2)将c

15、ommand1的“caption”属性设为“确定”。在container1的command1的click上添加代码:a=thisform.container1.cboUser.valueLOCATE FOR 注册名=aIF FOUND()b=口令ELSE=MESSAGEBOX(用户名有误,请重新选择!,0,信使服务)returnendifif thisform.container1.text2.Value=ALLTRIM(b)=messagebox(欢迎使用工资管理系统!,1+48+0,提示)thisform.container1.cboUser.Value=do form E:VFP课程设计

16、选择界面.scxthisform.releaseelsemessagebox(密码错误,请重新登录!,0+16+1,提示)thisform.container1.text2.Value =thisform.container1.text2.SetFocusendif(3)将command2的“caption”属性设为“取消”。在container1的command2的click上添加代码:IF MESSAGEBOX(确认取消,36,提示)=6thisform.ReleasequitENDIF5.1.3、主界面具体步骤:在项目管理器窗口中,选择文档选项中的表单文件类型,单击新建按钮,弹出新建表单

17、对话框,单击新建按钮,进入表单设计器窗口。在表单中设取“caption”属性为“工资管理系统”。 在表单上添加一个容器,在容器上添加一个“label”控件,将该控件的“backstyle”属性设置为0,“caption”属性设置为“*welcome*”。将“showwindow” 属性设置为“2-作为顶层表单”.添加三个command控件,caption属性分别设置为“员工信息”,“工资结构”,“工资汇总”,添加两个timer空件,设置及代码同上。5.1.4、员工基本信息模块编码设计1、员工基本信息增删改功能员工基本信息模块主要分为员工信息浏览界面和员工信息查询界面,员工信息浏览界面如图4.1

18、所示: 图4.1具体编码如下:(1)“增加新记录”按钮控件源代码:IF this.Caption=增加新纪录thisform.pageframe1.page1.SetAll(ReadOnly,.f.,textbox)thisform.pageframe1.page1.SetAll(Enabled,.f.,commandbutton)mand4.enabled=.t.this.Enabled = .T.this.Caption=保存&USE E:VFP课程设计personnel.dbfAPPEND BLANK GO bottomthisform.Refresh thisform.pagefram

19、e1.page1.text1.SetFocus elsethisform.pageframe1.page1.SetAll(Enabled,.t.,commandbutton)this.Enabled=.t.this.Caption=增加新纪录mand4.enabled=.f.endif(2)“修改这条记录”按钮控件源代码:IF mand2.Caption=保存num1=thisform.pageframe1.page1.text1.valuenum2=thisform.pageframe1.page1.text2.valuenum3=thisform.pageframe1.page1.text

20、3.valuenum4=thisform.pageframe1.page1.text4.valuenum5=thisform.pageframe1.page1.text5.valuenum6=thisform.pageframe1.page1.text6.value a=messagebox(确认操作么?,1+64+0,系统提示!) if a=1 replace personnel.员工号 with num1 replace personnel.员工姓名 with num2 replace personnel.性别 with num3 replace personnel.岗位 with num

21、4 replace personnel.工龄 with num5 replace personnel.工资等级 with num6 messagebox(操作成功) else delete pack thisform.refresh endifthisform.pageframe1.page1.SetAll(Enabled,.t.,commandbutton)mand4.enabled=.f.this.Enabled=.t.this.Caption=修改这条纪录elselocate for 员工号=thisform.pageframe1.page1.text1.valuethisform.pa

22、geframe1.page1.SetAll(ReadOnly,.f.,textbox)thisform.pageframe1.page1.SetAll(Enabled,.f.,commandbutton)this.Enabled = .T.this.Caption=保存thisform.Refresh Endif(3)“删除这条记录”按钮控件源代码:use E:VFP课程设计personnel.dbflocate for 员工号=thisform.pageframe1.page1.text1.valueIF MESSAGEBOX(要确定删除本记录吗?,1+64+256,提示)=1DELETEP

23、ACKgo bottomthisform.RefreshENDIF(4)“取消操作”按钮控件源代码:IF MESSAGEBOX(确定取消操作吗?,1+64+256,提示)=1go bottomdeletepackthisform.pageframe1.page1.SetAll(Enabled,.t.,commandbutton)mand1.caption=增加新纪录mand4.enabled=.f.thisform.RefreshENDIF2、员工信息查询功能员工信息查询界面如图4.2所示。图4.2具体编码如下:“查询”按钮控件源代码:if thisform.pageframe1.page2.

24、optiongroup1.Option1.value=1locate for 员工=alltrim(thisform.pageframe1.page2.text1.value)if found()select * from personnel where 员工号=alltrim(thisform.pageframe1.page2.text1.value);into array aathisform.pageframe1.page3.text1.value=aa(1)thisform.pageframe1.page3.text2.value=aa(2)thisform.pageframe1.pa

25、ge3.text3.value=aa(3)thisform.pageframe1.page3.text4.value=aa(4)thisform.pageframe1.page3.text5.value=aa(5)thisform.pageframe1.page3.text6.value=aa(6)thisform.pageframe1.page3.setfocuselse=messagebox(员工号不存在,请重新输入!,0,提示信息)thisform.pageframe1.page2.text1.value=endifelse locate for 员工姓名=alltrim(thisfor

26、m.pageframe1.page2.text2.value)if found()select * from personnel where 员工姓名=alltrim(thisform.pageframe1.page2.text2.value);into array aathisform.pageframe1.page3.text1.value=aa(1)thisform.pageframe1.page3.text2.value=aa(2)thisform.pageframe1.page3.text3.value=aa(3)thisform.pageframe1.page3.text4.val

27、ue=aa(4)thisform.pageframe1.page3.text5.value=aa(5)thisform.pageframe1.page3.text6.value=aa(6)thisform.pageframe1.page3.setfocuselse=messagebox(员工姓名不存在,请重新输入!,0,提示信息)thisform.pageframe1.page2.text2.value=endifendifThisform.refresh5.1.5工资结构设置模块编码设计工资结构设置模块界面如图4.3所示图4.3在form中添加两个label控件,四个command控件其中“

28、基础工资”功能界面如图4.4所示:图4.4具体编码如下:“修改”按钮控件源代码:thisform.grid1.column1.text1.enabled=.t.thisform.grid1.column2.text1.enabled=.t.thisform.grid1.column1.text1.setfocus“确定修改”按钮控件源代码:thisform.grid1.column1.text1.enabled=.f.thisform.grid1.column2.text1.enabled=.f.“添加”按钮控件源代码:IF this.Caption=添加thisform.SetAll(Ena

29、bled,.f.,commandbutton)this.Enabled = .T.this.Caption=保存APPEND BLANK GO bottomthisform.grid1.column1.text1.enabled=.t.thisform.grid1.column2.text1.enabled=.t.thisform.Refresh thisform.grid1.column1.text1.SetFocus elsethisform.SetAll(Enabled,.t.,commandbutton)this.Enabled=.t.this.Caption=添加&mand4.ena

30、bled=.f.endif“删除”按钮控件源代码:a=course.工资等级thisform.grid1.recordsource=if messagebox(是否确定删除?,1+64+256,提示)=1use E:VFP课程设计course.dbf exclusivelocate for 工资等级=adeletepackthisform.grid1.recordsource=coursethisform.grid1.refreshEndif“退出”按钮控件源代码:release thisform其中“岗位工资设定”和“工龄工资设定”同“基础工资设定”5.1.6、工资汇总模块在form中添加一

31、个grid控件和三个command控件Form的环境变量添加“视图1”Grid控件的rowsourcetype设置为视图1,column6的controlsource设置为“视图1.标准工资+视图1.岗位工资+视图1.工龄工资”Command的caption属性分别设置为“打印预览”,“打印”,“退出”,代码如下:“打印预览”:report form E:VFP课程设计汇总表 to print preview“打印”:report form E:VFP课程设计汇总表 to print“退出”:thisform.Release “汇总表”报表的设置:数据环境中添加视图1,在“标题区”设置标题,在

32、“页标头”设置6个属性名称,在细节区设置6个字段,分别为:“视图1.员工号”,“视图1.员工姓名”,“视图1.标准工资”,“视图1.工龄工资”,“视图1.岗位工资”,“视图1.标准工资+视图1.工龄工资+视图1.岗位工资”;预览效果如下:其中工资汇总预览如下:5.2主程序各模块程序编写完成后,要为程序编写一个入口程序。该程序的作用是完成应用系统一系列的初始化设置。工资信息系统的主程序如下:clear screenclear eventsopen database E:VFP课程设计工资管理系统do form E:VFP课程设计欢迎界面.scxread events连编程序连编应用程序项目本设计

33、的收尾工作。通过连编将项目资源,如视图、查询、表单、报表、菜单、类、过程这些包含于项目管理器中的文件信息结合在一起,生成一个扩展名为salary.exe可执行文件,或扩展名为.app的应用程序。连编程序之前,要进行设置主文件、确定包含或排除文件、设置项目信息等操作。完成这些操作后,运行主程序,当主程序没有错误后,即可连编项目。第六章 小 结随着我国成功加入WTO及信息化浪潮的日益临近,企业在激烈的市场竞争环境下的求得生存,就必须有效地利用人才、时间、信息结合的优势。因此,如何使企业及时掌握本企业人才的各种信息、第一时间处理好随时变化的工资管理问题,建立一套符合企业实际的工资管理系统就显得尤为重

34、要。在本项目的软件开发的过程中,我全面实践一个面向数据库的应用系统的开发过程,学习了很多有关的知识。这样的项目对我学过的数据结构,程序设计,数据库,软件工程等课程是一个综合性很高的实践。一些以前没有学得很杂实的课程的内容,由于需要在实践中运用,刚开始我也感到很头痛。但回过头再去看有关的教科书,经过一段时间的钻研,对与这些知识点的相关的背景,概念和解决方案理解得更透彻了,学习起来也越来越有兴趣,越来越轻松。另外我还充分体会了从事软件开发工作需要特别严谨认真的态度和作风,一点都马虎不得。每一个细微的细节都必须十分的注意,如果不认真思考决策,就会出现或大或小的错误,如果早期的错误隐藏下来,对后面的工

35、作影响就会很大,甚至有时要推倒很多前面做的工作重来。有时候,我自己觉得我写的程序非常的正确,但是就是编译通不过,在查找错误的过程中,面临着否认自己的过程,非常的痛苦,而且由于自己的经验及各方面的能力的不足,所以进展的速度非常的缓慢,往往几天的时间还没有一点进展。这时候,我一般是先自己通过书本,手册和资料找解决办法,实在没辙了才向专家请教。尽管向专家请教解决问题比较快,自己钻研花的时间较多,但我强迫自己独立的思考对我的学习提高帮助非常大。在开始编写程序的时候,我看到别人的软件功能非常的详细,而且界面非常的漂亮,总希望自己的软件也非常的完善,但是,经过二个月的学习,发现编一个优秀的软件决不是一蹴而

36、就的事情,需要长时间的积累和经验。我认清自己的能力后,我就特别注意在工作的过程中不贪图大而全,而是根据自己的能力,制定适当的目标。在反反复复的学习及不耻下问之下,我的辛勤努力有了回报,终于做出了一个简单的软件,虽然这个软件的功能非常的简单,而且我想,在实际的运用中,还有些不足。因为工资的内容非常的丰富,我涉及到的仅仅是工资管理的一部分简单内容,离实际的客户需求肯定还有一定的差距。例如工资管理和人事管理,考勤管理以及财务帐表的关联考虑得还不完善。最好是这几部分之间的数据可以相互利用转化,不需要重复的输入有关的数据。针对工资管理,还应该建立一个有普遍意义的模型,这样对用户来说,就比较容易通过修改有

37、关管理制度来适应我们开发的软件。由于我的知识浅薄,经验不足及阅历颇浅,因此,在该系统的设计方面还有很多不足,比如功能过少,界面不够醒目等问题,我会在工作的使用过程中,根据工作的具体要求不断的修改,完善,争取使该系统慢慢趋向完美。在本系统的设计过程和论文编写过程中,很多老师、同事和朋友都给予了我许多无私的帮助,尤其是我的导师给我的论文提出了很多宝贵的修改意见,在这里,我向这些无私帮助我的人表示衷心的感谢。参考文献:1孙春来 韩正清等 Visual FoxPro 6.0中文版编程基础与范例 电子工业出版社 出版日期:2001-1-12知寒工作室 中文Visual FoxPro 6简明案例教程机械工

38、业出版社 出版日期:1999-4-13徐建平 赵永 Visual FoxPro 6基础教程 机械工业出版社出版日期:2000-5-14张鲁 Visual FoxPro 6.0编程技巧与实例分析 水利水电出版社 出版日期:1999-10-15张磊等 Visual FoxPro 6使用详解 机械工业出版社 出版日期:1999-7-1 6康耀红 黄健青等 Visual FoxPro 6.0 数据库设计北京大学出版社 出版日期:2002-2-17郑刚 Visual FoxPro 6.0 实效编程百例 人民邮电出版社 出版日期:2002-7-18周兰文 Visual FoxPro 6中文版与上机指导清华

39、大学出版社 出版日期:19999李加福 Visual FoxPro 6.0中文版入门与提高清华大学出版社 出版日期:2002-7-110陈明 Visual FoxPro 程序设计 清华大学出版社 出版日期:2002-4-1 11刘鹏 李冬梅 高燕 Visual FoxPro 6.0全攻略宝典水利水电出版社 出版日期:2000-6-112章立民 Visual FoxPro6.X中文版程序设计-基础加强篇 中国铁道出版社 出版日期:1999-10-113郑阿奇 Visual FoxPro实用教程电子工业出版社 出版日期:2001-4-1 14史济民 汤观全 Visual FoxPro及其应用系统开发清华大学出版社 出版日期:2000-7-115王国芳 郭金泉 段小勇 Visual FoxPro开发实践指南 中国铁道出版社 出版日期:1999-3-120

展开阅读全文
相似文档                                   自信AI助手自信AI助手
猜你喜欢                                   自信AI导航自信AI导航
搜索标签

当前位置:首页 > 学术论文 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服