1、 工资管理;财务管理;系统化;规范化;自动化Design and Implementation of the managementsystem for small wagesThe computer science department of 20XX class 1 class of XXXXAbstract: Salary management is an important part of companyKey word: Salary management; Financial management; Systematic ; standardization; automation绪
2、论当今社会,资金是企业生存的主要元素,资金的流动影响到企业的整体运作,企业员工的工资是企业资金管理的一个重要的组成部分,因为企业每个月都要涉及发放企业员工工资的问题。而随着企业人员数量的增加,企业的工资管理也变得越来越复杂。企业员工的人数越多,工资的统计工作就越多,工资的发放困难就越大。如果能够实现工资管理的自动化,无疑将给企业管理部门带来很大的方便。传统的纸质材料的数据信息管理方式已经不适合现代企业公司的发展了,实现工资管理的系统化、规范化、自动化,将成为现代公司管理工资的首选。随着计算机的诞生和普及以及计算机网络的发展,我们就可以开发一个工资管理系统,用电脑代替大量的人工统计和计算,完成许
3、多工资信息的处理。对于企、事业单位的工资发放来说,不需要太大型的数据库系统。只需要一个操作方便,功能实用,能同时满足财务部门、单位其他相关部门及代发单位三方对数据的管理及需求的系统。我的目标就是在于利用 VFP 编程软件开发一个功能实用,用户操作方便,简单明了的工资管理程序。实现工资的集中管理,可供财务人员对本单位的人员以及工资进行增加、删除、修改、查询,对人事的管理及工资发放中的应发工资合计等项目进行计算,同时本系统还可对人事及工资管理情况进行多角度查询。利用小型软件对小型企业的工资进行管理,不仅可以节省开支,而且还可以节省时间,充分发挥了其小却精的特点。第一章 系统设计使用的工具、环境简介
4、系统设计使用的工具主要有 Visual FoxPro 6.0 , 现简介如下:1.1VFP 的简介Visual FoxPro 6.0 是由美国 Microsoft 公司于 1998 年推ft的新一代数据库软件系统。Visual FoxPro 数据库是一个关系型数据库,主要用于 Windows 环境。由于 Visual FoxPro 需要很少编程就可以建立一个面向对象的数据库应用程序,所以在众多的数据库软件中,Visual FoxPro 拖颖而ft,成为一种通用的数据库软件。利用 Visual FoxPro 可以设计ft丰富多彩的用户界面,在用户界面中可以放置各种控制部件,如命令按钮、图形、图片
5、、图表等,从而设计ft完全图形化的界面,方便用户操作和使用1。1.2VFP 的基本功能(1)可以为每一种类型的信息创建一个表,利用表存储相应的信息。(2)可以定义各个表之间的关系,从而很容易地将各个表中相关的数据有机地联系在一起。(3)可以创建表单来直接查看和管理表中的数据。(4)可以创建一个报表来分析数据或将数据以特定的方式打印ft来。1.3VFP 的特点与其他数据库不同,VFP 在实现上述功能时提供了各种向导,用户在操作时,只需按照向导所提供的步骤执行,使用起来非常方便2。(1)易于使用(2)可视化开发(3)事件驱动(4)面向对象编程(5)应用向导和生成器(6)组件库(7)VFP 基础类(
6、8)对动态图形文件的支持第二章 系统需求分析2.1系统的可行性分析(1)可行性分析以下从四个方面对企业工资管理系统进行可行性分析:技术可行性、经济可行性、操作可行性和法律可行性。 技术可行性为了确定现有技术能否实现目标系统。VFP 6.0 自带的工具和控件,完全可以实现本系统要求达到的各种功能。 经济可行性为了确定待开发的系统的经济效益能否超过开发成本。工资管理系统是一个不会直接产生经济效益的投资,但是能够节省人员资源的消耗和浪费,从而节约成本,提高效率。从成本效益角度来观察,这个系统的开发成本不是很高,在使用后,能够起到的作用也是十分可观的3。 操作可行性企业工资管理系统是基于 VFP 6.
7、0 平台开发的,VFP 系列是被广泛应用于数据库开发和操作的一套成熟的软件平台,而且它对于一个小型的数据库处理具有不可比拟的优点和简单方便。所以从操作可行性方面是可行的。开发ft来的界面也是十分容易使用,具有简单,容易上手的特点。 法律可行性本系统完全是本人在指导老师的指导下独立完成的,故不存在侵权行为或者由于本系统带来的法律纠纷等问题,所以在法律上是可行的。所以从上面四点ft发,可以确定系统分析是可行的。2.2功能需求分析小型工资管理系统的主要任务是利用计算机对人事、工资信息进行常规的管理(如增加、修改、删除、查询、存储等),迅速准确地完成工资信息的统计计算和汇总工作以及报表打印。本系统包括
8、下列功能:(1)“人事管理”模块的设计:本模块主要功能是对职工的个人基本信息进行设定,主要包括: 人事数据维护(可以对职工的个人资料进行添加、删除、修改等一些操作) 人事信息查询(2)“工资管理”模块的设计:本模块功能是对职工的工资进行设定,主要包括: 工资数据维护(可以对职工的工资进行添加、删除、修改等一些操作) 工资查询(3)“基础资料”模块的设计:本模块功能是对职工所在的部门、职工的职称进行管理,主要包括: 部门表 职称表(4)“系统管理”模块的设计:本模块功能是对操作员进行管理,主要包括: 操作员管理(可以对操作员的姓名和口令进行修改)(5)退ft系统第三章 系统的设计过程3.1 系统
9、的总体功能结构设计人工职操事资称作查表员询管理图 3-1 系统总体功能结构设计32 系统功能具体分析3.2.1登陆界面在文件夹 XXGZ 中,双击“gz.exe”文件,系统将自动运行,系统登陆窗口如下图 4-2,输入相应的用户名,和密码,单击“确定”按钮,检验正确后登陆到主界面。图 3-2 登陆界面单击“确定”按钮时启动程序组,结果不正确时提示“用户名错误,请重新输入”,结果正确将进入主界面。程序清单如下:*判断密码是否正确i=i+1select operatorlocate for 操作员姓名=alltrim(thisform.text1.value) do casecase i3禁止进入系
10、统!)thisform.release endcase单击“退ft”时,系统退ft该程序。程序语句为:thisform.release。3.2.2人事管理单击人事管理菜单。此时会ft现两个子菜单:人事信息数据维护和人事信息查询。(1)人事信息数据维护主要是对职工的个人信息处理:例如可以进行顺序查询,上一个、下一个。可以直接回到第一个和最后一个。假如企业来了一位新成员,可以在这个表单中用【添加】按钮添加上这位新成员的。如果职工的信息改变了,例如“李明”结婚了,表单上是未婚,此时可以用【编辑】按钮进行修改。某个人辞职了,他不在这个企业了,我们要把他删除,就用【删除】按钮。一个表单中人员太多,想找一
11、个人很麻烦,这是我们可以用【查询】按钮,单击【查询】按钮,这是在右下角会(2)人事信息查询的主要功能是对职工的个人信息进行查询,就是只能看,不能修改。可以按“员工号查询“、按“姓名查询“、按职工所在”部门查询“还可以按”ft生日期查询“,最后可以显示全体员工。【查询打印】按钮和人事信息数据维护里的【打印】按钮区别就是前者可以打印全体职工的信息(如下图)3-3 人事查询打印效果图3.2.3工资管理单击工资管理菜单。此时会ft现三个子菜单:工资信息数据维护、工资信息查询。(1)工资信息数据维护和人事信息数据维护的主要功能类似。工资信息数据维护主要是对职工的工资信息处理:假如企业来了一位新成员,可以
12、在这个表单中用【添加】按钮添加上这位新成员的工资信息。如果职工的信息改变了,例如“李明”的基本工资涨了,此时可以用【编辑】按钮进行修改。某个人辞职了,他不在这个企业了,我们要把他删除,就用【删除】按钮删除他的工资信息。一个表单中人员太多,想找单个人的工资很麻烦,这是我们可以用【查询】按钮,单击【查询】按钮,这是在右下角会果领导想看某个人的个人工资资料,你可以用【打印】按钮,把这个人的工资信息打印给领导看。单机【退ft】按钮将退ft【工资信息数据维护】菜单。(2)工资信息查询主要是对职工的工资进行查询,可以按“员工号查询“也可以查询全体职工的工资信息。【查询打印】按钮就是将职工的工资信息打印ft
13、来。3.2.4基础资料管理基础资料管理菜单主要包括:部门表和职称表两个表单。部门表主要是对部门信息进行修改的表单,可以添加、删除、修改、查询等,职称表同部门表功能类似,就是对职工的信息进行修改。3.2.5系统管理系统管理菜单主要由操作员管理这个表单组成。操作员管理主要就是管理操作员的基本信息,可以对操作员的姓名和口令进行修改,也可以再添加多个操作员,还可以删减某个操作员。3.2.6退ft系统单击退ft系统菜单,将关闭小型工资管理系统的所有页面。3.3系统的数据库设计3.3.1数据库需求分析本系统包含两个数据库:DBGZ 和 DBSYSTEM。第一个数据库 DBGZ 有 4 个表文件(rsb.d
14、bf、gzb.dbf、bmdm.dbf、zcb.dbf), 第二个数据库 DBGZ 有 2 个表文件(operator.dbf、log.dbf)。各个表如下:Bmdm:保存部门的信息代码、部门名称。Operator:保存操作员信息操作员代号、操作员姓名、口令、部门、电话。Log:系统日志操作员代号、操作员姓名、登陆时间、离开时间。3.3.2数据库概念结构设计(E-R 图)E-R 图提供了表示实体型、属性和联系的方法: 那么本系统的 E-R 图如 3-4 所示。nm管理图 3-4 小型工资管理系统的 E-R 图3.3.3数据库逻辑结构设计在 VF 中建立数据库的步骤如下:(1)建立数据库可以通过
15、菜单【文件】【新建】打开【新建】对话框,选择“文件类型”为【数据库】选项单击【新建文件】打开【创建】对话框,在“数据库名”文本框输入所建数据库的名,单击保存按钮,此时就建立了数据库。用数据库设计器来直接建立数据库;也可以通过语句来建立该数据库:Create database *。(*为索要建立的数据库名)(2)数据库表 Rsb在表设计器中建立表,如下表所示表 3-1 人事表(3)建立表 Gzb如下表所示表 3-2 工资表4)建立表 Bmdm(表 3-3 部门代码表(5)建立表 Zcb表 3-4 职称表6)建立表 Operator表 3-5 管理员表(7)建立表 log表 3-6 日志表3.4系
16、统功能模块详细的设计与实现详细设计是整个设计过程中最重要和最关键的一步,本系统的详细设计主要包括以下几个部分: 主控程序的设计 登陆界面的设计 系统菜单设计 人事管理模块设计 工资管理模块设计 基础资料管理模块设计 系统管理模块设计 退ft系统模块设计3.4.1主控程序的设计1、主程序的功能主文件就是主控程序,可以是.prg 文件、菜单文件(.mpr)、表单文件(.scx)。本系统以程序文件 MAIN.PRG 作为主文件。主文件有以下几个作用4:(1)对应用程序的环境进行初始化。(2)作为应用程序的执行起点,由此启动程序的逐级调用;在项目管理器中,主文件作为应用程序“连编”的起始点。(3)控制
17、事件循环。(4)恢复系统默认的环境。2、主程序代码clear all close allset escape off set safety offset delete off set sysmenu offrelease window 常用set century on set date to ymd set mark to - set hours to 24_screen.Visible=.t._screen.Caption=小型工资管理系统_screen.Icon=.bmpfosu1.icodo form .mainbegin.scx on ShutDown do onshutdown re
18、ad eventson shutdown3.4.2登录界面的设计1、功能调用菜单文件,显示系统主界面。2、主要事件代码及效果图(1)“确定”按钮 Click 事件代码*判断密码是否正确i=i+1insert into log(操作员代号,操作员姓名,登录时间)value(operator.操作员代号,;_screen.caption=+space(40)+dtoc(date()+space(40);) thisform.releaseendcase(2)“退ft”按钮 Click 事件代码release thisformclear events3.4.3系统菜单的设计1、系统菜单在应用系统中,
19、各个子模块是通过菜单组织在一起的。通过对小型工资管理系统功能模块的设计,可以将系统分为 5 个大模块:人事管理、工资管理、基础资料管理、系统管理、退ft系统,具体的菜单设计如下表所示:表 3-7 小型工资管理系统的菜单2、各菜单项对应的表单文件如下表所示:表 3-8 各项菜单对应的表单文件菜 单 项 名 称调 用 的 表 文 件表中调用的报表文件人事信息数据维护rsb_edit.scxrsb_bb1.frx人事信息查询rsb_query.scx工资信息维护gzwh.scxgz_bb1.frx工资信息查询gzxc.scxgzb_bb.frx部门表bmb.scxbmb_bb.frx职称表zcb.s
20、cxzcb_bb.frx操作员管理operator.scx3.4.4人事管理模块的设计1、人事信息数据维护“人事信息数据维护”表单包括下列功能:数据录入、修改、删除、查询、浏览、保存、打印等。本表单左边是浏览窗口,便于用户浏览数据;右边是编辑窗口,主要用于输入、修改数据。本表单的主要代码及效果图如下:(1)“第一个”按钮的 click 事件代码:select rsb*记录指针移至首记录、禁止“第一个、上一个”按钮GO TOPthisform.Commandgroup1.cmdTop.Enabled=.F. thisform.Commandgroup1.cmdPrev.Enabled=.F.*
21、如果未到文件末尾,“下一个、最后一个”按钮有效IF NOT EOF()thisform.Commandgroup1.cmdNext.Enabled=.T. thisform.Commandgroup1.cmdBottom.Enabled=.T. ENDIF*刷新记录thisform.refresh(2)“前一个”按钮的 click 事件代码:SELECT rsb*如果到文件头,指针移至首记录、禁止“第一个、前一个”按钮SKIP -1IF BOF() GO TOPENDIF*如果未到文件尾,“下一个、最后一个”按钮有效IF NOT EOF()thisform.Commandgroup1.cmdN
22、ext.Enabled=.T. thisform.Commandgroup1.cmdBottom.Enabled=.T.(3)“删除”按钮的 click 事件代码:if sel=6delete endif(4)“查询”按钮的 click 事件代码:*查询提示标签、输入文本框可见thisform.label12.visible=.T. thisform.text6.visible=.T.*查询输入文本框清空并得到焦点thisform.text6.value= thisform.text6.setfocus()(5)“打印”按钮的 click 事件代码:report form rsb_bb1.fr
23、x preview for rsb. 编 号 =alltrim(thisform.text1.value)图 3-5 人事信息数据维护2、人事信息查询“人事信息查询”表单主要是用于查询职工的基本信息,用户看可以通过选项按钮组选择查询类别,可以通过员工号查询,姓名查询,部门查询等。本表单包含一个打印按钮,查询打印按钮用于打印查询到的员工的人事信息表。本表单主要的代码如下:Optionqroup1 的 click 事件代码:*选定查询类别后,设置各控件是否可见do casecase this.Value=1 thisform.label2.Visible=.T. thisform.Text1.Vi
24、sible=.T. thisform.label3.Visible=.F. thisform.Combo1.Visible=.F. thisform.label4.Visible=.F. thisform.label5.Visible=.F.thisform.Text2.Visible=.F. thisform.Text3.Visible=.F. thisform.Command4.Visible=.F.case this.Value=2 thisform.Label2.Visible=.T.thisform.Text1.Visible=.T. thisform.Label3.Visible=.F. thisform.Combo1.Visible=.F. thisform
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1