资源描述
清河地税局工资管理系统摘要及关键词随着时光的流逝,人类社会悄然已经进入21世纪。21世纪是知识经济时代,是信息技术时代,是数字化时代。单位管理的现代化办公自动化和决策科学化,是现代化办公管理发展的必然趋势。也是衡量一个单位信息化的重要标志。单位职工的工资信息管理作为一个单位管理的重要方面,其可变因素多,管理复杂,繁琐,时间跨度大,再加上固定的基数大,形成巨大的数据量,人工管理困难。因此为清河地税局开发了单位职工的工资管理系统软件。关键词:知识经济 信息技术 单位管理 工资信息化 软件目 录第一章 系统需求分析1.1需求分析41.2需求识别41.3功能模块的划分51.4需求规定7第二章 模块化的开发环境的简介2.1事件驱动的应用程序112.2 Visual FoxPro6.0语言与函数112.3面向对象的编程122.4与数据库的连接12第三章 总体设计方案与运行环境3.1系统组成133.2实现思路133.3系统特点143.4系统运行环境143.5出错处理.15第四章 系统与实现技术4.1数据字典164.2界面设计174.3各模块设计码21第五章 性能测试与分析5.1信息更新中的问题245.2字符串的问题245.3工资汇总模块设计的问题24第六章 体会.26第七章 结束语.27致谢.28参考文献.29第一章 系统需求分析1.1需求分析随着时光的流逝,人类社会悄然已经进入21世纪。21世纪是知识经济时代,是信息技术时代,是数字化时代。单位管理的现代化办公自动化和决策科学化,是现代化办公管理发展的必然趋势。也是衡量一个单位信息化的重要标志。单位职工的工资信息管理作为一个单位管理的重要方面,其可变因素多,管理复杂,繁琐,时间跨度大,再加上固定的基数大,形成巨大的数据量,人工管理困难。因此为清河地税局开发了单位职工的工资管理系统软件。 1.1.1开发的意义。1)提高单位职工工资管理的准确性,将本单位职工工资的基本信息经过核实之后输入计算机,并存储起来。按照规范设定标准代码。这大大保证了统计原始数据的准确性,在进行的统计分析工作中能最大限度的减少人的因素。2)可以大大的提高工作效率。单位职工的工资管理系统可以集基本信息的追加、存储汇总查询打印于一身,不仅节省人力和时间,而且调用方便,统计快捷,准确性高。3)可以充分发挥管理系统的统计和分析功能。单位职工工资管理信息系统可以根据实际的需要,开发出各种统计计算报表输出等功能模块。1.1.2开发的总体目标。单位职工工资管理系统是一个面向铁岭市地方税务局清河分局职工数据库管理系统,目标是形成一套界面友好编码规范功能齐全使用方便的职工工资信息管理应用系统。1.2需求识别单位职工工资管理信息软件的设计内容包括:(1)“工资设定”模块的设计:本模块主要功能是对职工的工资情况进行设定,主要包括:² 修改个人工资 ² 打印个人工资² 新职工工资的录入(增加新职工工资)² 删除个人工资(2)“工资查询”模块的设计:本模块功能是查询职工个人工资情况,主要包括:² 顺序查询(既向下查询一条记录)² 向上查询(既向上查询一条记录)² 按某一条件查询(可按编号、姓名等条件查询)² 打印查询结果(3)“工资汇总”模块的设计:本模块功能是对工资情况进行统计、汇总,主要包括:² 所有职工工资的汇总² 工资的预览² 工资的打印(4)退出系统1.3功能模块的划分对单位职工工资管理软件经过多次与单位工资管理人员的交谈和现场调研后,形成了如下图所示的系统框架的各功能模块图。单位职工工资管理系统系统管理工资设定工资查询工资汇总退出系统图1-1单位职工工资管理系统1.3.1系统管理。用户名主要功能如图所示。系统管理密 码图12系统管理1.3.2工资设定。主要功能如图所示。修改个人工资工资设定打印个人工资新职工工资的录入删除个人工资图13工资设定1.3.3工资查询。主要功能如图所示。工资查询按条件查询顺序查询打印查询结果向上查询图14工资查询1.3.4工资汇总。所有职工工资的汇总工资的汇总主要功能如图所示。工资汇总工资的预览工资的打印修改个人工资图15工资汇总1.4需求规定1.4.1对功能的规定 (1)根据功能的不同划分为多个模块。总体功能的划分如图所示:图16单位职工工资管理系统(2)功能描述。1)系统管理。在开始使用职工工资管理信息系统其他功能模块之前,利用系统管理建立基本的用户信息表。用户基本信息表包括用户名,密码两项。每个用户名对应唯一的密码,都输入正确后进入管理系统。进入系统后,用户名和密码可以修改。2)工资设定。修改个人工资:利用本功能可以对每个职工的工资进行修改,操作方法:单击“编辑”按钮/输入数据/单击“计算”按钮/单击“保存”按钮,便可完成个人工资的修改,并自动计算修改后的结果。如不单击“保存”而单击“还原”按钮,则恢复对该记录的修改。打印个人工资:在完成对个人工资的修改后,可以利用本功能直接打印出该职工的工资条。单击“打印”按钮既可。新职工工资的录入:利用本功能可以方便地将新来的职工工资情况录入数据库。单击“添加”按钮,系统自动在数据库的末尾增加一条空记录,输入各工资项目,单击“保存”按钮,完成新职工工资的增加。如不单击“保存”而单击“还原”按钮,则不能完成新职工工资的增加。删除个人工资:利用本功能可以对当前记录进行删除,单击“删除”按钮,系统将提示“是否删除此记录”,如单击“Y是”则完成对该记录的删除;如单击“N否”,则不删除该记录。3)工资查询。顺序查询:既向下查询一条记录,单击“下一个”按钮,查询下一条记录。向上查询:既向上查询一条记录,单击“上一个”按钮,查询上一条记录。按某一条件查询:可按编号、姓名等条件查询,单击“查找”按钮,在出现的对话框中输入要查找的字段名,单击“搜索”按钮,便可查找到满足条件的记录。打印查询结果,单击“打印”按钮,可以打印查询的结果。4)工资汇总。工资汇总,显示所有职工工资的总和。打印预览,单击时模拟显示打印的效果。工资打印,单击时打印工资清单。5)退出:单击时退出工资管理系统。1.4.2对性能的规定(1)精度。工资总和双精度表示,共计7位,小数点后取两位,具体表示为XXXXXXX。(2)灵活性。除使用工具栏外,还可以使用菜单栏上的菜单。获取信息的方式多样而且灵活。(3)故障处理要求。如果先单击“工资汇总”选项,再进行“工资设定”或“工资查询”选项,将会提示数据表正在使用,此时单击“确定”按钮,便可解决。1.4.3运行环境的规定(1)设备。微机 CPU:1.0G,硬盘:40G,内存:256M,显示器 17。能够打印A4纸大小的打印机。(2)支持软件。1) 开发工具及运行环境:后台数据库工具我们采用Visual FoxPro6.0自带数据库,前台则采用Visual FoxPro6.0作为开发工具,系统运行环境为Windows 98及以上的Windows操作系统平台。2) 开发平台:操作系统 Windows xp.3) 开发工具:Visual FoxPro6.0。4) 数据库:Visual FoxPro6.0(3)接口。软件能够在Windows xp以上的平台上运行。Visual FoxPro6.0数据库与Visual FoxPro6.0前台的连接由Visual FoxPro6.0自身完成。1.4.4用户界面本软件的设计采用图形用户界面、操作简单,普通人员都可以操作,如图所示。图17系统用户界面第二章 模块化的开发环境的简介Visual FoxPro6.0是美国著名的Microsoft公司开发的新一代关系数据库管理系统。它易学易用,功能完善,深受广大用户的欢迎。它提供给用户一个32位、面向对象的应用程序开发环境,使得用户组织数据、定义数据库规则及生成应用程序等工作更加快捷,同时支持更多、更大容量的数据管理能力。随着Microsoft Developer Studio 的发展,Visual FoxPro与其他可视化编程语言连接的日益紧密,Microsoft公司正不断为用户开发功能更加全面、快捷的数据库管理系统。Visual FoxPro6.0为应用的开发提供了全面、综合性的支持,可以分别概括为如下几点:2.1事件驱动的应用程序。Visual FoxPro6.0的应用程序是事件驱动的。即用户通过各种动作控制应用程序的流程。例如,当单击某个按钮或在某个编辑框中输入数据时都会触发相应的事件。用户可以通过编写脚本(Script)来说明当事件被触发时所要完成的处理过程。Visual FoxPro6.0给开发人员提供了一个集成环境。应用的各种成分、包括窗口、菜单、事务逻辑、数据库存储、数据库生成、图形、报表、表单、等全部都在 Visual FoxPro6.0内开发,而不必再到其它环境中去做。2.2 Visual FoxPro6.0语言与函数。Visual FoxPro6.0是新一代的关系型数据库系统,它易学易用,功能强大,与以前的版本相比,它的功能更加强大,开发及操作界面更加友好。用Visual FoxPro语言编写的程序通常称为应用程序。应用程序是由FoxPro命令、函数和相应的某一事件所要完成的处理过程的语句所组成的。它能使开发人员很容易地将简单工作复杂的事务逻辑与应用相匹配。它由几百个函数用于操作对象、数字、文字和日期等信息并全面支持的DDE和全文本的I/O。例如为某个按钮上的Click Event事件则编写的脚本、可能要进行的处理是从数据库中检索和显示数据。事件本身也可以触发其它事件,例如当一个按钮上的Click Event事件要打开一个窗口时就触发了一个窗口上的Open事件。Visual FoxPro6.0还提供了丰富的内置函数,可以利用这些函数对应用程序的各种对象的控件进行处理,如打开窗口的函数更新数据库的函数。此外,用户还可以定义自己的函数在应用程序中来执行某种特定的处理过程。外部函数可在Visual FoxPro6.0内说明和访问,就如同内置的 Visual FoxPro6.0函数一样。 2.3面向对象的编程。在Visual FoxPro6.0中创建的每一个菜单和窗口都是一个模块称为对象(Object)。Visual FoxPro6.0应用程序基本的构建块是用户所创建的对象,每一个对象都具有一些特性和行为(属性、事件和功能)利用诸如封装性、继承性和多态性这样的面向对象的编程技术。开发人员可以最有效利用所创建的每一个对象。使应用程序具有可通用性可说扩展性和强有力的功能。Visual FoxPro6.0应用由一系列对象组成,包括有函数、菜单、结构和数据窗口、用户对象、用户事件等等,对象中又包含若干控件如命令按钮、单行编辑器等。这些对象和控件都可在许多应用中重复使用。2.4 与数据库的连接。Visual FoxPro6.0提供了与底层数据库系统紧密的连接。Visual FoxPro6.0支持不同的关系数据库管理系统并充分发挥每一个数据库的特长。开发人员可利用内置的高性能数据库引擎Sybase SQL Anywhere生成独立应用或脱离服务器运行的服务以上的应用。第三章 总体设计方案职工工资管理软件是面对单位职工工资的信息管理系统。3.1系统组成职工工资管理软件组成如下图:图3-1单位职工工资管理系统3.2实现思路3.2.1用户管理采用用户名,密码两个数据项对系统的安全性进行管理。每个用户名对应唯一的密码,都输入正确后进入管理系统。进入系统后,用户名和密码可以修改。3.2.2界面设计采用Menu的界面,看起来简洁,直观。主窗口设计原则:充分体现用户功能的直观性和方便性、数据操作的规范性和统一性。输入文本为宋体12号文本控件,底色为白色表示用户输入区;底色为灰色,表示系统自动显示区,用户不可输入。命令按钮控件文字为幼圆12号色,黑色,表示用户可选择按钮,单击时将启动程序。 3.3系统特点(1)系统的人机界面友好,操作简单。(2)合理的数据库和功能模块设计,基本做到是基础数据一次输入多次使用,用户的数据输入量大大减少,这不但减少用户的工作量,提高了系统工作的效率,而且避免了由于同一数据的多次输入不一致所造成的数据混乱。(3)强大的模糊查询和打印功能,能进行多种条件的组合查询,是用户只需要输入与系统记录数据相关的最简单条件,系统立刻会帮用户找到所需的相关记录,统计、计算、打印等功能,大大减轻了财务人员的工作负担和劳动量。(4)系统的稳定性好、容错性强。系统提供了强大的检错、纠错功能和联机帮助功能,以帮助用户修改纠正错误,正确的使用系统。(5)系统的安全可靠性好。系统的权限和口令设置功能,限制了非法用户进入系统,保护了系统数据的安全性和可靠性。(6)由于系统功能模块的独立性,因此系统结构简单,可维护性好,系统具有良好的可扩展性。3.4系统运行环境作为一个小型数据库系统,单位职工工资管理系统对硬件的要求不高。3.4.1硬件微机 CPU:1.0G,硬盘:40G,内存:256M,显示器 17。能够打印A4纸大小的打印机。3.4.2 支持软件。后台数据库工具我们采用Visual FoxPro6.0自带数据库,前台则采用Visual FoxPro6.0作为开发工具,系统运行环境为Windows 98及以上的Windows操作系统平台。3.5出错处理出错处理主要指数据输入或传递发生错误和系统出现异常时,在软件程序中设置对应的处理子程序,以纠正错误。本软件程序在设计中主要考虑对数据范围限制的超出警告、数据类型错误报警处理和异常中断处理3种情况。系统有足够的健壮性,在程序崩溃时,数据不会丢失。第四章 程序设计与实现技术管理信息系统的基础就是数据库。所以对本工资管理信息软件来说,数据库结构的设计就显得非常重要。数据库是若干个表、表单、视图,索引,关键字以及其它一些数据对象组成的存储应用系统数据的仓库。4.1数据字典4.1.1数据字典(1)数据字典。数据字典是对系统所用到的表结构的描述。工资管理系统的数据表见表4-1职工工资项目:表4.1职工工资项目序号字段说 明数据类型长度主索引1编号职工编号字符型3Yes2姓名职工姓名字符型10No 3性别职工性别字符型2No 4基本工资职工基本工资数值型7No5津贴职工津贴数值型7No 6知识补贴职工知识补贴数值型7No 7午餐补贴职工午餐补贴数值型7No 8交通补贴职工交通补贴数值型7No 9工龄补贴职工工龄补贴数值型7No 10奖金职工奖金数值型7No 11应领工资职工应领工资数值型7No 12签字职工签字数值型10No 4.2 界面设计4.2.1设计登陆界面在我的电脑或资源管理器中,双击“工资管理.EXE”文件,系统将自动运行,系统登陆窗口如下图4-1,输入相应的用户名,和密码,单击“确定”按钮,检验正确后登陆到主界面。图4-1登陆界面整个界面采用表单设计,文件名为Mmk.scx,由一组文字标签、四组文本框、两组命令按钮和一张图片组成,具体设置方法如下:(1)文字标签:黑体,居中,40号字,颜色蓝色;(2)文本框:宋体12号,颜色黑色,灰色背景的只具有提示作用,提高程序可操作性,白色背景的可以直接输入文本,文本长度为3位。这里用户名为lch,密码为0。(3)命令按钮:幼园10号,颜色蓝色。单击“确定”按钮时启动程序组,结果不正确时提示“用户名错误,请重新输入”,结果正确将进入主界面。程序清单如下:inname=alltrim(thisform.text1.value)inpswd=alltrim(thisform.text2.value)set order to usernameseek innameif !found() cMessageTitle='设备管理系统' cMessageText='用户名错误,请重新输入' nDialogType=4+32 nAnswer=messagebox(cMessageText,nDialogType,cMessageTitle) do case case nAnswer=6 thisform.text1.value='' thisform.text1.setfocus case nAnswer=7 messagebox("请勿偷窥他人资料",48,"警告") thisform.release endcaseelseif password!=inpswdcMessageTitle='设备管理系统' cMessageText='密码错误,请重新输入' nDialogType=4+32 nanswer=messagebox(cMessageText,nDialogType,cMessageTitle) do case case nAnswer=7 messagebox("请勿偷窥他人资料",48,"警告") thisform.release endcase else thisform.release do form gzxgendif endif单击“退出”时,系统退出该程序。程序语句为:thisform.release。 4.2.2设计系统主界面主界面采用表单设计,文件名为GZXG.SCX进入主界面以后,根据系统设计中,简单直观的界面设计要求,我选定Menu式的主界面。在这个窗口中,能够完成数据录入、修改、查询、汇总、打印等所有功能。如图4-2所示:图4-2系统主界面整个界面由一组文字标签、四组命令按钮和一张图片组成,具体设置方法如下:(1) 文字标签:一组文字标签为黑体,居中,40号字;颜色红色(2)命令按钮:幼园12号,颜色黑色。单击时将运行程序组,完成一定的功能。单击“工资设定”按钮,执行语句do form gzsd,运行工资设定子程序;单击“工资查询”按钮,执行语句do form gzcx,运行工资查询子程序;单击“工资汇总”按钮,执行语句do form gzhz,运行工资查汇总、打印子程序;单击“退出”按钮,执行语句thisform.releaseclear eventsquit系统退出该程序。(4)图片:作为主界面的背景。4.3 各模块设计4.3.1工资设定模块设计工资设定模块采用表单进行设计,文件名为GZSD.SCX,如图4-3所示:图4-3工资设定包括以下几项功能:(1)修改个人工资: 单击“编辑”按钮,便可进行工资项目的修改,单击“保存”按钮进行保存,单击“还原”按钮将放弃修改。(2)打印个人工资:单击“打印”按钮,便可进行所有记录或当前记录的打印。(3)增加新职工工资:单击“追加”按钮,将在数据表的末尾增加一条空记录,此时便可进行新职工工资的录入,单击“保存”按钮进行保存,单击“还原”按钮将放弃修改。(4)删除个人工资:对工作关系转出的职工工资从数据表中删除,单击“删除”按钮,系统提示“是否删除此记录”,单击“Y是”按钮将删除当前记录,单击“N否”按钮将放弃删除。4.3.1工资查询模块设计工资查询模块采用表单设计方法,文件名为GZCX.SCX,如图4-4所示:图4-4查询职工工资包括以下几项功能:(1)顺序查询:单击“下一个”按钮,将向下查询一条记录。(2)向上查询:单击“上一个”按钮,将向上查询一条记录。(3)按某一条件查询:可按编号、姓名等条件查询,单击“查找”按钮,输入要查找的字段名,单击“查找”,将查找到满足条件的记录。(4)打印查询结果:单击“打印”按钮,将对所有记录或当前记录进行打印。4.3.1工资汇总模块设计工资汇总模块采用表单设计方法,文件名为GZHZ.SCX。包括以下几项功能:(1) 工资汇总:单击时出现一个新的窗口,以表格的形式显示所有职工的工资情况。如图4-5所示:图4-5职工工资一览表(2)工资预览:单击时执行语句close database allreport form gzhz to print previewthisform.refresh将汇总结果模拟显示在屏幕上。(3)工资打印:单击时执行语句close database allreport form gzhz to print将汇总结果以清单的形式打印出来。(4)退出:单击时执行语句thisform.release系统退出该程序。第五章 性能测试与分析性能测试是对所开发的程序进行测试,检测是否能满足用户需求以及对程序内在问题的检验。在测试过程中,对出现的问题进行必要的修改。5.1 信息更新中的问题在最初阶段数据库设计中,一些数据表的主索引设置不当,结果导致后台数据库中出现不少重复冗余的数据,后来发现是Visual Foxpro6.0的数据窗口中的操作函数Update与后台数据库中的数据操作函数,不相一致,于是换用了后台数据库的对数据操纵用的函数,结果是在这方面的冗余问题得到解决,但是这样却增加了前台对后台数据库的操作所用到的程序代码。5.2 字符串的问题在测试时出现过这样的问题: 输入数据库中的字符串型数据取出后与一个相同的数据比较,居然会得到“不相等”的结果。(1)分析这个问题,发现原因是:数据库中定义时字符串长度的问题。定义长度为10,而只用了8个,如:“password”,那么,在数据库中则存储成:“password ”,后面自动用空格补充,取出来后也是后面有两个空格的字符串了,所以会与“password”不相等。(2)解决的方法有两个:第一是在用来比较的字符串后也加两个空格,造成相等;但是这个方法不太好,因为在比较的时候用来比较的字符串有时不是一定的,可能是即时取得的,所以不可能会自动加减空格。第二是利用数据库本身的功能。因为Visual Foxpro6.0 有功能能在SQL语句中自动比较字符串和表中的字符串数据,它能够自动去掉空格。利用这个方法比较好,直接利用变量与数据库中数据比较,避免了这个问题。5.3 工资汇总模块设计的问题在对工资汇总模块的设计过程中,我使用了报表方法,文件名为GZHZ.FRX。但结果在浏览时可以显示,不能加到所开发的软件中。经过查阅资料,上机实践,发现将报表与表单相结合便可解决此问题。先设计好报表文件GZHZ.FRX,再设计表单GZHZ.SCX,表单中设计表格,表格的列与报表的列一一对应,在表单中将记录来源一项Record Source设置成来源于数据表GZ.DBF。这样就可以实现报表与程序的良好链接,解决工资汇总的问题。第六章 体 会通过这次毕业设计,使自己得到了多方面的锻炼和提高,将心得总结如下:6.1数据库方面对数据库基础知识和基本理论有了更深刻的认识,在这次毕业设计中,接触到了实际的数据库产品Visual Foxpro,对数据库方面知识的理解更深了。以前对数据库的三级模式不是很明白,尤其是“视图”,在实际的软件开发中经过锻炼,用户视图都是用Visual Foxpro;自行编写的,对视图确实有了一些感性的认识。6.2 Visual Foxpro6.0通过这次毕业毕业设计,对Visual FoxPro6.0也有了进一步的认识。这是Microsoft公司开发的新一代关系数据库管理系统。它易学易用,功能完善,深受广大用户的欢迎。它提供给用户一个32位、面向对象的应用程序开发环境,使得用户组织数据、定义数据库规则及生成应用程序等工作更加快捷,同时支持更多、更大容量的数据管理能力。随着Microsoft Developer Studio 的发展,Visual FoxPro与其他可视化编程语言连接的日益紧密,Microsoft公司正不断为用户开发功能更加全面、快捷的数据库管理系统。6.3 网络方面C/S模式和B/S模式;WINDOWS数据源和ODBC接口;应用程序与数据库的接口等。毕业设计临近尾声,现在总结这一段的成绩,虽有一些收获,却也认识到了自己的很大不足。毕业设计有需求分析、数据库设计和编程、调试等阶段,深感自己设计经验不足,有许多情况在设计阶段不能预料到,而在编程和调试阶段才发现很多不足。在以后的锻炼中应该更注意一些细节,尽量做到需求清晰,让用户满意。第七章 结束语经过几个月来的紧张设计和开发,清河地税局工资管理系统设计完毕。我在指导教师的指导下把在三年的专科学习和知识贯通,认真的努力工作,终于完成了任务,其功能基本符合用户需求,能够实现单位职工工资管理的信息化、自动化,深受用户好评。 但由于毕业设计时间较短,又加开发软件没有经验,自己水平又能很有限,所以该系统我认为有许多不尽如人意的地方,如各用户界面不够美观,数据格式的规范不全面等等等等。我想这些都会将在以后的学习中更加的完善。我相信,我将会在以后的工作中把所学到的知识好好的应用出来,为祖国和人民做出我的应有贡献。参考文献1、王仁烨,唐新生编著。中文版VISUAL FOXPRO6.0编程基础清华大学出版社 1992年发行2、石树刚、郑振梅编著。关系数据库,北京:清华大学出版社,1994。3、郑人杰等编辑。使用软件工程第二版,北京大学清华大学出版社1997年。4、萨师煊、王珊。数据库系统概论(第三版)。北京:高等教育出版社,2000。5、毛一心编辑。中文版VISUAL FOXPRO6.0应用及实例集锦,人民邮电出版社出版发行。2000年。6、李春葆编著。VISUAL FOXPRO6.0高级编程,科学出版社。2001年。7、网冠科技 编著。VISUAL FOXPRO6.0时尚编程百例,机械工业出版社。2001年。8、张忠、李伏强著。VISUAL FOXPRO3.0中文版从入门到精通,海洋出版社。1997年。9、郭兴成 编写。VISUAL FOXPRO7.0开发实作教程,北京希望电子出版社。2002年。27
展开阅读全文