您的当前位置:首页正文

工资管理系统毕业设计论文

2024-04-04 来源:客趣旅游网
西 北 师 大

继续教育学院

毕业论文(设计)

论文题目: VFP工资管理系统

班 级:

姓 名:

专 业:

指导老师:

二〇一一年十月十三日

目 录

目 录------------------------------------------------------II 摘 要------------------------------------------------------II Abstract ---------------------------------------------------II 一 、绪论---------------------------------------------------1 二、系统的开发环境--------------------------------------------3

2.1 开发平台的选择-----------------------------------------3 2.2 开发工具的选择-----------------------------------------3 三、系统分析-------------------------------------------------4

3.1系统的初步调查-----------------------------------------5 3.2数据库技术的现状与发展----------------------------------5 3.3数据系统的选择原则 ------------------------------------5 3.4系统开发工具的选择-------------------------------------6 3.5系统的可行性分析 --------------------------------------9

3.6系统开发步骤------------------------------------------10

四、系统设计------------------------------------------------10 4.1数据流程图块------------------------------------------11 4.2 业务流程图 -------------------------------------------11 4.3 数据库设计--------------------------------------------11 4.4系统中有关数据库表结构设计 ------------------------------12 五、主要功能模块设计 -----------------------------------------13

5.1 项目的建立-------------------------------------------13 5.2 用户登陆---------------------------------------------14 5.3 系统主菜单设计 ---------------------------------------15 5.4 系统主控表单设计--------------------------------------16 5.5 工资录入表单设计--------------------------------------17 5.6 工资浏览表单设计--------------------------------------18 5.7 工资修改表单设计--------------------------------------18 5.8 工资统计表单设计--------------------------------------24 5.9 工资查找表单设计--------------------------------------25 5.10 工资初始化表单设计-----------------------------------26

5.11 记录打印表单设计 ------------------------------------27 5.12 系统帮助表单设计-------------------------------------28 5.13主程序的设计 -----------------------------------------29 5.14程序的连编 -------------------------------------------30 六、系统运行与维护 ------------------------------------------30

6.1系统的配置--- -----------------------------------------30 6.2系统的运行 -------------------------------------------30 6.3系统的维护 -------------------------------------------31 总结 -------------------------------------------------------31 参考文献 ---------------------------------------------------32

摘 要

随着经济的发展,各高校正在逐步走向现代化,在这种情况下靠人工来处理员工的工资会有很多不便。因此,需要制定一个工资管理系统。建设一个科学高效的信息管理系统是解决这一问题的必由之路。学校内部财务管理是该学校运用现代化技术创造更多更高的管理水平的主要因素之一。工资管理作为高校内部的一种财务管理也是如此,由于高校职工人数较多,每一位职工的具体实际情况也不尽相同,各项工资条款的发放,如果没有一个完整的管理系统来进行管理,那么势必会给管理人员带来种种麻烦,因此类似工资管理系统之类的财务软件的开发势在必行。

工资管理系统是典型的信息管理系统,其主要开发包括后台数据库的建立和维护,以及前端应用程序的开发两个方面。对于前者要求建立起数据库一致性和完整性强,数据安全性好的库。而后者则要求应用程序功能完备,易使用等特点。因此,本人结合资料管理系统的要求,对Visual Foxpro数据库管理系统,VFP语言原理,VFP数据库技术进行了较深的学习和应用。主要完成对资料管理系统的要求分析,功能模块划分,并由此设计了数据库结构和应用程序。系统运行结果证明,本人所设计的工资管理系统可满足工资管理人员的查询、修改和添加三方面要求。

系统开发采用Microsoft公司的Visual Foxpro 6.0,利用其强大的可视化界面功能及对数据库的支持,先构造一个原型,逐步增加功能,最终满足需求。系统中大量采用SQL查询语句,界面友好,功能较强。不足的地方是当数据访问量大时,将致使性能的下降,且不利于数据的有效共享,在以后改进的中应考虑采用SQL SERVER作为数据库,解决访问速度及数据共享的问题。该系统性能力求易于使用,具有较高的扩展性和可维护性。

关键字:高校;系统;工资管理系统

Abstract

Along with the economical development, various universities are walking gradually with the modernization, gets down the gauge.In this case depends on artificially processes staff's wages to be able to have very many inconvenient.Therefore, needs to formulate a university wages management system management system.Constructs a science highly effective information management system solves this question way that must be taken.The school internal financial control is this school utilization modernization technology creation are more one of higher management level primary factors.The wages management took the university interior one financial control also is so, because the university staff population are many, each staff the actual situation also is different specifically, each wages provision provide, if does not have a complete management system management system to carry on the management, then will be able to give the administrative personnel inevitably to bring all sorts of troubles, therefore similar wages management system management system and so on finance software development imperative

The wages management system management system is the typical information management system, its main development including backstage database establishment and maintenance, as well as front end application procedure development two aspects.Establishes the database uniformity and complete regarding the former request, the data security good storehouse.But the latter requests the application procedure function to be complete, easy to use and so on the characteristics.Therefore, myself unify the material management system management system the request, to Visual the Foxpro database management system, the VFP language principle, the VFP data bank technology has carried on the deep study and the application.Mainly completes to the material management system management system request analysis, the function module division, from this and has designed the database structure and the application procedure.The system movement result proved, myself design the wages management system management system may satisfy the wages administrative personnel's inquiry, revise and increases three aspects to request.

The system development uses Microsoft Corporation Visual Foxpro 6.0, uses its formidable visualization contact surface function and to the database the support, a

structure prototype, gradually increases the function first, finally meets the need.In the system uses the SQL inquiry sentence massively, the contact surface is friendly, the function is strong.The insufficient place is works as when data accessing quantity big, will cause the performance the drop, also will not favor the data effective sharing, will improve in later to be supposed to consider will use SQL SERVER to take the database, the solution visit speed and the data sharing question.This system performance endeavour easy to use, has the high extension and the maintainability.

Keywords:Universities;System;Wag

一、绪论

