工资管理系统设计
【摘 要】 对企业而言,人力资源是企业最宝贵的资源,也是企业的“生命线”。而工资管理又是人力资源管理的重中之重。实行电子化的工资管理,可以让人力资源管理人员从繁重琐碎的案头工作解脱出来,去完成更重要的工作。本文介绍毕业设计课题的选题背景和意义,相关的研究和开发工作的比较和综述,研究开发的过程,以及设计思路和实现细节的考虑,最后给出了作者在毕业设计过程的体会。
【关键字】管理信息系统,数据库,工资管理,实体关系图(E-R图),数据流
第一章 绪 论
1.1研究课题的背景
借助现代信息技术和管理理论,建立企业管理信息系统是当今社会的重要趋势。党和政府根据知识经济时代的特点,对国民经济建设提出了“用信息化带动工业化”的指导思想。对企业而言,全面开发和应用计算机管理信息系统就是近期不能回避的问题。在企业管理中,人力资源是企业的宝贵资源,也是企业的“生命线”,因此人事管理是企业的计算机管理信息系统重要组成部分。而工资管理又是人力资源管理的重中之重。实行电子化的工资管理,可以让人力资源管理人员从繁重琐碎的案头工作解脱出来,去完成更重要的工作。工资管理信息系统的实现可以减轻比较繁琐的手工工资管理。
现在应用在大中型企业的信息管理系统中,几乎都包括了工资管理模块。有些环境中是有大型ERP软件中的一个模块引进的,有些作为企业的财务系统的一部分。这些根据规范的西方管理制度设计的工资管理软件,在很多时候还不能完成解决中国特色中小企业的问题,本文介绍的毕业设计的研究工作就是要为这些具有中国特色的中小企业解决他们在工资管理方面的问题。
通过在本单位经过一周的调研,并参考其它同行设计工资管理软件,我基本上搞清了象我们单位的小型企业对系统的需求,如果能够设计一套针对类似本单位的小型国有企业的工资管理系统特别有意义,并且是现行的财务管理软件代替不了的。
在和指导老师多次交流后,确定实现方案的要点和工作计划。本系统的实现的主要功能有:员工信息管理、工资结构设置、工资汇总打印等功能。
1.2研究思路和工作计划
在如研究任何其他软件项目一样,我做的毕业设计也经历了从选题,调研,熟悉开发环境,实验关键技术,查找类似的相关系统的资料;系统概要设计,数据库结构设计,功能模块开发,功能模块测试,系统调试和系统试运行和修改。下面的流程图反映我们的基本思路和过程。
在各阶段的时间安排上,选题和调研用了2周左右的时间;熟悉开发环境,实验关键技术,查找类似的相关系统得资料用了2周时间;系统概要设计用了1周的时间;数据库结构设计用了1周时间;功能模块开发和测试用了4周时间;系统调试和试运行、修改约三周时间。完成全部工作大约3个月时间。
第二章管理信息系统研究概述
2.1管理信息系统的发展历史
信息作为生产力最活跃的因素,很早就在人类经济生活中发挥不可替代的作用,把信息纳入企业经营管理系统中高效处理和应用是在计算机发明以后的50年代末。
目前人们所提到的管理信息系统,通常是指以计算机为工具,对管理信息进行收集、存储、检索、加工和传递,使其应用于组织机构及企业管理领域的“人-机系统”,该系统是70年代初“后工业经济”时代的产物,在企业管理信息系统在其发展的初期,是单一的人-机系统,系统功能简单,效率低,对管理的作用有限。
进入20世纪80年代末,随着计算机网络和通讯技术的大力发展,企业管理信息系统进入网络化的发展时期。世界发达国家已建立了完善的先进的管理信息系统体系,在社会经济领域中发挥着巨大的作用。
我国的管理信息系统大发展是在80年代末90年代初,国家建立起了“金卡”,“金关”,“金桥”工程,多数企事业单位建立了局域网和广域网管理信息系统,随着世界经济和我国经济逐步向知识经济迈进,无论是基于工业经济的管理信息系统,还是面向少数专家和管理人员的专家系统(ES)或决策支持系统(DSS),其处理对象和服务对象,自身的系统结构,处理能力,都有进一步的发展。
2.2管理信息系统的特点
1、管理信息系统的组成
管理信息系统在企业中的应用存在三个要素,就是人,计算机和数据。
人是指企业领导者、管理人员、技术人员,以及MIS建设的领导机构和实施机构,他们在系统中起主导作用。MIS是一项系统工程,不是靠一些计算机开发人员就可以完成的,必须有企业管理人员,尤其是企业领导的积极参与。
计算机技术是MIS得以实施的主要技术,在这些技术中,软件开发是MIS开发的重点。
第三个因素也不可忽视。企业的管理数据是MIS正常运行的基础。广义地说,各项管理制度是MIS建设成功的基础。试想要计算一台机床的成本,需要输入每个部件、每个零件以及每个螺丝钉帽的费用,涉及企业的生产车间、采购、库房、工艺设计和财务等多个部件,必须有一整套管理制度作保证。
2、管理信息系统的界面特点
在计算机软件技术中,人机界面已经发展为一个重要的分支。MIS人机界面设计一般遵循以下基本原则:
(1) 以通讯功能作为界面设计的核心
人机界面设计的关键是使人与计算机之间能够准确地交流信息。一方面,人向计算机输入信息时应当尽量采取自然的方式;另一方面,计算机向人传递的信息必须准确,不致引起误解或混乱。另外,不要把内部的处理、加工与人机界面混在一起(人机界面程序只是通讯),以免互相干扰,影响速度。
设计MIS时,针对每个功能,都要按照模块化思想,使输入、处理与输出“泾渭分明”,充分体现人机界面的通讯功能。这样设计出来的程序不易出错,而且易于维护。
报表打印是MIS必备的功能之一,而且打印之前常常需要计算。计算与打印分开设计,虽然消耗时间,但易于整个MIS系统的维护。
(2) 界面必须始终一致
统一的人机界面不致于会增加用户的负担,让用户始终用同一种方式思考与操作。最忌讳的是每一个屏幕用户就要换一套操作指令与操作方法。
例如在整个系统可以以问号图标表示帮助,以磁盘图标表示存盘,以打印机图标表示打印机等。
(3) 界面必须使用用户随时掌握任务的进展情况
人机界面应该能够告诉用户软件运行的进度。特别是在需要长时间的等待时,必须让用户了解工作进展情况,如可以设计已经完成百分之几的任务进度条凳。目前,Windows下的应用软件无论大小,其安装程序几乎均做到了这一点。开发MIS软件时,这一点很值得借鉴。
(4) 界面友好,使用方便
多数MIS软件的数据输入量较大。对于一些相对固定的数据,不应让用户频频输入(特别是汉字),而应让用户用鼠标轻松选择。例如,人事管理系统中的“文化程度”是相对固定的数据,其值一般取“小学”,“高中”,“大专”,“大本”,“硕研”,“博研”等,录入数据之前,MIS软件应在相应的位置弹出一个列表框,待用户以鼠标点击,而不应该让用户每次都输入这些汉字。
总之,所开发的MIS在使用过程中,应使用户的数据输入量降至最低限度减少用户的干预量。实践证明,用户干预愈少,MIS系统的满意度愈高。
2.3管理信息系统的开发方式
管理信息系统的开发方式主要有独立开发、委托开发、合作开发、购买实现软件方式等4种。这4种开发方式各有优点和不足,需要根据使用单位的技术力量、资金情况、外部环境等各种因素进行综合考虑和选择。不论哪种开发方式都需要有单位领导和业务人员参加,并在管理信息系统的整个开发过程培养、锻炼、壮大该系统的维护队伍。
1、独立开发
独立开发适合有较强的管理信息系统分析与设计队伍和程序设计人员、系统维护使用队伍的组织和单位,如大学、研究所、计算机公司、高科技公司等单位。独立开发的优点是开发费用少,实现开发后的系统能够适应本单位的需求且满意度高,最为方便的是相同维护工作。缺点是由于不是专业开发队伍,容易受业务工作的限制,系统优化不够,开发水平低,且由于开发人员是临时从所属各单位抽调出来进行管理信息系统开发工作,这些人员在其原单部门还有其他工作,所以精力有限,容易造成开发时间长,开发人员调动后,系统维护工作没有保证的情况。因此,一方面需要大力加强领导,实行“一把手”原则,另一方面可向专业开发人士或公司进行咨询,或聘请他们作为开发顾问。
2、委托开发
委托开发适合使用单位无管理信息系统分析、设计及软件开发人员或开发队伍力量薄弱、但资金充足的单位。双方应签订管理信息系统开发项目协议,明确新系统的目标和功能、开发时间与费用、系统标准与验证方式、人员培训等内容。委托开发方式的优点是省事、省时,开发的系统技术水平较高。缺点是费用高、系统维护需要开发单位的长期支持。此种开发方式需要使用单位的业务骨干参与系统的论证工作,开发过程中需要开发单位和使用单位上
双方及时沟通,进行协调和检查。
3、合作开发
合作开发适合使用单位有一定的管理信息系统分析、设计及软件开发人员,但开发队伍力量薄弱,希望通过各类信息系统的开发建立完善和提高自己的技术队伍,便于系统维护工作的单位。双方共享开发成果,实际上是一种半委托性质的开发工作。优点是相对于委托开发方式而言节约资金,并可以培养、增强使用单位的技术力量,便于系统维护工作,系统技术水平较高。缺点是双方在合作中沟通容易出问题,需要双方及时达成共识,进行协调和检查。
总之,不同的开发方式有不同的长处和短处,需要根据使用单位的实际情况进行选择也可综合使用各种开发方式。
2.4管理信息系统的开发过程
管理信息系统的开发过程一般包括系统开发准备、系统调查、系统分析、系统设计、系统实现、系统转换、系统运行与维护、系统评价等步骤。根据开发系统的大小、复杂、投入、方式、方法等因素的不同,各步骤的要求和内容也不同,用户需要根据实际情况进行取舍和计划。
1、系统开发准备
系统开发准备工作主要包括提出系统开发要求、成立系统开发小组、制定系统开发计划等工作。
2、系统调研
新系统的系统分析与系统设计工作都要建立在对现行系统调研的基础上,即必须调查现行系统的运行情况、问题等,明确用户的需求,特别是合作开发和委托开发方式。
调研的主要内容:
(1) 现行系统情况:该组织的发展历史。目前的组织规模、工作状况、管理水平、与外界的主要联系等。调查该项内容的目的主要是为了划分系统界限、系统与外界的输入输出接口等。
(2) 组织结构图:该组织的组织结构图,弄清组织的行政关系、人员编制、工作范围、地理位置等,发现不合理的问题及新系统启动后可能对现有组织的影响。
(3) 业务流程:按照业务种类的不同和处理时间的先后不同,深入了解现行系统的业务流程,画出现行系统业务流程图,并与业务人员反复讨论,得到认可。调查中要注意定性和定量相结合,注意人、财、物、信息的流向、规格、频率、要求以及需要解决的问题等。
(4) 报表、数据处理:了解各种统计报表、数据格式、内容、处理时间以及上报时间、频率、规律、存在的问题,对新系统的要求、希望等并收集各种报表。
(5) 问题:现行系统中存在的主要问题和薄弱环节,可以按照严重程度分成不同等级。新系统的建立应该能解决大部分问题,并改善薄弱环节。
(6) 新系统的功能和目标:了解各级领导和各类业务工作人员对新系统功能的要求,系统分析(又称逻辑设计)是管理信息系统开发的关键环节,要求在系统调研的基础上,对新系统的功能进行细致分析,并建立一个新系统的逻辑模型。
新系统的逻辑模型有系统数据流程图、概况表、数据字典、物理逻辑表达式以及有关说明组成。最后要完成系统分析报告(也称系统逻辑设计说明书)。系统逻辑模型就像在根据需要建设一座学校,按照学校教育层次(初级、中等、高等)、规模、投资、地理环境、技术水平等条件的要求和约束,先由建筑设计院进行设计,保证学校建成后的各项功能得以实现,之后进行工程设计和施工一样。在系统设计阶段要做认真、细致的分析、研究工作,避免新系统在功能上存在先天不足或缺陷。
因为新系统模型是建立在对现行系统的分析和设计要求的基础上,所以系统调研工作要进行得深入、细致、全面。用户可以对新系统的逻辑模型提出意见,双方经过讨论、修改,最后达成共识,并完成系统分析报告,经有关领导审批通过后,转入系统设计(又称系统物理设计)阶段。
3、系统设计
系统设计又称系统物理设计。系统设计要根据系统分析报告中的系统逻辑模型综合考虑各种约束,利用一切可利用的技术手段和方法进行各种具体设计,确定新系统的实施方案,解决“怎么做”的问题。
结构化系统设计是指利用一组标准的图表工具和准则,确定系统由哪些模块,用什么方法连接,如何构成良好的系统结构,并进行系统输入、输出、数据处理、数据存储等环节的详细设计。这一阶段的重点是设计好系统的总体结构,选择最经济合理的技术手段。系统设计阶段的文件是系统设计报告(又称系统物理设计说明书)。
4、系统实施与转换
系统实施阶段的主要工作包括:系统硬件的购置与安装、程序的编写与调试、系统操作人员的培训,系统有关数据的准备和录入、系统调试和转换。
在系统实施阶段要成立系统实施工作小组,组织各专业小组组长和有关部门领导共同编制新系统实施计划。可以应用各种项目管理的软件和方法进行管理,实行项目经理负责制,保证系统实施工作的顺利进行和成功。
硬件的购置和安装包括计算机硬件、外设、网络、电源、机房、环境等有关设备的购买、验收、安装与调试工作,这些工作主要由专业技术人员完成。
数据准备与录入工作主要由手工操作转入计算机处理所需的各种数据的整理、录入及计算机系统中为新系统所用数据的转换工作。数据准备与录入工作要注意数据的准确性,在整理、录入、校验等各个环节把好关,为系统的顺利转换打好基础。
在进行以上各个环节的同时展开人员培训工作,包括管理信息系统知识的普及教育、新制度的学习、计算机操作培训等。使所有人员了解新系统的基本功能、新系统对使用人员的要求、建立管理信息系统的目的、管理信息系统的建设可以为组织和个人带来的帮助和便利、个人在新系统中应该承担的工作等,是用户关心、支持新系统的实现。
5、系统维护和评价
管理信息系统是一个复杂的人机系统。系统外部环境与内部因素的变化 ,不断影响系统的运行,这时就需要不断完善系统,以提高系统运行的效率与服务水平,这就需要从始至终的进行系统维护工作。
系统评价主要指系统建成后,经过一段时间的运行后,要对系统目标和功能的实现情况进行检查,并与系统开发中设立的系统预期目标进行比较,及时写出系统评估报告。
系统维护与评价阶段是系统生命周期中的最后一个阶段,也是时间最长的一个重要阶段。
第三章 工资管理系统分析和设计
3.1系统功能需求简介
工资管理信息系统对企业加强工资管理有着重要的作用,就一般的大型企业来说,它的设计内容非常复杂而且繁多,比如拥有工资计算功能,工资统计功能,报表输出功能,而且设计的模块也很多,比如工资管理模块,工资统计模块,报表设计模块,打印输出模块,模糊查询模块等。
由于本软件主要是为作者工作的一家科技公司定制开发的。该公司是一家刚刚成立的公司,总体人员比较少,有正式员工20人,人员结构比较简单,学历比较高,基本拥有大专以上学历,部门划分也很清晰,而且人员的流动性不高,所以公司目前对工资管理的要求不高。因此,针对该公司而言,我们经过反复论证,最终确定了工资管理系统的设计方案,该工资管理系统的主要功能如图3.1所示:
3.2功能需求描述
1、员工基本信息模块
员工基本信息模块具有员工信息输入、员工增删、员工信息查询三个功能,员工基本信息包括员工号、员工姓名、员工性别、所在部门、所在岗位、工龄和工资等级等信息。员工增删实现了对数据库中员工信息的增加和删除。员工可以通过员工号或员工姓名对员工信息进行查询。
2、工资结构设置模块
根据该公司的工资管理实际情况,本系统将工资结构分为基础工资、岗位工资、工龄工资三部分。该模块可以对这三个工资类型设置工资等级,并对每个等级设置工资标准。
3、工资汇总模块
用户在员工信息管理模块对该员工的工资等级进行输入以后,在工资汇总模块会自动对员工工资进行汇总。用户可以打印出工资汇总表,打印之前可以通过打印预览功能进行打预览。
3.3目标系统要求
目标系统应该达到以下要求:
1、时间经济性。优化逻辑设计与物理设计,使系统运行效率高,反映速度快。
2、可靠性。能连续准确的处理业务,有较强的容错功能。
3、可理解性。用户容易理解和使用该系统。
4、可维护性和适用性。系统应易于修改、易于扩充、易于维护,能够适应业务的不断发展需要。
5、可用性。目标系统功能齐全,能够完成满足业务需求。
6、安全保密性。标准系统的物理安全,数据存储和存取的安全与保密、数据传输的安全与保密,做好使用人员的授权管理。
3.4系统平台选择
选择微软平台作为主导,一方面考虑目前微软的飞速发展,越来越多的企业在规划内部网络时,将微软平台作为首选方案;另一方面从技术角度来讲,微软平台上的应用无论是在开发上,还是在软件的部署上都非常容易,而且性能优越。
操作系统:Windows 98
开发工具与语言:Visual Foxpro 6.0中文版
3.5数据库设计
3.5.1数据库介绍
所谓数据库(Database)就是指按一定组织方式存储在一起的,相互有关的若干个数据的结合,数据库管理系统(database Management System)就是一种操纵和管理数据库的大型软件,简称DBMS,他们建立在操作系统的基础上,对数据库进行统一的管理和控制,其功能包括数据库定义,数据库管理,数据库建立和维护,与操作系统通讯等。DBMS通常由数据字典,数据描述语言及其编译程序,数据操纵(查询)语言及其编译程序,数据库管理例行程序等部分组成。
关系数据库是以关系模型为基础的数据库,是数据表、记录、字段之间的关系将这些表联系在一起,关系数据库提供了成为结构化查询语句(SQL)标准接口,该接口允许使用多种数据库工具和产品,关系数据库是目前最流行的数据库。
在VFP中数据库是一个逻辑概念,通过一组系统文件将相互关联的数据表及其数据库对象组织起来,成为扩展名为.dbc的数据库文件、扩展名为.dtc的数据库备注文件和扩展名为.dcx的数据库索引文件,三个文件一般不能直接使用,而是交由VFP数据库统一管理。
VFP把.dbf文件称为表文件,一个库可以容纳多个表,通过库我们明确各表之间的相互关系,使表文件不在彼此孤立,而成为相互关联的数据集合。
3.5.2数据流程图
根据对工资管理工作的调查和用户需求分析,该系统的数据流图如图3.2所示:
3.5.3数据字典分析
该软件的数据库由下述四张数据表组成:
员工信息表:Personnel.dbf
基础工资设置表:course.dbf
岗位工资设置表:rank.dbf
1、员工信息表:Personnel.dbf
2、基础工资设置表:course.dbf
3、岗位工资设置表:rank.dbf
4、工龄工资设置表:gongling.dbf
5、管理员注册表:adminer.dbf
第四章工资管理信息系统的功能实现
4.1员工基本信息增删改功能
员工基本信息模块主要分为员工信息浏览界面和员工信息查询界面,员工信息浏览界面如图:
具体代码如下:
(1)“增加记录”按钮控件源代码:
Thisform.pageframe1.page1.fy1.enabled=.F.
Thisform.pageframe1.page1.command2.enabled=.F.
Thisform.pageframe1.page1.command3.enabled=.F.
Thisform.pageframe1.page1.command4.enabled=.T.
If Thisform.pageframe1.page1.command1.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.
Append blank
Thisform.pageframe1.page1.command1.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)
Getrank= alltrim(Thisform.pageframe1.page1.txtprank.value)
Getindate= alltrim(Thisform.pageframe1.page1.txtpindate.value)
If empty(getid) or empty(getname) or empty(getsex) or empty(getjob) or
empty(getindate) or empty(getrank)
msg(“资料不足”,48,”错误”)
else
Thisform.pageframe1.page1.command1.caption=’增加记录’
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.
Thisform.pageframe1.page1.command2.enabled=.T.
Thisform.pageframe1.page1.command3.enabled=.T.
Thisform.pageframe1.page1.command4.enabled=.F.
End if
End if
(2)“修改记录“按钮控件源代码:
Thisform.pageframe1.page1.fy1.enabled=.F.
Thisform.pageframe1.page1.command1.enabled=.F.
Thisform.pageframe1.page1.command3.enabled=.F.
Thisform.pageframe1.page1.command4.enabled=.T.
If Thisform.pageframe1.page1.command2.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.
Append blank
Thisform.pageframe1.page1.command2.caption=’修改确认’
Thisform.pageframe1.page1.refresh
Thisform.pageframe1.page1.txtpid.setfocus
Else
Thisform.pageframe1.page1.command2.caption=’修改记录’
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.
Thisform.pageframe1.page1.command1.enabled=.T.
Thisform.pageframe1.page1.command3.enabled=.T.
Thisform.pageframe1.page1.command4.enabled=.F.
End if
2、员工信息查询功能
员工信息查询界面如图4.2所示:
具体代码如下:
“查询”按钮控件源代码:
Getpid=alltrim(Thisform.pageframe1.page2.text1.value)
Getpname= alltrim(Thisform.pageframe1.page2.text2.value)
Flag1=thisform.pageframe1.page2.check1.value
Flag2=thisform.pageframe1.page2.check2.value
If flag1=0 and flag2=0
Messagebox(“请输入查询条件”,48,”错误”)
End if
If flag1=0 and flag2=0
Set order to pid
Seek getpid
If found()
Messagebox(“查到记录”,48,”注意”)
Select * from personnel where pid=gepid into sursor ling
Thisform.pageframe1.page3.enabled=.T.
Thisform.pageframe1.page3.refresh
Else
Messagebox(“没有这条记录”,48,”注意”)
End if
Endif
If flag1=0 and flag2=1
Set order to pname
Seek getpname
If found()
Messagebox(“查到记录”,48,”注意”)
Select * from personnel where pname=gepname into sursor ling
Thisform.pageframe1.page3.enabled=.T.
Thisform.pageframe1.page3.refresh
Else
Messagebox(“没有这条记录”,48,”注意”)
End if
End if
If flag1=1 and flag2=1
Set order to pid
Seek getpid
If personnel.pname=getpname
Messagebox(“查到记录”,48,”注意”)
Select * from personnel where pid=getpid and pname=gepname into sursor ling
Thisform.pageframe1.page3.enabled=.T.
Thisform.pageframe1.page3.refresh
Else
Messagebox(“没有这条记录”,48,”注意”)
End if
End if
4.2工资结构设置模块编码设计
工资结构设置模块界面如图4.3所示
其中“基础工资”功能界面如图4.4所示:
具体代码如下:
“修改”按钮控件源代码:
Thisform.gtdrank.colum1.text1.enabled=.T.
Thisform.gtdrank.colum2.text1.enabled=.T.
Thisform.gtdrank.colum1.text1.setfocus
“修改确认”按钮控件源代码:
Thisform.gtdrank.colum1.text1.enabled=.F.
Thisform.gtdrank.colum2.text1.enabled=.F.
“添加”按钮控件源代码:
Append blank
Go bottom
Thisform.gtdrank.colum1.text1.enabled=.T.
Thisform.gtdrank.colum2.text1.enabled=.T.
Thisform.gtdrank.colum1.text1.setfocus
“删除”按钮控件源代码:
Thisform.gtdrank.recordsource=’’
Use rank exclusive
Delete from rank where rname=getid
Pack
Thisform.gtdrank.recordsource=’rank’
Thisform.gtdrank.refresh
“退出”按钮控件源代码:
Thisform.release
Do form form\dataformat
4.3入口程序
各模块程序编写完成后,要为程序编写一个入口程序。该程序的作用是完成应用系统一系列的初始化设置。
工资信息系统的入口程序如下:
Clear screen
Clear event
Open database database\salary
Do form form\ksjn
Read event
4.4连编程序
连编应用程序项目本设计的收尾工作。通过连编将项目资源,如视图、查询、表单、报表、菜单、类、过程这些包含于项目管理器中的文件结合在一起,生成一个扩展名为salary.exe可执行文件,或扩展名为.app的应用程序。
连编程序之前,要进行设置主文件、确定包含或排除文件、设置项目信息操作等。完成这些操作后,运行主程序,当主程序没有错误后,即可连编项目。
第五章 小 结
随着我国成功加入WTO及信息化浪潮的日益临近,企业在激烈的市场竞争环境下求得生存,就必须有效地利用人才、时间、信息结合的优势。因此,如何使企业及时掌握本企业人才的各种信息、第一时间处理好随时变化的工资管理问题,建立一套符合企业实际的工资管理系统就显得尤为重要。
在本项目的软件开发的过程中,我全面实践一个面向数据库的应用系统的开发过程,学习很多有关的知识。这样的项目对我们学过的数据结构,程序设计,数据库,软件工程,等课程是一个综合性很高的实践。一些以前没有学得很杂实的课程内容,由于需要在实践中运行,刚开始我也感到头痛。但回过头来再去看教课书,经历着一段时间的实践,对于这些知识点有关的背景,概念和解决方案理解得更透彻了,学习起来也越来越有兴趣,越来越轻松。
另外我还充分体会了从事软件开发工作需要特别谨慎认真地态度和作风,一点都不能马虎。每个细微的细节都必须十分注意,如果考不认真思考决策,就会出现或大或小的错误。如果早期的错误隐藏下来,对后面的工作影响就会很大,甚至有时会推倒很多前面做的工作重来。有时候,我自己觉得我写的程序非常正确,但是就是编译通不过,在查找错误的过程中,面临着否认自己的过程,非常的痛苦,而且由于自己的经验及各方面的能力的不足,所以进展的速度非常的缓慢,往往几天的时间没有一点进展。这时候,我一般是先自己通过书本,手册和资料找解决办法,实在没辙才向专家请教。尽管向专家请教解决问题比较快,自己钻研花的时间较多,但我强迫自己独立思考对其噢的学习提高帮助非常大。
在开始编写程序的时候,我看到别人的软件功能非常的详细,而且界面非常漂亮,总是希望自己的软件也非常的完善,但是,经过两个月的学习,发现编一个优秀软件不是一蹴而就的事情,需要长时间的积累和经验。我认清自己的能力后,特别注意在工作的过程中不贪图大而全,而是根据集资的能力制订适当的目标。
在反反复复的学习和不耻下问之下,我的辛勤努力有了回报,终于作出一个简单的软件,虽然这个软件功能非常简单,而且我想,在实际运用中,还有些不足,因为工资的的内容非常丰富,我涉及到的仅仅是工资管理的一部分简单内容,离实际的客户需求肯定还有差距。例如工资管理和人事管理,考勤管理以及财务账表的关联考虑得还不完善。最好是这几部分的数据可以相互转化利用,不需要重复录入,针对工资管理,还应该建立一个有普遍意义的模型,这样对用户来讲,就比较容易通过修改有关管理制度来适应我们开发的软件。
由于我的知识浅薄,经验不足及阅历颇浅,因此,在该系统的设计方面还有很多不足,比如功能过少,界面不醒目等问题,我会在工作的使用过程中,根据工作的具体要求不断的修改、完善,争取使系统慢慢趋于完美。
在本系统的设计过程和论文编写过程中,有好多老师、同事和朋友都给予了我许多无私的帮助,尤其是我的导师给我的论文提出了很多宝贵意见,在这里,我向这些无私帮助我的人表示衷心的感谢。
参考文献:
(1)张瑞君:《会计信息系统》,20##年6月版,中国人民大学出版社
(2)唐云锦:《会计电算化》,20##年7月版,重庆大学出版社
(3)张瑞君,蒋砚章:《计算机会计》,1994年版,中国人民大学出版社
(4)吕孔志:《电算化会计概论》,20##年版,中国财经出版社
(5)杨周南,张瑞君:《会计信息系统》,20##年版,财经科学出版社
(6)韩庆兰:《会计管理信息系统》,1996年版,中南工业大学出版社
(7)樊静:《会计信息系统分析与设计》,20##年版,高等教育出版社
(8)周永恒,周逊:《Visual FoxPro基础教程》,2006,高等教育出版社
(9)周永恒,周逊:《Visual FoxPro基础教程实验指导》,高等教育出版社2006
(10)教育部考试中心:《Visual FoxPro程序设计》,高等教育出版 2006
(11)王振武:《会计电算化》,20##年版,东北财经大学出版社