0652赵鹏飞30号.docx

上传人:b****6 文档编号:7053678 上传时间:2023-01-16 格式:DOCX 页数:27 大小:187.35KB
下载 相关 举报
0652赵鹏飞30号.docx_第1页
第1页 / 共27页
0652赵鹏飞30号.docx_第2页
第2页 / 共27页
0652赵鹏飞30号.docx_第3页
第3页 / 共27页
0652赵鹏飞30号.docx_第4页
第4页 / 共27页
0652赵鹏飞30号.docx_第5页
第5页 / 共27页
点击查看更多>>
下载资源
资源描述

0652赵鹏飞30号.docx

《0652赵鹏飞30号.docx》由会员分享,可在线阅读,更多相关《0652赵鹏飞30号.docx(27页珍藏版)》请在冰豆网上搜索。

0652赵鹏飞30号.docx

0652赵鹏飞30号

 

南京化工职业技术学院

毕业设计(论文)

 

论文题目:

企业工资管理系统

论文题目:

Theadministrativesystemofsalary

 

作者姓名:

赵鹏飞

所在系部:

信息技术系

班级名称:

计算机应用与商务英语0652

指导教师:

2010年5月

 

毕业设计(论文)任务书

设计(论文)题目:

企业工资管理系统(VC/C++)

指导教师:

职称:

类别:

毕业设计

1、设计(论文)的主要任务

此项毕业设计要求利用VC(C++)和Access数据库开发企业工资管理系统。

要求学生给出详细的设计过程(包括体系结构图、数据设计ER图,从开发环境及需求,到结构的设计,具体到每一个功能模块、关键程序进行说明),从而完成一次完整的设计过程。

2、设计(论文)的主要内容

此项毕业设计要求开发一个企业工资管理系统,该系统应用具备以下基本功能。

1、新用户注册与登陆

用户注册后必须经过验证才可正式进入该系统。

2、基本数据

此项功能包括职工基本信息、工资信息。

3、信息管理

实现对以上信息数据的录入、添加、更新和删除。

4、成绩查询

实现对以上信息数据的查询。

5、统计处理

对职工人数、职工的职称、工龄、工资的各组成项等进行统计处理。

6.报表打印

实现对查询和统计的结果以报表的格式进行输出。

3、设计(论文)的基本要求

1、论文格式要符合规范。

2、提供完整的源程序。

2、至少提供6篇参考文献(书籍、期刊、网址等)

4、主要参考文献

1、高俊文 主编,《C/C++程序设计》,北京:

人民邮电出版社,2005-9

2、沈大林等主编,《VisualC++6.0程序设计案例教程》,北京:

电子工业出版社,2005-10

3、唐彬等编著,《VisualC++案例开发集锦(含光盘)》,北京:

电子工业出版社,2005-8

5、毕业设计(论文)时间安排

第一周:

资料收集整理。

第二周:

程序设计,规划体系结构图、数据设计ER图。

第三周:

程序编写,调试运行。

第四周:

论文编写、完善修改。

备注:

毕业设计提交:

1.系统设计过程,包括论文电子稿。

2.经调试过的软件代码。

3.答辩时每人还应准备15张左右页面的幻灯片。

注:

1、此表一式三份,系部、指导教师、学生各一份。

2、类别是指毕业论文或毕业设计,类型指应用型、理论研究型和其他。

 

目录

第一章概述6

1.1系统开发步骤6

1.2员工工资管理系统的设计概况6

1.3开发员工工资管理系统的意义7

第二章系统分析8

2.1对本系统的分析8

第三章数据库分析和设计9

3.1数据库需求分析9

3.2数据库设计9

3.3系统结构流程图设计10

第四章系统的具体设计与实现12

4.1新用户注册与登入12

4.2基本数据13

4.3信息管理16

4.5统计处理24

4.6报表打印25

部分程序26

致谢信30

参考文献31

 

摘 要

 

员工工资管理系统是典型的信息管理系统(MIS),其程序主要包括后台数据库的建立和维护以及前端应用程序的两个方面:

对于前者要求建立数据一致性和完整性强,数据安全性好的数据库;而对于后者则要求应用程序功能完备,易使用等特点。

工资管理是企业的一项重要的数据资源,工资管理也是企业的一项常规性的重要工作,而长期以来,工资管理都是依赖人工进行的,面对如此众多的工资信息,其工作量可想而知,不仅仅浪费了大量的人力物力,而且由于人工管理存在着大量的不可控因素,造成了工资管理的某些不规范。

 

工资管理系统实现如下信息的管理:

员工信息管理 用于员工信息的建立和修改以及查询;

工资管理 用于各个员工的工资查询;

 

系统开发采用Microsoft公司的VisualFoxPro,利用其强大的可视化界面功能及对数据库的支持,先构造一个原型,逐步增加功能,最终满足需求。