随着经济的发展,企业正向着大型化、规模化发展,而对大中型企业,员工、职称等跟工资管理有关的信息随之急剧增加。在这种情况下靠人工来处理员工的工资会有很多不便。因此,需要制定一个企业工资管理系统。建设一个科学高效的信息管理系统是解决这一问题的必由之路。高校内部财务管理是该企业运用现代化技术创造更多更高的经济效益的主要因素之一。工资管理作为企业内部的一种财务管理也是如此,由于高校职工人数较多,每一位职工的具体实际情况也不尽相同,各项工资条款的发放,如果没有一个完整的管理系统来进行管理,那么势必会给管理人员带来种种麻烦,因此类似工资管理系统之类的财务软件的开发势在必行。

早期的工资统计和发放都是使用人工方式处理纸质材料,不仅花费财务人员大量的时间且不易保存,往往由于个人的因素抄写不慎或计算疏忽,出现工资发放错误的现象。早期工资管理多采取纸质材料和具有较强的时间限制。基于以上原因,高校工资管理系统使用电脑安全保存、快速计算、全面统计,实现工资管理的系统化、规范化、自动化。企业工资管理系统是典型的信息管理系统(MIS),前台程序开发工具采用微软的VF6.0,后台数据库采用Access数据库。VF6.0是一种面向对象的开发工具,具有组件丰富、语言简单、功能强大的优点。 Access数据库具有与VF6.0无缝连接、操作简单、易于使用的优点。运行结果证明,本高校工资管理系统极大提高了工作效率,节省了人力和物力,最终满足高校财务管理、员工工资发放的需要,同时也成为现代化企业管理的标志

本世纪以来,由于社会生产力的迅速发展和科学技术的突飞猛进,人们进行信息交流的深度和广度不断增加,管理所需要的信息量急剧增长,同时对信息的处理要求及时、准确,这导致了传统的信息处理方法和手段已不能适应现代管理的需要;电子计算机的诞生和在信息处理中的应用,标志着一个崭新时代——“信息时代”的开始,它使学校管理现代化成为可能。

一定意义上说,管理信息系统的产生和发展是建立在电子计算机基础之上的。硬件方面,自1946年第一台电子计算机诞生以来,计算机技术的发展可谓日新月异,从庞大的只能在实验室里供研究使用的计算机到如今能适应不同环境满足不同需求的各种各样的计算机;运算速度从每秒几千次到每秒几百亿次;处理器从焊有上百万个电子管的大的惊人的电子板到只有指甲大小的集成电路;现在计算机在硬件方面的发展已达到了每三个月更新换代一次的惊人速度。软件方面,也已从机器语言、汇编

语言、高级语言发展到现如今的第四代语言——非结构化、面向对象、可视化的语言。

管理信息系统通过对学校当前运行的数据进行处理来获得有关信息,以控制学校的行为;利用过去和现在的数据及相应的模型,对未来的发展进行预测;能从全局目标出发,对学校的管理决策活动予以辅助。从工业发达国家来看,管理信息系统的发展经历了以下几个阶段。

第一阶段:(1953年至1965年)单项数据处理阶段,也称电子数据处理(EDP)阶段。这是电子计算机在管理领域应用的起步阶段。这一阶段,由于当时计算机硬、软件的限制,数据处理的性质只是使用计算机代替人的手工劳动,进行简单的单项数据处理工作,如计算工资、数据统计、报表登记、编制计划等。这个阶段的处理方式主要是集中式的批处理。

第二阶段:(1965年至1970年)综合数据处理阶段,也称事务处理系统(TPS)阶段。这个阶段计算机硬、软件有了很大的发展,出现了多用户的分时系统,计算机开始应用于对某一个管理子系统的控制,并具有一定的反馈功能。如库存管理系统、生产调度系统、资料管理系统等。这个阶段的处理方式已发展为面向终端的联机实时处理。

第三阶段:(1970年至今)管理信息系统(MIS)阶段。这个阶段是在学校中全面的使用计算机把各种管理子系统的功能集中起来,构成了计算机化的全方位的信息系统,即现代管理信息系统。这个阶段的处理方式是在数据库和网络基础上组成分布式处理系统。它的特点是使用数据库和分时处理的计算机网络,并充分利用运筹学等数学方法,实现了硬件、软件和数据资源的共享。

总的说来,计算机技术的发展,其性价比大幅的下降,使得其被大量广泛的使用。针对现实中的各种应用需求,相应的产生很多技术体系、技术标准,如J2EE、。NET,COM/COM+等。这又大大的推动了学校的信息化进程。其影响可以归纳为如下两点:

(1)计算机已经成为我们学习和工作的得力助手:

今天,计算机的价格已经十分低廉,性能却有了长足的进步。它已经被应用于许多领域,计算机之所以如此流行的原因主要有以下几个方面:

首先,计算机可以代替人工进行许多繁杂的劳动; 其次,计算机可以节省许多资源;

第三,计算机可以大大的提高人们的工作效率; 第四,计算机可以使敏感文档更加安全,等等。

(2)开发计算机资料管理系统的意义

当今世界是飞速发展的信息时代,在各行各业中离不开信息处理,这正是计算机被广泛用于管理系统的环境。计算机的最大好处在于利用它能够进行信息管理。使用计算机进行信息管理控制,不仅提高了工作效率,而且大大提高了其安全性。

尤其对于复杂的信息处理,计算机能够充分发挥它的优越性。计算机进行信息管理与信息管理系统的开发密切相关,系统的开发是系统管理的前提。本系统就是为了管理好职工工资信息而设计的。

二、系统的开发环境和维护

2.1 开发平台的选择

考虑到本系统的性能要求,和现有的条件,我们选择了WINDOWSXP中文版作为开发、测试和运行的平台。因为WINDOWS操作系统是目前应用最广的操作系统,它以全新的图形界面,简单快捷的操作方式,支持多媒体功能等特点而成为软件发展的流行趋势,选用它作为开发平台,易于功能的扩展和软件升级。

2.2 开发工具的选择

针对目前世界上流行的大量软件和开发工具,经过认真分析其优缺点,结合学籍器具管理系统的需要和目前的硬件环境,我们选用微软WINDOWS平台下的Visual FoxPRO6.0(简写为VFP6.0)作为软件开发工具。选用该工具有发下几方面的优点:

(1)VFP6.0是目前微机上最优秀的关系型数据库管理系统软件,正如其名称中冠以的“Visual”一样,它采用了可视化、面向对象的程序设计方法,大大简化了应用系统的开发过程,并提高了系统工程的模块化和紧凑性。

