tsy全套毕业设计VFP工资管理系统论文.docx
《tsy全套毕业设计VFP工资管理系统论文.docx》由会员分享,可在线阅读,更多相关《tsy全套毕业设计VFP工资管理系统论文.docx(18页珍藏版)》请在冰豆网上搜索。
tsy全套毕业设计VFP工资管理系统论文
前言---------------------------------1
1系统介绍----------------------------2
1.1工资管理系统的课题来源---------------2
1.2系统需求分析-------------------------7
2系统总体设计---------------------------10
2.1系统的总体设计思想------------------10
2.2设计思想构图------------------------12
3系统详细设计---------------------------21
3.1查询模块-----------------------------21
3.2显示模块-----------------------------22
3.3计算模块-----------------------------24
3.4打印模块-----------------------------26
结束语------------------------------------30
参考文献----------------------------30
前言
现代科学的发展,使计算机进入了几乎一切领域,计算机已经是家喻户晓、无人不知了。
从科学研究到工农业生产,从企业生产管理到家庭生活,各行各业都广泛地使用着计算机。
我研究的课题是工资管理系统,本系统概述了工资管理的需求、整体结构、基本功能和数据库结构。
内容包括:
对普通工资管理业务中存在的一些问题的分析,对工资的数据进行查询、统计、报表打印等基本功能的分析设计和实现。
重点介绍了工资管理信息系统中数据查询统计模块的分析和设计以及如何利用面向对象的程序设计语言VisualFoxpro6.0实现数据的查询、统计、显示、报表打印等基本功能。
本系统的开发基本解决了以往工资管理中存在的需要人工管理,进行人工统计,对工资的统计和查询都很单一、不能综合处理业务、工作效率低等问题。
1系统介绍
1.1工资管理系统的课题来源
管理信息系统简称MIS是一个计算机的数据处理过程的系统。
它是一个机构为了支持决策及其它必需的管理功能提供及时有效的信息而开发的,并且可按需要把人工操作过程结合在一起。
本课题,工资管理信息系统就是MIS的一种。
工资管理信息系统的开发目标是:
克服现在工资管理中存在的人工管理,统计与查询单一、管理效率低下等问题;能科学有效的管理工资,方便地查询和统计人员、工资等情况,对所需要的数据以表格形式显示,以报表形式打印,并为将来进一步扩充和发展工资管理系统奠定基础。
1.1.1工资管理系统的主要功能
工资,是企业经营活动中重要的组成部分,工资管理的准确性、稳定性关系到企业的生产顺畅、职工劳动积极性。
工资管理系统的主要任务是用计算机对各种工资信息进行日常的管理,如查询、修改、增加、删除以及存储打印等,迅速准确地完成各种工资信息的统计计算和汇总工作,快速打印出工资报表。
针对系统服务对象的具体要求,设计了本工资管理系统,本工资管理系统主要有以下几大功能:
(1)对单位人员的变动进行处理。
一个单位的职工不会是一成不变的,总是在不断地变化:
有调出、有调入、也有职工在本单位内部调动。
因此,设计时应考虑到这些情况。
(2)对职工工资进行修改、计算。
可以对职工的工资档案进行个别、部分和批量修改,同时,能对各职工的工资进行计算,即计算应发金额、应扣金额及实发金额等。
(3)查询统计功能。
要求既可以单项查询,比如查看某个职工的工资情况,也可以以多项查询,比如某部门工资数在某一范围的职工的工资情况等。
(4)报表打印功能。
每月发工资时,要求能够打印本月的工资表、随工资发给每个职工的工资条以及工资汇总表。
1.1.2工资管理系统方法概要
本系统是采用面向对象的程序设计思想进行编制的,整个系统由若干个表单、类、报表以及一个主菜单组成,由项目管理品统一管理全部程序的编写和调试。
用户可通过主菜单或总表单调用系统的各项功能。
面向对象程序设计不再是单纯的从代码的第一行一直编到最后一行,而是考虑如何创建类和对象,利用类和对象来简化程序设计,并提供代码的封装和可重用性,便于程序的维护与扩展。
所谓的对象是一种抽象的名称,用来对应现实世界存在的“东西”。
一个窗口、一个按钮、一个菜单都可视为一个对象,而按钮对象、菜单对象又会出现在窗口对象中,因此按钮对象、菜单对象便是窗口的组件之一。
对象内部的数据是不能随意更改的,必须由外部向其传递信息,再由对象按其方法加以处理。
用户无需知道其任何细节,操作是封闭的,对象之间只能通过函数调用相互通信。
类可视为一个产品模具、一个模块。
在面向对象程序设计中,类是对象的原型,是对象的制作器。
类的概念是面向对象程序设计最重要的特征。
所谓类,是指由数据结构及其相关操作所形成的集合,描述该类任一对象的共同的行为特征,是对一组性质相同的对象的程序描述,概括了对象的共同性质和数据。
面向对象程序设计的核心是类的设计。
例如:
可以定义一个“工资查询表单”类,该类中可以定义查询的姓名、年龄、工资等等信息,则以此类为原型可以设计出众多的“工资查询表”类的对象实例,这些实体都具有类中的定义的特征。
设计的工资管理系统也是建立在一系列类基础之上的,其编程的思想是:
先根据一定的需要创建一系列的子类或直接调用VFP提供的基类,编制程序时,由这些类派生出相应的对象,所派生出的对象继承了其交类所有的功能,而且具有很好的封装性,这样就可利用派生出的对象像搭积木一样来设计自己的程序。
打个比方,就比如要制造一台机器,首先要制造各种零件的模具,然后用制造好的模具生产出所需的零件,所有这些做完后,剩下的就只是如何把这些零件组装起来,这样一台机器就很容易制造出来了。
实际编程也是如此,每个表单都是由一定数量的对象按某种方式组合在一起的,程序编制的核心是类的设计。
1.2系统需求分析
需求分析是系统开发的第一步,目的是确定用户对系统的需求。
按照对数据进行管理的不同方式,计算机应系统可以区分为基于普通文件的应用系统和基于数据库的应用系统两大类。
所谓数据库应用系统,就是对后一类系统的简称。
在一切计算机中,成批的数据总是用文件来存储的,高级语言和数据库语言都能向用户程序提供数据文件。
由上述分析可知工资管理信息系统应具有如下功能:
(1)系统管理
对数据库进行初始化操作,对数据库以编号进行索引。
(2)数据管理
对工资数据进行修改、删除、新建、保存,对工资数据单个字段进行全部替换。
(3)查询
通过直观、灵活、方便的查询形式对工资数据进行复核查询,并把查询和检索的结果以表格形式直观地显示,同时对查询和检索的结果进行指定的替换和输出。
(4)报表打印
对工资数据表格的形式进行打印输出。
(5)计算
对工资各项数据进行汇总计算。
1.2.1系统开发语言及工具
微软公司发布的中文版VisualFoxpro6.0是运行于Windows95和WindowsNT平台的32位数据库开发系统,它充分发挥了32位微处理器强大的32位数据处理性能。
VisualFoxpro6.0继承了VisualFoxpro3.0/5.0的所有功能,并进一步强化了数据库引擎、设计界面、客户/服务器结构,面向对象编程,提供多种可视化编程工具,支持最新的Internet技术、www数据库设计及
ActiveX等。
新引入的网络图像文件格式GIF与JPEG增强了应用程序的感染力与形象性。
其简单易用的程序设计环境、强大的功能、丰富的控件和向导、极其友好的图形用户界面、简单的数据存取方式,深受广大开发人员的喜爱。
它满足问题分析和决策的需要。
下面对其与本系统开发相关的功能加以简单介绍:
(1)建立数据库:
菜单中新建数据库选项,按提示操作
(2)建立表、字段、索引:
打开数据库,新建按钮,选择表向导,按提示操作。
(3)创建用户界面:
窗体的设计、菜单的设计、工具栏的使用、对话框的使用、帮助系统的设计。
具体操作参照参考书。
(4)基本控件:
文本框、命令按钮、标签、复选框、组合框、框架、等等。
具体使用方法参照参考书。
(5)调试及错误处理功能:
能捕获错误并按自己的要求进行相应的处理。
具体的使用方法参照参考书。
(6)数据库访问:
向数据环境添加数据库,对数据库中的记录进行增加、删除、修改、查询的操作。
具体使用方法参照参考书。
(7)数据报表设计器:
把数据库中的数据生成报表预览。
操作过程:
先把数据库添加到数据环境中,再用报表控件生成报表。
具体操作参照参考书。
1.2.2系统开发环境配置
(1)软件配置:
Windows98以上
(2)硬件配置:
PC486/8MB内存以上各档微机及兼
容机、VGA彩色显示器。
推荐使用586/16MB或以上各档微机及兼容机,以加快系统分析速度。
2系统总体设计
2.1系统的总体设计思想
针对本工资管理系统的具体要求,在设计时把整个系统划分为以下几个模块:
(1)初始化模块
(2)数据管理模块
(3)查询模块
(4)打印模块
(5)计算模块
由于采用了模块化设计思想,大大提高了设计的效
率,而且最大限度地减少不必要的错误。
在实际操作中,本系统的基本设计思想是:
保持一个基本库不变,作为原始库;每月由原始库生成一个当月库,填写或更改某些项目时,在当月库中修改;数据更改完毕后,将结果保存。
为实现以上设计思想,在每月开始变更前,首先初始化数据库,将一些变动项清为零,而基准则保持不变;之后的种种修改、本工资管理系统要求数据库保持相对稳定、无较大的变动,但是每月需要填写的变动项又必须经常变化,针对本系统的这些特点,因此在设计时,应尽量保持原始数据库不变,在每月进行日常的数据操作前,都要对工资数据进行初始化处理,由原始数据库生成一个月过程库,以后对工资档案进行的数据操作,如:
修改、添加、删除、查询等,都要要当月过程库中进行,数据更改完毕后,将结果作为一个结果库,作为每月留档用的数据库。
由于采用了这种过程库的办法因而避免了用户直接对原始数据库进行操作,从而提高数据库的安全性。
2.2设计思想框图
2.2.1数据流图
工资管理信息系统的数据流图如图所示
工资系统数据流图
2.2.2系统结构框图
在设计时,按照实际的要求把本系统划分为初始化、数据管理、查询、打印、计算、退出等相互独立的功能模块,以实现对工资系统的控制,其系统结构框图如图所示。
软件总体功能图
2.2.3数据库字典分析
根据工资业务发展的面要,决定建立一个以数据库为基础的管理系统,目标系统取名为工资管理系统。
需在此系统中建立如下两个数据库:
1、工资表基本情况库:
编号
字段名
类型
宽度
备注
1
编号
数值型
4
2
姓名
字符型
8
3
部门
字符型
10
4
部门编号
数值型
2
5
工作天数
数值型
4
6
标准工资
数值型
6
7
年功工资
数值型
3
8
加班天数
数值型
2
9
加班工资
数值型
5
10
病假天数
数值型
2
11
事假天数
数值型
2
12
扣款工资
数值型
6
编号
字段名
类型
宽度
备注
13
交通费
数值型
2
14
洗理费
数值型
2
15
副食补贴
数值型
7
16
房补
数值型
7
17
应领工资
数值型
8
18
养老保险
数值型
6
19
医疗保险
数值型
6
20
个人所得税
数值型
6
21
净领工资
数值型
8
其中:
加班工资=标准工资/工作天数(20.92天)×加班天数
扣款工资=标准工资/工作天数×病假天数×30%+标准工资/工作天数×事假天数
应领工资=标准工资+年功工资+加班工资+交通费+洗理费+副食补贴+房补-扣款工资
养老保险=应领工资×8%
医疗保险=应领工资×1%
个人所得税=0——9000
900——14005%
1400——290010%
>290015%
净领工资=应领工资-养老保险-医疗保险-个人所得税
2、工资表汇总库:
编号
字段名
类型
宽度
备注
1
标准工资总额
数值型
8
2
年功工资总额
数值型
6
3
加班工资总额
数值型
6
4
交通费总额
数值型
6
5
洗理费总额
数值型
6
6
副食补贴总额
数值型
6
7
房补总额
数值型
6
8
扣款工资总额
数值型
8
9
应领工资总额
数值型
8
10
医疗保险总额
数值型
6
11
养老保险总额
数值型
6
12
个人所得税总额
数值型
6
13
净领工资总额
数值型
8
3系统详细设计
3.1查询模块
1功能:
通过条件设置对数据进行查询显示在表格中。
2实现:
在数据环境中,添加工资信息表。
把组合框rowsoucetype属性设为8结构,组合框中显示表中字段、操作符,文本框用于添加替换表达式,把各控件的值加入字符变量中,用宏代换执行,cond=bo1.value+bo2.value+thisform.creatcond(bo1.value,thisform.text1.value)、cond=cond+bo3.value+bo4.value+thisform.creatcond(bo3.value,thisform.text2.value)、setfilterto&cond。
其中setfilterto用于对数据库进行过滤以实现查询。
3窗体显示:
3.2显示模块
一显示全部查询结果
1功能:
显示全部查询结果
2实现:
在表单中添加grid控件,应以实现记录查询结果显示,在数据环境中,添加工资信息表格银行报盘表,对表单中个文本框与工资信息表中各相对应字段在grid控件的recordsource属性中进行绑定。
在column子控件的control属性中定义字段个数。
在column子控件的controlsoure属性中实现与各字段绑定。
3窗体显示:
二单个记录查询结果显示
1功能:
对查询结果进行单个记录显示。
2实现:
在数据环境中,添加工资信息表,对表单中个文本框与工资信息表中各相对应字段在文本框controlsource属性中进行绑定。
使用gotop、skip、gobott语句进行上下记录翻转。
3窗体显示:
3.3计算模块
一统计查询结果
1功能:
对查询结果进行统计,统计的内容为工资信息。
2实现:
在数据环境中,添加工资信息表格银行报盘表,对表单中个文本框与工资信息表中各相对应字段在文本框controlsource属性中进行绑定。
用count、sam进行汇总计算。
3窗体显示:
二汇总计算
1功能:
对工资信息进行汇总计算。
2实现:
在数据环境中,添加工资信息表格银行报盘表,对表单中个文本框与工资信息表中各相对应字段在文本框controlsource属性中进行绑定。
用count、sam进行汇总计算。
3窗体显示:
3.4打印模块
一明细打印
1功能:
对工资信息进行明细打印。
2实现:
利用VF的报表生成器中报表控件来编辑报表。
3窗体显示:
4报表显示
二汇总打印
1功能:
对工资信息进行汇总打印。
2实现:
利用VF的报表生成器中报表控件来编辑报表。
如下图:
3窗体显示:
4报表显示
结束语
通过对工资管理信息系统这个课题的开发,我既提高了系统设计和软件编码的能力,自身各方面素质也得到提高。
首先,在系统开发过程中,贯穿软件工程的概念是对所学知识的理解和运用,更使我意识到软件工程的重要性。
其次,在开发过程中,由于工作需要,我熟悉了VF编程,对数据库的概念和使用有了更深一层的理解。
同时掌握了其它常用工具软件的使用。
所有这些充实了我的知识结构、扩大了知识面、增强了分析和解决问题的能力,也提高了自学能力,为今后的工作打了基础。
参考文献
1张树兵著VisualBasic6.0中文版入门与提高北京:
清华大学出版社1999.4
2李春葆编著VisualFoxpro6.0高级编程科学出版社2001.3