系统中大量采用SQL查询语句,界面友好,功能较强。

不足的地方是当数据访问量大时,将致使性能的下降,且不利于数据的有效共享,在以后的改进中应考虑采用SQLSERVER作为数据库,解决访问速度及数据共享的问题。

该系统性能力求易于使用,具有较高的扩展性和可维护性。

 

    关键字:

关系数据库  VisualFoxPro    SQL 员工工资管理系统 系统开发 信息系统

 

Summary

Staffsalarymanagementsystemisatypicalinformationmanagementsystem(MIS),theprogramincludestheestablishmentandmaintenanceofbackgrounddatabaseandfront-endapplicationsontwoaspects:

theformercallsfortheestablishmentofdataconsistencyandintegrityofthestrongsecurityofdatadatabases;whilethelatterrequirestheapplicationfunctions,easytousefeatures.Wagemanagementisanimportantdataresource,payrollmanagementisaroutinebusinessimportantwork,butalongtime,wagemanagementiscarriedoutonartificialfaceofsomanywageinformation,theworkloadcanbelikewithknowledge,

Notonlywastealotofmanpowerandresources,andbecausetherearealotofmanualmanagementofuncontrollablefactors,resultinginthemanagementofsomenon-standardwages.

Salarymanagementsysteminformationmanagementtoachievethefollowing:

Informationmanagementforstafftoestablishandmodifyemployeeinformationandqueries;

Wagemanagementforallstaffwagesinquiries;

SystemdevelopmentusingMicrosoft'sVisualFoxPro,usingitspowerfulvisualinterfacefunctionsanddatabasesupport,firstconstructaprototypeandgraduallyincreasethefunctionality,thefinaldemand.System,extensiveuseofSQLqueries,user-friendly,morepowerful.Deficiencieswhenthedataaccessisheavy,willcauseperformancedegradation,andnotconducivetotheeffectivesharingofdata,improvementsinthefutureshouldconsiderusingSQLSERVERasthedatabasetoaddresstheaccessspeedanddatasharingissues.Seekstoeaseuseofthesystemperformance,highscalabilityandmaintainability.

Keywords:

VisualFoxProSQLrelationaldatabasemanagementsystemforsystemdevelopmentstaffsalaryinformationsystem

 

第一章概述

1.1系统开发步骤

一、需求分析

二、数据来源

三、系统的具体功能

四、系统结构流程图

五、数据库的设计

六、应用程序的设计

1.2员工工资管理系统的设计概况

员工信息管理功能:

以分类形式录入员工的基本基本信息存放在员工基本数据库文件中。

并同时具有对员工基本数据库文件进行查询修改和删除记录功能。

本模块又分为三个子模块:

(1)员工信息录入

(2)员工信息查询

(3)员工信息编辑(修改/删除)

其中,员工信息查询不需登录即可使用,信息录入和修改/删除模块则需要先登录后才能使用。

2.员工工资管理模块主要是对员工工资进行管理。

本模块又分为三个子模块:

(1)员工工资录入

(2)员工工资查询

(3)员工工资编辑(修改/删除)

其中,员工工资查询不需登录即可使用,其他模块则需要先登录后才能使用。

3.用户管理模块主要对使用本系统的用户进行如下管理:

(1)添加新用户

(2)对已有的用户进行更改用户名、密码和权限(管理员或普通用户)等操作

(3)删除用户

本模块只有管理员才能使用,普通用户不能进入。

1.3开发员工工资管理系统的意义

员工工资管理是一件复杂而细致的工作,每年都有新员工、退休的员工、请假的员工、自离的员工等事件发生;平时还有员工职务的调整,由于这些工作的杂乱而不确定性,使得员工工资管理工作变得复杂且不易做到准确无误。

按工作常规和设计要求,整个软件分为以下模块:

信息输入、信息修改、信息删除、信息查询、用户查询、数据库管理、用户创建、用户修改等部分。

它有以下几个好处:

1、可使员工工资管理工作准确高效;

2、克服了手工管理中的许多困难,提高了速度,结省了大量时间;

3、可快速查询有关员工工资的的各种所需信息;

4、只需一到两名管理人员即可操作系统,节省了大量的人力;

5、软件系统可根据不同的需要随时进行升级,从而延长了软件的使用寿命;

6、数据库具有存储量大,保密性好、运行成本低等特点。

此外,为将来公司建立公司网考虑,系统采用客户机/服务器体系结构设计,以后员工工资管理信息系统接入网络时,数据库可直接进行移植,勿需作大量的修改工作。

 

第二章

系统分析

2.1对本系统的分析

21世纪以来,人类经济高速发展,发生了日新月异的变化,特别是计算机的应用及普及到经济和社会生活的各个领域。