(2)VFP6.0版本中提供了大量的诸如“数据库设计器”、“表单设计器”、“菜单设计器”、“报表设计器”等开发设计工具和向导工具(Wizard),使以往费时费力的开发工作变得轻松自如。这些可视化的设计工具免除了开发者编写大量程序代码的

三、系统分析

随着我国国民经济建设的蓬勃发展和具有中国特色的社会主义市场经济体制的迅速完善,各个行业都在积极使用现代化的手段,不断改善服务质量,提高工作效率,这些都在很大程度上给企业提出越来越严峻的挑战,对企业体系无论是在行政职能、高校管理水平以及优质服务上都提出更高的要求。建设一个科学高效的信息管理系统是解决这一问题的必由之路。高校内部财务管理是该企业运用现代化技术创造更多更高的经济效益的主要因素之一。工资管理作为企业内部的一种财务管理也是如此,由

于高校职工人数较多,每一位职工的具体实际情况也不尽相同,各项工资条款的发放,如果没有一个完整的管理系统来进行管理,那么势必会给管理人员带来种种麻烦,因此类似高校工资管理系统之类的财务软件的开发势在必行。

3.1系统的初步调查

建立一个好的管理信息系统,必须要有一个好的管理基础。所谓好的管理基础,指的是合理的管理体制、完善的制度、科学的管理方法和准确的原始数据。与学校管理相比,我国的学校管理在这方面占有较大的优势。

应该看到,我国发展学校管理信息系统的时间还不长,设计开发的实际经验也很不足。要使管理信息系统在学校建立、使用,并从中获得巨大的效益,必须具备以下基本条件。

(1)领导重视、管理人员积极性高

管理信息系统的建立,需要学校提供资源、经费、人力和时间,要涉及管理体制、规章制度的变化、调整和大量数据的编码、表格形式协调等工作,这些学校管理的全局性问题必须在学校高层领导的重视和支持下才能获得解决。一般说来,校长的决心是研制学校管理信息系统的成败关键。

管理人员的积极性也是不容忽视的条件。 管理人员是管理信息系统的直接用户,它们的积极性和配合程度,关系到管理信息系统的使用效果和生命力。

(2)具备一定的资源条件

管理信息系统的资源主要包括计算机硬、软件设备,不间断电源(UPS)、空调等辅助设备和计算机房设施等,有条件的学校应尽量发掘和利用现有计算机设备。管理信息系统的费用可分为开发费用和运行费用,前者包括设备购置、人员工资、培训和开发过程中的一系列支出等,后者包括机器运行、维护和修理费,人员工资和水、电、纸张和软盘等日常开支。

要有足够的资金保证,才能顺利完成整个系统的开发工作。当然,资金的投入也可以在开发和运行过程中分阶段进行,在逐步取得阶段成果的基础上补充更多的资源。

(3)组织一个强有力的开发小组

管理信息系统的质量,在某种意义上直接取决于开发人员的水平和素质。开发小组的人数因系统规模大小而异,通常包括系统分析员、程序员、数据录入员和硬、软件维护人员。由于管理信息系统的开发通常是从逐个子系统分期分批进行的,同时,

已开发完毕投入使用的系统仍需不断维护、改进和完善,因此这个开发小组应该在相当长的时期内存在。

在正式的立项之前必须进行可行性分析,而可行性分析主要是对现行系统进行充分的调查研究,细致了解现行系统的现状流程,以及存在的主要问题,在此基础上提出新的系统的逻辑模型。

详细的现状调查目的是为了弄清现行系统的基本功能及信息流程,为了新系统逻辑模型提供基础。它是建立新系统的前期工作,也是进行系统分析和设计的重要基础。因此要建立新的资料管理系统就必须对学校现行的信息管理系统进行全面、细致而充分的调查研究。采用主要的方式是在同学中进行交流和对现有的政策进行分析。

3.2数据库技术的现状与发展

数据库是60年代末出现的一门计算机软件技术,到现在虽然只有三十多年的历史,但在理论和时间上都得到了和很大的发展。现在,数据库是数据处理的主要工具,是管理信息系统(MIS)的核心部分。数据库系统是当今计算机信息系统的核心,是计算机技术和应用发展的关键。传统的数据库系统旨在处理永久、稳定的数据,强调维护数据的完整性、一致性。

数据库理论与技术的发展极其迅速,其应用日益广泛,在当今的信息社会中,它几乎无所不在。以关系型为代表的三大经典(层次、网状、关系)型数据库在传统的(商务和管理的事务型)应用领域获得了极大成功。计算机世界报社与IBM公司联合举办了\"21世纪数据库技术发展专家研讨会\"。IBM DB2的创始人Donald Haderle先生与国内著名数据库专家,就下世纪数据库发展的趋势、数据库领域革命性的突破、IBM DB2的应用、数据仓库的实施、我国数据库技术和应用的现状及趋势、我国数据库用户的需求等问题,进行了广泛而深入的讨论。

3.3数据库系统的选择原则

(1)数据库系统采用易于集成的,开放的技术。

(2)产品质量优异,可靠性高,适于长期运行,能支持关键应用。 (3)数据安全,保安型高。 (4)能提供分布式数据库功能。

(5)支持多种开发环境,软件开发容易。 (6)扩充性和升级能力强。

3.4系统开发工具的选择

现在市场上有很多管理系统的开发工具,如:Visual basic、delphi、ASP等等,数据库开发工具又有很多种,如:Access,SQL Sever,Oracle等等。这些都是很出色的管理信息系统及数据库的开发工具。不过Visual foxpro6.0有着以下几项特点:

Visual foxpro是microsoft公司推出的全新的pc平台关系数据库管理系统。它具有强大的性能、无与匹敌的速度、完整而丰富的工具、及其友好的图形用户界面、简单得数据存取方式、良好的兼容性、独一无二的跨平台特性及真正的可编译性,是系统成为目前最快、最完美的数据库系统。不但兼容早期的dbase以及foxbase各种版本,同时还提供了许多基于windows的崭新功能。Visual foxpro作为具有windows95兼容标志的应用软件,具有快速开发应用程序、面向对象和客户机/服务器的强大功能,它是多年来出现在关系数据库方面最重要的产品。

随着桌面操作系统有windows98逐渐向windowsXP升级的发展潮流,visual foxpro必将成为今后数据库产品中的主流。Microsoft visual foxpro是一个32位的数据库开发系统,可运行于window98和windowsxp操作系统。Visual foxpro既具有visual系列的功能强大、直观易用、面向对象等优点,又兼具windows和foxpro的长处。提供了“向导”、“设计器”和“生成器”等工具,使的数据库的管理工作变的容易。Visual foxpro的易用性使初学者和那些想避免涉及foxpro复杂命令的人能很快用它来管理自己的数据库,制作各种报表、标签等;增添的面向对象的编程方式等新特色,使它成为应用程序开发人员强有力工具;其兼容性使原来的广大Xbase用户能迅速转为使用 visual foxpro;visual foxpro还能广泛地与其他许多软件共享和交换数据。正是由于其易用性、先进性和广泛性,使visual foxpro 真正做到了面向各种水平的用户。

(1)简单,易学,易用 ①快速完成应用任务

Visual Foxpro6.0提供了向导,生成器和设计器三种工具,这三种工具都使用图形交互界面方式,使用户能够最简单而又最快速地完成数据操作任务。

操作向导提供了用户要完成某一项任务所需的详细地操做步骤,在这些步骤的指导下,用户可以一步步地很简单完成任务。例如:此工资管理系统中的各项工资数据输入的表单就是用表单向导和生成器来制作的。

生成器也是一种具有友好界面的图形工具,它的主要功能是在用户自己的应用程序中加入一定的控制功能,例如列表框生成器就是一个带有标签的对话界面,利用列

表框,生成器,用户可以在窗体中设计出一个列表框,并且可以在这种生成器中设计一个列表框的共同特征,如有手写输入,可以加入到表单中去,减少用户输入繁琐的,大量的工作,用户只要从列表下拉框中选择即可,本系统在查询设置均使用了这种方法。

如果用户想突破向导和生成器本身的限制,想要自己对应程序进行更复杂或更灵活的控制,可以利用另一种Visual Foxpro6.0提供的方便有效的工具——设计器,设计器也提供了一个友好的图形应用程序开发接口,通过它对用户能建立起自己的应用程序。例如:用户可以用窗体设计器定义和生成一个窗体,用数据表设计器定义和生成一个数据表。

②使用方便的工具栏

象许多其他Microsoft产品一样,Visual Foxpro6.0也给用户提供了使用方便的工具栏,工具栏里有许多按钮,他们代表着菜单里的某些选项。一般来说,用户经常执行的操作或使用的对象多对应一个按钮,用户可以通过选择这些按钮方便而迅速地完成操作,而不必通过菜单选项。

③不编程而建立应用程序界面

Visual Foxpro6.0提供的窗体设计器是一种功能强大的工具,用户能够不编程或使用很少的代码来实现友好的交互式应用程序界面以及对界面的控制。例如;用户可以用栅格控制很容易地建立一对多的窗体;用户只需把一个数据表拖到一个窗体上就可以了。也可以利用页格式控件来建立有标签的对话框话或用户自己的生成器界面。

④用项目管理器统一界面

Visual Foxpro6.0提供的另一高效易用的工具是项目管理器。通过项目管理器,用户可以集中地管理数据,文档,类库,源代码等各种资源。例如用户可以建立和更新数据库,设计或改变窗体和报表,定义或改变类库,生成或重新生成自己的应用程序。另外,用户也可以在项目管理器中使用Visual Foxpro6.0提供的简单而有效的其他工具,如向导,生成器,工具栏等。所有这些,使用户能够对工作进行集中管理而又简单有效。

(2)功能更强大

Visual Foxpro6.0比以前的数据库管理系统具有更强大的功能。它通过使用快速查询技术和对系统的优化而使用户最大限度地体会到Visual Foxpro6.0快速而又

功能强大的优点。

①具有面向对象编程的能力

Visual Foxpro6.0在支持标准的Xbase传统编程方式的同时,也提供了完全的面向对象编程的能力。在Visual Foxpro6.0的对象模式下,用户可以利用所有的面向对象编程特性,这些特性包括继承,封装,多态性以及分类,他们都作为用户所熟悉的Xbase编程语言的扩展集而实现。

Visual Foxpro6.0提供了一套基类,包括窗体、工具栏、页格式等,使用这些类,用户可以建立基本的窗体、工具栏、页格式,这样就可以一方面减少用户编程工作量,另一方面又加快程序开发过程。

再进一步,用户可以将自己定义的类再进行分类,这样可利用用户已有的代码或窗体。例如,用户可以将基本的窗体类再进行分类而建立自己的子类,这个子类将根据用户的要求自动地在应用程序中建立起一个用户希望看到的窗体,它的结构是由用户分类来决定的。

Visual Foxpro6.0类模式能够在用户应用程序中对对象进行深入而全面的控制,例如用户在设计时可用窗体设计器对窗体中的对象进行完全的控制,二类模式下当用户运行程序时客队窗体中的表现和行为提供相同的控制。

在Visual Foxpro6.0中,用户可以用类设计器交互式地建立一个类,或者用DEFINE CLASS命令来编程建立。

②更容易处理事件。

Visual Foxpro6.0包含一种事件模式,它能够帮助用户自动地处理事件。在这种事件模式下,用户可以获取并控制所有标准的WINDOWS Visual Foxpro6.0事件,例如鼠标的移动,通过处理这一事件,用户可以拖动和放置一个对象,用户可以用两种方式来控制事件:一种是通过特性窗体来可视地控制;另一种是通过Visual Foxpro6.0的编程语言来控制这两种方法都能使用户很容易的建立起完全的事件驱动应用程序而不用考虑READ层次及浏览窗口限制,也不用编写事件处理程序。

③最优化系统

Visual Foxpro6.0能通过优化用户的实际来提高自身的性能。在所有的优化措施中,做有效的方法是尽可能多地增加用户的扩展内存或减少被其他程序所占用的内存。其余的提高Visual Foxpro6.0性能的措施包括加快启动速度和优化设置指令。

④使用快速查询技术