使原本的旧的管理方法越来越不适应现在社会的发展。

许多人还停留在以前的手工操作。

这大大地阻碍了人类经济的发展。

为了适应现代社会人们高度强烈的时间观念,员工工资管理系统软件为企业办公室带来了极大的方便。

这次我们是用VF来实现的,大家只需按系统要求输入即可操作。

系统各功能模块的分析

此项毕业设计要求开发一个企业工资管理系统,该系统应用具备以下基本功能。

1,新用户注册与登陆

用户注册后必须经过验证才可正式进入该系统。

2.基本数据

此项功能包括职工基本信息、工资信息。

3.信息管理

实现对以上信息数据的录入、添加、更新和删除。

4.工资查询

实现对以上信息数据的查询。

5.统计处理

对职工人数、职工的职称、工龄、工资的各组成项等进行统计处理。

6.报表打印

实现对查询和统计的结果以报表的格式进行输出。

 

第三章数据库分析和设计

3.1数据库设计

在系统设计过程中,首先要建立的就是数据库。

本数据库采用VisualFoxPro6.0来构造,共使用了2个表,它们分别是用户信息表,员工信息表和工资管理表。

1.用户信息表(UserInfo):

字段名

数据类型

宽度

小数位数

用户名

字符型

10

用户密码

字符型

10

姓名

字符型

10

使用权限

字符型

10

2.员工信息表(StuInfo):

字段名

数据类型

宽度

小数位数

工号

字符型

10

姓名

字符型

10

性别

字符型

2

籍贯

字符型

10

出生日期

日期/时间

10

民族

字符型

10

入厂时间

字符型

10

个人简介

字符型

100

家庭住址

字符型

50

 

3.工资信息表(Lesson):

字段名

数据类型

宽度

小数位数

工号

字符型

10

姓名

字符型

20

工资

字符型

10

3.2系统结构流程图设计

 

 

E-R图

 

第四章系统的具体设计与实现

4.1新用户注册与登入

登入界面设计主要实现的用户的登入功能,要求用户在登入时使用用户名和密码,本系统的用户名为“admin”密码为”111111”

具体操作如下:

打开或新建一个项目,早项目管理器中,选择“表单”页项,选择“新建”按钮,打开新建对话框。

选择吧“表单”并选择新建文件按钮

从“文件”菜单中选择“新建”命令。

同样打开“新建”对话框,然后选择表单,

并选择新建文件按钮

在命令窗口内键入“createrform”命令

设计好的表单文件呗保存在表单的事件当中,每一个表单由两个文件组成,一个是以.SCX为扩展名打开该表单文件,其实,表单文件是一个标准的数据表。

确定按钮的代码:

i=i+1

Ifthisform.text1.value=”admin”andthisform.text2.value=”111111

Thisform.release

Ifi<4

Messagebox(“密码输入错误,请重新输入!

”)

Thisform.text2.value=“”

Thisform.texr2.setfocus

Else

Messagebox(“密码输入错误三次,系统关闭”)

Thisform.release

Endif

Endif

退出按钮click事件代码:

Ask=messagebox(“确实要退出系统吗?

”,4+32+256,“员工工资管理系统登陆”)

Ifask=6

Quit

Else

Endif

4.2基本数据

基本数据包括员工信息浏览表单,该表单主要用来浏览员工基本信息。

 

4.3信息管理

main.scx的主要代码;

1.Command1(员工信息查询按钮)的click代码:

doformchaxun.scx

thisform.release

mand2(信息修改/添加按钮)的click代码:

doformxiugai.scx

thisform.release

mand3(信息的删除按钮)的click代码:

doformdelete.scx

thisform.release

4.command4(退出按钮)的click代码:

thisform.release

doformdenglu2.scx

员工的信息

系统的查询页面chaxun.scx的主要代码:

a.在form1的init事件

 publica,q

b.确定查找的按钮的代码:

privatet

t=alltrim(thisform.text1.value)

   docase

   casethisform.optiongroup1.value=1

      select*fromstudent_infowhere工号="&t"intocursorq

         counttoa

   casethisform.optiongroup1.value=2

      select*fromstudent_infowhere姓名="&t"intocursorq

      counttoa

   casethisform.optiongroup1.value=3

      select*fromstudent_infowhere性别="&t"intocursorq

         counttoa

   casethisform.optiongroup1.value=4

      select*fromstudent_infowhere年龄="&t"intocursorq

          counttoa

   casethisform.optiongroup1.value=5

      select*fromstudent_infowhere家庭住址="&t"intocursorq

        counttoa

  endcase

 ifa>0

  thisform.grdStudent_info.columncount=-1

 thisform.grdStudent_info.recordsource=q

 else

             messagebox('对不起,没有找到符合你的要求的记录!

')

endif

c.退出按钮的

查询的过程中,如果数据较多,需要用户等待时,查询系统中应有进度条加以显示,才能使系统更加具有规范性。

具体实现方法如下:

1.选择VFP的系统选单“工具”中“选项”条,弹出“选项”窗口,在窗口中点击“ActiveX控件”栏,添加任务进度栏控件MicrosoftProgressBarControlVersion5.0(SP2)至ActiveX工具箱中。

2.选定表单控件工具栏中“ActiveX控件”,添加控件MicrosoftProgressBarControlVersion6.0至查询的表单Form1中,并设置其属性Max值为1000。

3.将下列代码添加到数据查询程序代码之后:

fori=1to1000

forj=1to2000

j=j+1

endfor

thisform.olecontrol1.value=i

i=i+1

endfor

messagebox('数据查询完毕,OK!

',0+64)

thisform.release

clearevents

  通过这样的设置,在查询时如果时间较长,查询进度条会为用户显示查询任务的运行情况,应用宏命令实现组合查询。

在组合查询中,需要查询的组合项通常很多,如果每项都使用不同的变量,编程会非常烦琐。

笔者使用宏命令轻松实现查询组合条件,具体实现的方法是在查询按钮里加入如下代码:

LOCALcFilter,nCnt,cCondition

FORnCnt=1toTHISFORM.ControlCount

IFTYPE('THISFORM.Controls(nCnt).controlSource')<>"U"THEN

IF!

EMPTY(THISFORM.Controls(nCnt).ControlSource)AND;

TYPE('THISFORM.Controls(nCnt).value')<>"U"THENcCondition=THIS.Parent.parseCondition(THISFORM.Controls(nCnt).value,THISFORM.Controls(nCnt).controlSource)

IF!

EMPTY(cCondition)THEN

cFilter=cFilter+"AND"cCondition

ENDIF

ENDIF

ENDIF

ENDFOR

通过这样的设置,虽然有多个查询条件,但查询的组合条件为cFilter,以后的应用只要对cFilter进行处理即可

删除查询表中的空记录

使用类查询(_dataquery.vcx)时,会在待查询表中的最后自动插入一条空记录,而在实际的GRID表格显示中,我们是不希望将空记录显示出来的。

下面是解决此问题的详细步骤:

1.在主程序或Form对象的Load事件输入以下代码:

  SETDELETEON

  2.在查询结束代码后输入以下代码:

  Thisform.Refresh    

  &&&&刷新表单

gobottom

  deletenext1   

  &&&&因为当前表被添加了一个空记录,在实际应用中应删除掉

  Thisform.Grid1.Column1.Setfocus

  gotop

 Thisform.grid1.refresh   &&&&删除一条记录后,应及时地刷新GRID表,实现中英文自动切换。

在用VFP6.0开发查询系统时,文本框对象和组合框对象应用得较多,在文本框中进行中英文的输入时,来回切换非常烦琐,所以笔者借助自定义子类,来实现中英文输入的自动切换。

具体实现的步骤如下:

1.点击VFP6系统选单栏“文件→新建→类”,启动“新类”对话框,填入类名为gsTextBox,并设置父类为TextBox,在“存储于”栏处输入存储的位置和名称,按“确定”键进入类设计器画面。

2.新增一个属性,来作为对象是否启动中文输入法的控制码。

通过系统选单栏“类→新建属性...”,启动“新建属性”对话框,设置一些属性,其中可视性设为public。

3.最后设置GotFocus与LostFocus事件过程。

GotfocusEvent事件过程如下:

Ifthischinese=imestatus

(1)&&&&中英文选择,thischinese为逻辑量

       else=imestatus(0)

    Endif

    LostfocusEvent事件过程如下:

    =imestatus(0)

至此,类已经定义完成,以后只要在设计表单时,通过表单控件“工具栏→查看类→添加...”把自定义类加入,并且设置“中英文选择”属性,即可实现中英文输入的自动切换。

实现整条记录突出显示

在用VFP设计一个查询应用系统时,信息的浏览是相当重要的功能之一,通常采用的实现方法是用Grid对象来显示数据信息,但在使用过程中却存在一些不足,就是当使用者在记录之间移动时,只有获得焦点的那条记录的某一字段可以以不同于Grid背景的颜色显示,很不醒目。

笔者利用Grid对象,成功实现了当数据记录移动时,整条记录均用同一种颜色突出显示,即当数据记录移动时,用颜色动态变化显示相对光标所在的位置,设计步骤如下:

先定义一个Grid对象,并设置好其属性,然后在其AfterRowColChange事件过程中添加如下代

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

当前位置:首页 > 幼儿教育 > 幼儿读物

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

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