快速查询技术是一种专用的数据查询技术,他能够迅速从数据库中选择出一组满足用户要求的记录。使用这种即使能将数据查询所需的时间大大缩短,这样可以极大的提高数据查询效率。

⑤真正的数据库概念

以前的Xbase软件中称.DBF文件为数据库,使人容易产生一个数据库就是一个二维表的错误认识。而visual Foxpro 废除了以前Xbase 不合理的数据库概念,采用独特的数据库容器,为用户管理应用系统中的表、查询、表单、报表、程序等数据提供了方便,支持长数据库文件名和字段名设置的显示标题,为字段指定默认值,设置字段级和记录级的有效性规则,设置表的插入、删除和改变记录的触发程序得集合,合理得体现了关系型数据库的思想,与关系数据库理论统一了起来。新的数据库把有关系的表封装在一起,关系清晰、合理且处理方便。

Viual Foxpro 由于使用了这种真正的数据库概念,使得它数据库结构与sql等标准结构统一,从而使数据库的实现更加标准、合理、方便。

⑥可视化编程技术

Visual Foxpro用于visual c++、visual basic同样的编程技术,这是他取名为Visual Foxpro的原因。可视化编程技术给人一种所见即所的的感受,在您编辑屏幕表单、报表、菜单时,可以直接运行,不必来回调试,极为方便。

⑦新增许多命令和函数,功能大大加强,sql语句更加丰富

增加了7种新的字段类型:整型、货币型、日期时间型、双精度型、通用型、二进制型和二进制备注型。

在结构化的复合索引中可以建立4种类型的索引:主索引、候选索引、普通索引和唯一索引。

允许在表中使用空值null,以保证与采用sql标准的数据库管理系统的兼容和数据共享。

⑧用32位方式

Visual Foxpro使用32位方式,其运算速度、存储能力大大提高

3.5系统的可行性分析

系统的可行性分析包括两个详细的部分:分析开发新的系统的必要性和可能性。必要性在前面系统初步调查中已经作了详细的分析,在这里就不再赘述;可能性主要包括经济可行性、技术可行性和运行可行性三个方面。

经济可行性研究是对组织的经济现状和投资能力进行分析,对系统建设运行和维护费用进行估算,对系统建成后可能取得的社会和经济效益进行估计。

技术可行性要考虑现有的技术条件是否能够顺利完成开发工作,软硬件配置是否满足开发的需求等。资料管理系统用的是VF开发语言,调试相对简单,当前的计算机硬件配置也完全能满足开发的需求,因此在技术上是绝对可行的。软件方面:由于目前单机模式相对发展成熟,故软件的开发平台成熟可行。硬件方面:目前高性能的网络组件已经在我们学校广泛使用(服务器、集线器、通信介质、工作站等),它们速度快、容量大、可靠性能高、价格低,完全能满足系统的需求。

运行可行性是对组织结构的影响,现有人员和机构、设施设施和环境对系统的适应性及人员培训补充计划的可行性。当前我们学校信息化技术已经相当普及,各类操作人员水平都有相当的高度,所以在运行上是可行性的。

3.6系统开发步骤

一般说来,管理信息系统的建立与应用可以划分成总体规划、系统开发和系统运行三个阶段,其中系统开发阶段还可进一步分为系统分析、系统设计和系统实施等工作环节。上述各个阶段排列成一个严格的线性开发序列,在每个工作阶段均产生完整的技术文档作为下一阶段工作的指导和依据,每一阶段都应对文档进行评审,确信该阶段工作已完成并达到要求后才能进入下一阶段,同时在以后的工作中不能轻易改变前面经过评审的成果。

上述开发方式的主要优点是便于开发工作的组织和管理,并且可大大降低管理信息系统开发的复杂性。国内外许多系统开发的实例都证明这是一种行之有效的开发方式。

国外曾有人对一些软件项目开发各阶段的工作量进行了统计,结果表明,在开发过程中各工作阶段所占全部工作量的比重分别达到系统分析:系统设计:编程:模块调试:系统调试=20%:15%:20%:25%:20%。由此可见,程序编写在开发工作中只占很小比例,而调试工作却占整个开发工作量的一半左右,因此“系统开发就是编程”的习惯说法显然是片面的。另据统计,在建立管理信息系统的三个阶段中,总体规划和系统开发阶段的工作量约占整个工作量的2/3,而运行、维护阶段要占1/3,这说明一个管理信息系统开发后,仍应十分重视它的维护工作,以便使系统不断完善并充分发挥其作用。

四、系统设计

通过,对高校工资管理要求的分析,本系统开发的主要目的是通过信息化的方式对大量资料信息的管理,一方面提高资料信息的利用率,另一方面,实现一定程度上的信息共享,为决策提供事实依据。

4.1数据流程图

通过对系统的调查和可行性分析,画出系统的数据流程图。如图3-1所示:

老师档案单 工资管理单 工资标准单

数据编辑 数据编辑 数据编辑

主界面

查询 编辑 修改 退出

4.2业务流程图

通过对高校职工原先手工进行职工工资管理业务的情况,可以设计出它的业务流程图,如图3-2所示。

用户登录 数据输入 工资计算 存储数据

工资查询 报表汇总

(注:职工管理也与工资查询的内容相同如上图所示)

4.3数据库设计

本系统大致分为如下四大功能模块。 1.员工档案管理信息模块的设定

分为员工基本信息浏览和员工基本信息管理查询:

在职工信息基本信息子模块中,可以对员工的编号、姓名、性别、籍贯、民族、出生年月、职称、家庭住址等信息进行浏览和和查询,并可以对员工信息进行增加记录,修改记录,删除记录等操作;

2.工资标准模块的设定

包括对讲课酬金、上机酬金、作业酬金等工资的设定。

基础工资的设定包括工资等级、工资额的设定,可以对工资等级及相应的工资额进行修改、添加、删除。

讲课酬金的设定包括对姓名、职称、讲课酬金额的设定,可以对职称称及相应的讲酬金额进行修改、添加、删除。

上机酬金的设定包括对姓名、职称、上机酬金额的设定,可以对各个工龄段及相应的工龄工资额进行修改、添加、删除。

3.工资管理模块的设定

在工资管理中,可以对各职工的工资进行查询、计算等功能进行设定。 “计算”子模块中又包括讲课金酬、上机金酬、作业金酬、考核金酬、实习金酬、最后汇总等进行设定。

“查询”子模块中可对讲课金酬、上机金酬、作业金酬等进行修改、添加、删除、查找等操作

4.4系统中有关数据库表结构设计

数据库概念结构设计完成后,现在可以将上面的数据库概念转化为某种数据库系统所支持的实际数据类型,也就是数据库的逻辑结构.

使用VISUAL FOXPRO开发对加以连接使用VISUAL FOXPRO自带数据库资料管理系统中使用的各个数据表的字段设置如下:

数据库相关数据表 gzb

字段名称 职工号 日期 姓名 部门 职务工资 字段类型 字符型 日期 字符型 字符型 数值型 字段大小 8 8 10 7 综合补贴 出勤补 交通补 外租房补 补发工资 应发工资 养老保险 公积金 合计扣款 实发工资 所得税 实发现金 数值型 数值型 数值型 数值型 数值型 数值型 数值型 数值型 数值型 数值型 数值型 数值型 7 7 7 7 8 8 7 7 7 8 7 8 其它表单的各字段的设制也如上所示在此不在详细描述。

五、主要功能模块设计

5.1 项目的建立

A.在硬盘上建一个目录

B.启动VFP系统,在“项目管理器”窗口中建立一个项目,项目的名称为“工资管理系统”,保存到新建的目录中,如图5-1所示。

图5-1项目的建立

5.2 用户登陆

为了保证应用程序的安全,通常要设计系统登录表单验证用户是否合法。只有合法的用户才可进入系统。本模块是系统的封面表单,运行时将通过此表单调用主控模块,进而管理整个工资管理系统。系统登录模块运行结果。如图5-2所示。

图5-2用户登陆

表单的设计 表单form的属性

Autocenter 改为:.T.-真(运行时居中)

BorderStyle 改为:2-固定对话框(禁止更改表单大小)

Showtips 改为:.T. –真(指定表单上的控件等是否显示提示信息) ShowWindow 改为 :2-作为顶层表单 在表单的 Form_Load 事件下添加如下代码: PUBLIC USERNAME(2) USERNAME(1)='超级用户' USERNAME(2)='普通用户'

登陆系统Command1_Click事件代码: STORE '' TO MYUSER,P1,P2,P3 MYUSER=THISFORM.COMBO1.VALUE P1=ALLTRIM(THISFORM.TEXT1.VALUE)

P2=LEFT(ALLTRIM(TIME()),2)+SUBSTR(ALLTRIM(TIME()),4,2)

P3=ALLTRIM(STR(YEAR(DATE()))) IF MYUSER=USERNAME(1) IF P1=P3

THISFORM.RELEASE do form gzgl ELSE

=MESSAGEBOX(\"超级用户密码错误,请再试一遍!\提示信息') ENDIF ELSE IF P1=P2

THISFORM.RELEASE do form gzgl ELSE

=MESSAGEBOX(\"普通用户密码错误,请再试一遍!\提示信息') ENDIF ENDIF

5.3 系统主菜单设计

A.在“项目管理器”窗口中,选择“其他”选项卡

B.在“其他”选项卡中,选择“菜单”,“新建”,“菜单”,系统进入“菜单设计

器”窗口,如图5-3所示。

图5-3系统菜单设计器

退出过程相应代码:

byebye=messagebox(\"真的要退出系统吗?\提示信息\") if byebye=1 close all clear events quit endif

要注意的是,要在设计菜单结束后,选择主菜单上的“显示”菜单下的“常规选项”命令,再选择顶层表单复选框。然后保存文件,再选择生成菜单选项。

5.4 系统主控表单设计

主控表单用来调用系统菜单,以形成对整个工资管理系统的控制与管理。 运行结果。如图5-4所示。

图5-4系统主控表单

本表单form的属性需做相应设置: Show window=2 Windowstate=2 Showtips=.t.

Form 表单中的load事件代码为 Do xtcd.mpr with this ,.t.

5.5 工资录入表单设计

工资录入模块是用来录入工资记录的,在具体操作时有些数据需要自动生成。运

行结果,如图5-5所示。

图5-5工资录入表

Form1表单的属性如下: Autocenter=.t. Showwindow=1 相应事件代码设置:

Txt应发工资的 Click 和gotfocus的代码如下: with this.parent

this.value=.TXT职务工资.value+.TXT综合补贴.value+.TXT出勤补.value+.TXT交通补.value+.TXT外租房补.value+.TXT补发工资.value endwith

Txt合计扣款的 Click 和gotfocus的代码如下: with this.parent

this.value=.TXT养老保险.value+.TXT公积金.value endwith

Txt实发工资的 Click 和gotfocus的代码如下: with this.parent

this.value=.TXT应发工资.value-.TXT合计扣款.value endwith

txt 所得税、txt实发现金的代码与其类似略去。各个按钮的功能比较简单,在此略去。

5.6 工资浏览表单设计

本表单用来对多个记录进行浏览,运行结果,如图5-6所示。

图5-6工资浏览

此表单功能较简单,其中所用控件代码,在此省略。

5.7 工资修改表单设计

此表单由页框控件组成,该页框由四个页面组成。 第一个页面:对查找满足条件的记录进行修改

图5-7-1对满足条件的记录修改

第二个页面:将已查找的记录显示在屏幕上,进行修改,即单个记录的修改

图5-7-2对已找到的记录进行修改

第三个页面:批量修改已满足条件的记录,也可以修改某一字段的内容。

图5-7-3批量修改

第四个页面:浏览式修改记录,在列表框中选择一个记录,在屏幕上显示选定记录的内容,可以修改记录。

图5-7-4浏览式修改

text1_Interactivechange事件代码: set exact off

GETzgh1=ALLTRIM(thisform.pageframe1.page1.TEXT1.VALUE) GETxm1=ALLTRIM(thisform.pageframe1.page1.TEXT2.VALUE) GETrq1=thisform.pageframe1.page1.TEXT3.VALUE s=''

if len(getzgh1)>0 s=s+'职工号=GETZGH1' endif

if len(getxm1)>0

s=s+'.and.'+'姓名=GETXM1' endif

if GETRQ1<>{//}

s=s+'.and.'+'DTOC(日期)=DTOC(GETRQ1)' endif

if left(s,5)='.and.'.OR.LEFT(S,5)='.AND.'

s=subst(s,6) endif

IF LEN(ALLTRIM(S))=0 SET FILTER TO ELSE

set filter to &s ENDIF GO TOP

THISFORM.PAGEFRAME1.PAGE2.CAPTION=姓名+\"的详细内容\" THISFORM.PAGEFRAME1.PAGE1.REFRESH THISFORM.PAGEFRAME1.PAGE2.REFRESH

Text2, Text3,Text4,的Interactivechange事件代码也类似,在此省略。 查找记录command1_Click事件代码:

if not empty(thisform.pageframe1.page1.text4.value) n=val(alltrim(thisform.pageframe1.page1.text4.value)) go n

thisform.pageframe1.page2.setfocus

thisform.pageframe1.page2.caption=姓名+\" 的记录内容\" thisform.refresh else

set exact off

GETzgh1=ALLTRIM(thisform.pageframe1.page1.TEXT1.VALUE) GETxm1=ALLTRIM(thisform.pageframe1.page1.TEXT2.VALUE) GETrq1=thisform.pageframe1.page1.TEXT3.VALUE s=''

if len(getzgh1)>0 s=s+'职工号=GETZGH1' endif

if len(getxm1)>0

s=s+'.and.'+'姓名=GETXM1'

endif

if GETRQ1<>{//}

s=s+'.and.'+'DTOC(日期)=DTOC(GETRQ1)' endif

if left(s,5)='.and.'.OR.LEFT(S,5)='.AND.' s=subst(s,6) endif

IF LEN(ALLTRIM(S))=0 SET FILTER TO ELSE

set filter to &s ENDIF GO TOP endif

THISFORM.PAGEFRAME1.PAGE2.CAPTION=姓名+\"的详细内容\" THISFORM.PAGEFRAME1.PAGE1.REFRESH THISFORM.PAGEFRAME1.PAGE2.REFRESH 删除记录command2_Click事件代码:

INOTICE=MESSAGEBOX(\"确定删除指定的记录吗?\重要提示\") IF INOTICE=1

DELETE RECORD RECNO()

ANOTICE=MESSAGEBOX(\"确定物理删除指定的记录吗?\"+CHR(13)+\"一经删除,不能恢复!!!\重要提示\") IF ANOTICE=1 use use gzb PACK use

thisform.release ENDIF

THISFORM.REFRESH ENDIF

恢复记录command3_Click事件代码:

INOTICE=MESSAGEBOX(\"恢复所有逻辑删除的记录吗?\提示信息\") IF INOTICE=1 RECALL ALL ENDIF

自动计算Click事件代码: with this.parent

.TXT应发工资.VALUE=.TXT职务工资.value+.TXT综合补贴.value+.TXT出勤补.value+.TXT交通补.value+.TXT外租房补.value+.TXT补发工资.value .TXT合计扣款.VALUE=.TXT养老保险.value+.TXT公积金.value .TXT实发工资.VALUE=.TXT应发工资.value-.TXT合计扣款.value .TXT实发现金.VALUE=.TXT实发工资.value-.TXT所得税.value if this.parent.TXT实发工资.value>800 *如果工资高于800,则有所得税,费为5%

.TXT所得税.VALUE=(this.parent.TXT实发工资.value-800)*0.05 endif endwith

确认修改Click事件代码

A=MESSAGEBOX(\"确定更改指定的项目吗?\提示信息\") IF A=1 &&选择确定按钮时执行

replace all 职务工资 WITH 职务工资+THIS.PARENT.TEXT4.VALUE replace all 应发工资 WITH 应发工资+THIS.PARENT.TEXT4.VALUE replace all 实发工资 WITH 实发工资+THIS.PARENT.TEXT4.VALUE replace all 公积金 WITH 公积金+THIS.PARENT.TEXT5.VALUE replace all 应发工资 WITH 应发工资+THIS.PARENT.TEXT5.VALUE replace all 实发工资 WITH 实发工资+THIS.PARENT.TEXT5.VALUE replace all 养老保险 WITH 养老保险+THIS.PARENT.TEXT6.VALUE replace all 应发工资 WITH 应发工资+THIS.PARENT.TEXT6.VALUE

replace all 实发工资 WITH 实发工资+THIS.PARENT.TEXT6.VALUE

replace all 所得税 with iif(实发工资-800>0,(实发工资-800)*0.05 ,0) replace all 实发现金 with 实发工资- 所得税 THIS.PARENT.TEXT4.VALUE=0 THIS.PARENT.TEXT5.VALUE=0 THIS.PARENT.TEXT6.VALUE=0 THISFORM.REFRESH ENDIF

5.8 工资统计表单设计

本表单用来统计各项工资的总和以及总的人数,运行结果,如图5-8所示。

图5-8数据统计模块

开始计算command1_Click事件代码: set talk off set filter to COUNT TO XYZ

SUM TO A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12,A13 THISFORM.TXT职务工资.VALUE=A1 THISFORM.TXT综合补贴.VALUE=A2 THISFORM.TXT出勤补.VALUE=A3 THISFORM.TXT交通补.VALUE=A4

THISFORM.TXT外租房补.VALUE=A5 THISFORM.TXT补发工资.VALUE=A6 THISFORM.TXT应发工资.VALUE=A7 THISFORM.TXT养老保险.VALUE=A8 THISFORM.TXT公积金.VALUE=A9 THISFORM.TXT合计扣款.VALUE=A10 THISFORM.TXT实发工资.VALUE=A11 THISFORM.TXT所得税.VALUE=A12 THISFORM.TXT实发现金.VALUE=A13 THISFORM.TEXT1.VALUE=XYZ *THISFORM.REFRESH

5.9 工资查找表单设计

该模块主要功能是实现对工资信息的查找工作。

图5-9-1查找满足条件的记录

第二页面

图5-9-2详细内容

查看详细内容command1_Click事件代码: thisform.pageframe1.page2.setfocus thisform.refresh

返回上一页command1_Click事件代码: thisform.pageframe1.page1.setfocus thisform.pageframe1.page1.refresh

Text1, Text2,Text3,的Interactivechange事件代码与修改中也类似,在此省略。

5.10 工资初始化表单设计

本模块是对下个月的工资记录进行初始化,该表单包括的内容如下:

图5-10数据初始化

初始化command1_Click事件代码: set path to

A=\"下面要进行初始化,将对原来的内容进行改变,所以一定要先进行备份,否则原来的数据将丢失,\"+chr(13)+\"进行备份吗?\" inotice=messagebox(A,65,\"提示信息\") if inotice=1

if file(\"temptemp.vfp\") delete file temptemp.vfp endif

copy to temptemp.vfp

replace all 日期 with date () thisform.refresh endif

5.11 记录打印表单设计

本表单用来实现对记录的打印,共有两种打印模式:打印工资表和打印工资条。运行结果如图5-11所示。

图5-11记录打印

表单form1的init事件代码为: PARAMETERS TJ

PUBLIC TIAOJIAN TIAOJIAN =TJ

打印command1_Click事件代码: xyz=recno() do case

case thisform.optiongroup1.value=1 if thisform.optiongroup2.value=1 report form gzt.frx envi prev else

report form gzb.frx envi prev endif

case thisform.optiongroup1.value=2 if thisform.optiongroup2.value=1 report form gzt.frx envi prev else

report form gzb.frx envi prev endif

case thisform.optiongroup1.value=3 if thisform.optiongroup2.value=1 report form gzt.frx envi prev else

report form gzb.frx envi prev endif

5.12 系统帮助表单设计

该表单包括的内容如下

图5-12系统帮助

5.13主程序的设计

A.在“项目管理器”窗口中,单击“代码”选项卡,选择“程序”,并单击“新建”按钮,即可创建程序文件。

工资主程序的代码内容如下: close all clear all clear screen =setpath() do form fm read events

on shutdown do OnShutDown() function setpath() local lcsys16,lcprogram lcsys16=sys(16)

lcprogram=substr(lcsys16,at(\":\ cd left(lcprogram,rat(\"\\\ set path to gzgl

endfunc

FUNCTION OnShutDown()

nAns = MESSAGEBOX(\"您是否要退出这个程序?\信息提示\" ) IF nAns = 1

do quitsys

EndIf ENDFUNC

B.单击右上角的“关闭”,在“另存为”对话框中,以“main”为文件名保存。 C.

单击鼠标右键,在弹出的快捷菜单中,选择“设置主文件”,此时可以看

到程序main变为黑体。

5.14程序的连编

A.单击“项目管理器”窗口中的“连编”命令,在“操作”框中,选择“连编可执行文件”,按“确定”按钮。

B.输入编译后的。EXE文件名,然后保存在已建的应用程序所在的目录中。 C.编译完成后,用户就可以将自己的系统拷贝到其他的机器上运行了(脱离VFP环境)

六、系统运行与维护

管理信息系统在完成系统实施、投入正常运行之后,就进入了系统运行与维护阶段。

6.1 系统的配置

1、硬件配置要求(最低): CPU:PII200以上。 内存:32MB以上。 硬盘:2.1GB以上

打印机:推荐EPSON LQ-1600KII 2、软件配置要求:

WINDOWS95/98/2000中文版操作系统。

6.2 系统的运行

在安装了VF的计算机上,在程序目录,双击可执行文件即可。

6.3 系统的维护

系统维护的目的是保证管理信息系统正常而可靠地运行,并能使系统不断得到改善和提高,以充分发挥作用。换言之,系统维护就是为了保证系统中的各个要素随着环境的变化始终处于最新的、正确的工作状态。系统维护的工作量往往是很大的,其费用大约占整个生命周期的60%,所以我们必须对系统维护给予足够的重视。

1、系统维护的内容

按照维护对象的不同,系统维护的内容可分为以下几类: (1)系统应用程序维护 (2)数据维护 (3)代码维护 (4)硬件设备维护 2、系统维护的类型

系统维护的重点是系统应用软件的维护工作,按照软件维护的不同性质,可以划分为下面四种类型:

(1)纠错性维护 诊断和修正系统中遗留的错误。 (2)适应性维护 使系统适用环境的变化而进行的维护。 (3)完善性维护 为满足用户的需求而进行的维护。

(4)预防性维护 为将要发生的变化或调整而进行的主动性维护。

总 结

通过一个多月的系统开发,工资管理信息管理系统系统完成。在系统的开发过程中,以前学习感到很抽象的课程,如软件工程、数据库原理、面向对象程序设等变得清晰起来。感觉到这几门理论课程的重要性。

以前做一些应用的系统开发,随意性大,想到那里做到那里,没有统一的规划,一旦系统成型,出现错误返工修改工作量大,最终的系统可靠性不高。另外一直以来,进行程序设计均采用结构化开发方法,对系统的全貌难以在开发前看到,导致实现的系统不满足需求。

这次的毕业设计开发,主要有以下几点收获:

1.对原型化的系统开发方法有了一定的了解。渐增式的原型化开发方法与面向对象的程序设计的结合不但能在系统开发初期让用户了解系统的概貌,而且能使系统开发模块化,提高开发效率,减少出错。对于后期的系统维护也提供了很大的帮助。

2.通过实践,提高了系统分析的能力,对数据流图、数据字典、系统流程图等系统设计工具的使用有了更深刻的认识。为以后的工作、学习的进一步提高打下了坚实的基础。

系统评价就是客观,公正的从各个方面评价系统的各项功能。本部分将具体从三方面阐述:优点,缺点以及将来可能提出的要求。

参考文献

[1] 黄梯云,《管理理信息系统》,经济科学出版社2005.3

[2] 王珊 李盛恩,《数据库基础与应用 》,人民邮电出版社2006.5

[3] 刘海莎 李小英,《数据库应用与程序设计实验指导》,人民邮电出版社2006.1

[4] 王晶莹,《VF 数据库开发实例解析》, 机械工业出版社2007.3

[5] 赵泉,《Visual Foxbase程序设计实践指导及习题》,机械工业出版社2008.5 [6] 史济民,《Visual Foxbase 及其应用系统开发》, 清华大学出版社2008.5 [7] 王浩,《中文Visual Foxbase6.0 开发指南》,上海科学技术出版社2007.6

因篇幅问题不能全部显示,请点此查看更多更全内容