版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、云南电大五年制高职教育学生毕业作业(毕业设计)设计题目:企业工资管理系统设计与实现 专 业:计算机应用技术 班 级: 学 号: 姓 名: 指导老师: 完成时间: 2010年4月30日 摘 要开发企业工资管理系统的目的就是为了帮助企业财务部门能更好地管理本企业的员工工资,提高工作效率,实现企业工资信息管理的规范化和自动化。企业工资管理系统是典型的信息管理系统(mis),前台程序开发工具采用微软的vb6.0,后台数据库采用access数据库。vb6是一种面向对象的开发工具,具有组件丰富、语言简单、功能强大的优点。 access数据库具有与vb6.0无缝连接、操作简单、易于使用的优点。本系统实现了一
2、般工资管理系统对员工工资信息的浏览、添加、删除、修改和查询功能,能够完成对员工当月工资的结算,节省了大量的人工操作的工作量,自动完成众多的信息处理,减少了数据出现错误的几率,加强了工资记录的安全性和完整性。关键词:工资管理;属性;窗体; ado控件;面向对象目 录第一章 概 述11.1、企业工资管理开发的背景11.2、企业工资管理系统研发的目的与意义11.3、企业工资管理的应用现状2第二章 系统可行性分析研究32.1、技术上的可行性32.2、管理上的可行性32.3、系统的运行要求32.4、社会可行性42.5、 开发工具简介42.5.1、可视化设计42.5.2、事件驱动编程52.5.3、实现菜单
3、选项5第三章 系统需求分析.第四章 系统设计64.1、系统数据流程图分析:84.1.1、 系统总体e-r 图84.1.2、月库处理e-r图94.1.3、 标准库处理e-r图104.1.4、在职处理e-r图104.1.5、工资库月报数据流程图114.2、功能模块结构图12第五章 系统详细设计与实现135、 主窗体模块详细设计13第六章 在职员工工资维护196.1、在职员工工资项目修改模块196. 2、在职员工工资公式修改模块216. 3、在职员工人员增删模块256. 4、在职员工人员增删模块29第七章 系统测试31总 结32参考文献33第一章 概 述1.1、企业工资管理开发的背景在计算机诞生之前
4、,人们对帐目的管理一直采用的是纸质材料记录,人工统计和计算。例如,古时候所谓的“大户人家”,或是商号等等,都需要有专门的帐房先生来针对每个月的支出、收入等加以统计,并记录在帐册上。其中,对于“仆人”的月俸等管理便是其中相当重要的一个部分,常年累月地便积累了一大摞一大摞的帐册。这样的管理不但费时费力,也容易产生计算上的错误和各种疏漏;随着时代的变迁,这种混乱的情形有所改善,但采取的依然是人工操作,工作量大的时候,出现错误的机率也随之升高。当今社会,资金是企业生存的主要元素,资金的流动影响到企业的整体运作,企业员工的工资是企业资金管理的一个重要的组成部分,因为企业每个月都要涉及发放企业员工工资的问
5、题。而随着企业人员数量的增加,企业的工资管理也变得越来越复杂。企业员工的人数越多,工资的统计工作就越多,工资的发放困难就越大。如果能够实现工资管理的自动化,无疑将给企业管理部门带来很大的方便。例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高企业工资管理的效率,也是企业的科学化、正规化管理,与世界接轨的重要条件。这就对企业工资管理提出了新的要求,用计算机管理系统来管理企业工资已经成为目前的趋势,使用计算机可以高速,快捷地完成以上工作。在计算机联网后,数据在网上传递,可以实现数据共享,避免重复劳动,规范数据管理行为,从而提高了管理效率和水平。企业工资
6、管理系统便是以计算机为工具,通过对工资管理所需的信息管理,不仅把管理人员从繁琐的数据计算处理中解脱出来,而且优化了管理体系,使其高效化,简易化,智能化,也提高了透明度和互动性。传统的纸介材料的数据信息管理方式已经不适合现代企业公司的发展了,实现工资管理的系统化、规范化、自动化,将成为现代公司管理工资的首选。随着计算机的诞生和普及以及计算机网络的发展,我们就可以开发一个工资管理系统,用电脑代替大量的人工统计和计算,完成许多工资信息的处理,同时,使用电脑还可以安全地、完整地保存大量的工作记录。1.2、企业工资管理系统研发的目的与意义通过使用企业工资管理系统,使企业的工资管理工作系统化、规范化、自动
7、化、从而达到提高企业管理效率的目的。系统开发的总体任务是使办公人员可以轻松快捷地完成工资管理的任务。尽量利用企业现有的软硬件环境,采用先进的管理系统开发方案,从而达到充分利用企业现有资源,提高系统开发水平和应用效果的目的;设计一个企业工资的数据库管理系统,由计算机来代替人工执行一系列诸如增加新员工、删除旧员工、工资的修改、查询、统计和打印等操作。这样就使办公人员可以轻松快捷地完成工资管理的任务。系统符合企业工资管理的规定,满足企业相关人员日常使用的需要,并达到操作过程中的直观、方便、实用、安全等要求;系统采用模块化程序设计方法,既便于系统功能的各种组合和修改,又便于未参与开发的技术维护人员补充
8、、维护。1.3、企业工资管理的应用现状 随着我国国民经济建设的蓬勃发展和具有中国特色的社会主义市场经济体制的迅速完善,各个行业都在积极使用现代化的手段,不断改善服务质量,提高工作效率,这些都在很大程度上给企业提出越来越严峻的挑战,对企业体系无论是在行政职能、企业管理水平以及优质服务上都提出更高的要求。建设一个科学高效的信息管理系统是解决这一问题的必由之路。企业内部财务管理是该企业运用现代化技术创造更多更高的经济效益的主要因素之一。工资管理作为企业内部的一种财务管理也是如此,由于企业职工人数较多,每一位职工的具体实际情况也不尽相同,各项工资条款的发放,如果没有一个完整的管理系统来进行管理,那么势
9、必会给管理人员带来种种麻烦,因此类似工资管理系统之类的财务软件的开发势在必行。第二章 系统可行性分析研究企业工资管理是一项琐碎、复杂而又十分细致的工作,一般不允许发生差错。最初的工资统计和发放都是使用人工方式处理,工作量大的时候,出现错误的机率也随之升高,不仅花费财务人员大量的时间,而且往往由于抄写不慎,或者由于计算的疏忽,出现工资发放错误的现象。同时工资的发放具有较强的时间限制,必须严格按照单位规定的时间完成计算和发放工作。正是企业工资管理的这种重复性、规律性、时间性,使得企业工资管理计算机化成为可能。企业工资管理系统就是使用电脑代替大量的人工统计和计算,完成众多企业工资信息的处理,同时使用
10、电脑还可以安全地、完整地保存大量的企业工资记录。可行性研究的目的使用最小的代价在尽可能短的时间里确定问题是否能解决,通过复杂系统的规模与目标,研究与此类似的系统后,我们具体从下面两个方面考虑。2.1、技术上的可行性技术上的可行性分析主要分析现有技术条件能否顺利完成开发工作,软硬件配置能否满足开发者需要等,这一特点非常适合计算机的特点,发挥计算机的数据处理速度快,准确率高的优势,现代计算机硬件和软件技术的飞速发展,为系统的建设提供了技术条件。由于对企业工资管理系统这一类的企业财务系统进行开发已有一定的时期,有很多成功的实例,技术基础也已经非常雄厚,因而技术上的准备应该不成问题。2.2、管理上的可
11、行性主要是管理人员对开发信息系统是否支持,现有管理制度和方法是否科学,规章制度是否齐全,原始数据是否正确等,企业工资管理系统比较完善的规章制度和管理方法为系统的建设提供了保障。2.3、系统的运行要求(1)硬件要求设备名称 说 明处理器 奔腾iii以上,1024mb内 存 1024mb,内存越大,速度越快硬 盘 160gb(2)软件要求名 称 说 明操作系统 windows95/98,windows xp应用软件 visual basic 6.0(中文版)通过调查现在的计算机大多数的计算机都能达到奔腾4以上,512mb内存,硬盘都在160gb 以上以完全能够满足此系统的运行的要求,也是可行的。2
12、.4、社会可行性社会可行性研究是对系统投入使用后对社会可能带来的影响进行分析,比如是否为人们所接受,是否为社会带来利益。2.5、 开发工具简介微软公司的visual basic 6.0是windows应用程序开发工具,是目前最为广泛的、易学易用的面向对象的开发工具。visual basic提供了大量的控件,这些控件可用于设计界面和实现各种功能,减少了编程人员的工作量,也简化了界面设计过程,从而有效的提高了应用程序的运行效率和可靠性。因此,本系统使用ms visual basic 6.0开发。vb程序语言具有许多优秀的特性,用其设计应用程序时有两个基本特点:可视化设计和事件驱动编程。visual
13、 basic 系统除了一般高级语言所具有的一些名词术语外,还有几个系统常用的名词。其基本含义如下:视窗(form)视窗是进行人机交互的界面或接口,也叫窗体。对象 (object)对象是vb系统内部提供给设计者可以直接使用的处理输出的控制工具。事件 (events)事件是指用户或操作者对计算机进行的某一操作(如击键、单击或移动鼠标等)的行为或系统状态发生的变化。方法 (method)方法主要是指对一个对象使用某种作用的过程。它是在程序执行的过程中要计算机执行的某种操作。其程序的方法有show(显示)方法,hide(隐藏)方法,refresh(刷新)方法。过程 (procedure)过程是指经过定
14、义或说明的,或基于某一对象对应的事件所引发的程序段。模块 (module)模块是指一些运算量或过程进行声明或定义的一个集合。系统程序大体可分成四个模块:数据输入、根据查询、数据打印和通讯。 2.5.1、可视化设计同其他的一些可视化程序开发工具一样,vb具有可视化设计的特点,微软的word在刚刚进入市场时,同wps竞争的一个重要的功能砝码就是"所见即所得"的字处理功能,vb在设计应用程序界面时也可以说是"所见即所得".在设计时,头脑中所想象的应用程序界面,完全可以通过键盘鼠标以及徒手画出来,而不是编制大量的代码然后再编译生成,如果需要修改,也是利用键盘鼠标
15、和手画,而底层的一些程序代码由vb自动生成或修改。2.5.2、事件驱动编程windows操作系统出现以来,图形化的用户界面和多任务多进程的应用程序要求程序设计不能是单一性的,在使用vb设计应用程序时,必须首先确定应用程序如何同用户进行交互.例如发生鼠标单击、键盘输入等事件时,由用户编写的代码控制这些事件的响应,这就是所谓的事件驱动编程。2.5.3、实现菜单选项菜单是程序最重要的特性之一,大多数程序都依赖一个定义良好的菜单使程序易于使用和维护,visual basic 也提供了强大的创建菜单功能是程序更加标准。第三章 系统需求分析需求分析的过程可以说是一个对具体问题的反复理解和抽象的过程。理解就
16、是对现实问题的理解,要弄清楚究竟需要解决什么问题。抽象就是除去问题的表面,提取问题的本质,建立问题的逻辑模型,以便于以后阶段的系统的设计实现。需求分析阶段是软件产品生存命期中的一个重要阶段,其根本任务是确定用户对软件系统的需求。所谓需求是指用户对软件的功能和性能的要求,就是用户希望软件能做什么事情,完成什么样的功能,达到什么性能。通常需求分为两种类型:一种是功能性需求,一种是非功能性需求。功能性需求是指需要计算机系统解决的问题,也就是对数据的处理要求,这是一类最主要的需求。非功能性需求是指实际使用环境所要求的需求,往往是一些限制要求,例如:性能要求,可靠性要求,安全保密要求,等等。软件需求一般
17、包含三个层次:业务需求、用户需求和功能需求,还包括非功能需求。业务需求:反映了组织机构或客户对系统、产品高层次的目标要求,它们在项目视图与范围文档中予以说明。用户需求:描述了用户使用产品必须要完成的任务和具备的功能,这在使实例文档或方案脚本说明中予以说明。功能需求:定义了开发人员必须实现的软件功能,使得用户能完成他们的任务,从而满足其业务需求。本部分简明扼要的介绍了各个部分要实现的功能,搭好了设计的总体框架,使我们对要开发的系统能够更加系统的,全面的,确切的认识,下一步就可以进行系统的详细设计与具体功能的实现了。第四章 系统设计数据库是信息管理系统的后台,存储着所有的信息,在信息管理系统中有着
18、很重要的地位。数据库设计的好与坏,直接影响到这个系统的运行效率。良好的数据库设计,可以提高数据信息的存储效率,确保数据信息的完整性和一致性。针对企业工资信息管理系统的需求,通过对员工工资计算过程的内容分析,为本系统设计如下的数据项和数据结构:基本工资信息:包括工号、部门、姓名、卡号、应发1-14、代扣合计和实发现金。部门间信息:包括部门、应发1-20、应发合计、代扣1-14、代扣合计和实发现金等。计算公式信息:应发1-20、代扣1-14、实发现金。工资统计信息:包括统计名称、统计公式和统计条件等等。启动access 2000,创建新的数据库,命名为salary.mdb和person.mdb,保
19、存在要存放这个系统所有工程文件的文件夹中。在使用的时,要把应用程序和这两个数据库保存在同一个文件夹中。lxbzk表:字 段类 型长 度是否空工号数字15不能空部门文本50不能空姓名文本3不能空卡号 数字20不能空应发1文本50不能空应发2文本50不能空应发3文本50不能空应发4文本50不能空应发5文本50不能空应发文本50不能空应发14文本50不能空代扣合计货币5不能空实发现金货币5不能空lxbzzd表:字 段类 型长 度是否空应发1文本10不能空应发文本10不能空应发20文本10不能空代扣1文本10不能空代扣文本10不能空代扣14lxtjk表:字 段类 型长 度是否空统计名称文本10不能空统
20、计条件文本100不能空统计公式文本200不能空zzhzk表:字 段类 型长 度是否空部门文本30不能空应发1货币10不能空应发2货币10不能空应发货币10不能空应发20货币10应发合计货币10代扣1货币10代扣2货币10代扣货币10代扣14货币10代扣合计货币10实发现金货币104.1、系统数据流程图分析: 4.1.1、 系统总体e-r 图工资标准库处理工资月库处理工资临时发放企业工资管管理系统 4.1.1.企业工资管理系统e-r图 4.1.2、月库处理e-r图在库处理退休库处理离休库处理 4.1.2 月库处理e-r图4.1.3 标准库处理e-r图在职维护离休维护退休维护 4.1.3 标准库处
21、理e-r图在职处理4.1.4在职处理e-r图 4.1.4 在职处理e-r图4.1.5、工资库月报数据流程图工资库月报表在职离体退休标准库工资的处理报表的汇总报表的输出 4.1.5、工资库月报数据流程图4.2、功能模块结构图在职处理月库生成月库打开离休库处理退休处理生成上报文件月库工资处理标准库工资处理临时工资发放处理退出用户主界面企业工资管理在职维护离休维护退休维护标准库备份临时发放库的生成临时发放库打开报表输出数据维护临时发放项目的维护 4.2.、功能模块结构开发这个系统的目的就是帮助企业的财务主管部门提高工作效率,实现企业工资信息管理的系统化、规范化和自动化。能够认识人员管理系统、工资管理
22、系统相结合,真正实现企业高效、科学、现代化的员工管理。系统最终实现的主要功能如下。工资月库处理部分:包括月库生成、月库打开、在职库处理、离体库处理、退休库处理、生成上报文件、上报磁盘生成、关闭库、退出系统。工资标准库处理部分:包括在职维护、离体维护、退休维护和标准库备份。工资临时发放:包括临时发放库的生成、临发文件打开、数据维护、报表输出和临发项目的维护。第五章 系统详细设计与实现主界面是进行相关操作的开始。任何功能的操作都将从过里开始,程序设计的思路是按企业正常运作的模式开发的,所以功能比较强大,但因为是毕业设计,时间有限,所以在程序中是按在职、离休、退休对员工情况进行分类的,其各模块设计思
23、路基本一致,所以本程序在该章节中重点以在职员工的工资方式进行叙述,其它员工的工资只作简要说明。程序中部份模块未对其运行定义设计,故在使用中会出现不能打开现象。5、 主窗体模块详细设计主窗体选择使用下拉菜单多文档界面。使用这个窗体的好处是可以使程序更加有条理。对于一个多任务的应用程序,使用多文档窗体还可以减少占用的系统资源。主窗体设计的界面是用菜单编辑器做的,主要由月工资库处理、标准工资库处理、临时发放工资、其它和帮助这五个模块组成。界面效果如图:具体实现代码:dim retvaldim hxfscz as string * 53dim hxfsf as currencydim hxfdfze
24、as currencydim hxfrq as string * 8dim hxfbm as stringdim hxfxz as stringpublic sub cdkz() if hxfdbdk = true then zzkcl.enabled = true txkcl.enabled = true lxkcl.enabled = true scsbwj.enabled = true sbcpsc.enabled = true gbyk.enabled = true else zzkcl.enabled = false txkcl.enabled = false lxkcl.enabl
25、ed = false scsbwj.enabled = false sbcpsc.enabled = false gbyk.enabled = false end if if lsdbdk = true then lfsjxg.enabled = true lfbbsc.enabled = true lfbpsc.enabled = true lfsbsc.enabled = true closlfk.enabled = true lfsjtn.enabled = true else lfsjxg.enabled = false lfbbsc.enabled = false lfbpsc.en
26、abled = false lfsbsc.enabled = false closlfk.enabled = false lfsjtn.enabled = false end if private sub lfsjxg_click()load frm临发修改frm临发修改.datprimaryrs.databasename = lswjljfrm临发修改.datprimaryrs.recordsource = "select * from lfbzk order by 性质,部门,工号"frm临发修改.datprimaryrs.refreshfrm临发修改.show 1en
27、d subprivate sub lfxmwh_click()frmlfxm.show 1end subload frm数据查询frm数据查询.caption = " 离休 标准工资汇总库显示"frmmain.statusbar1.panels(1).text = " 注意:现在打开和处理的是 离休 标准工资汇总库"frm数据查询.datprimaryrs.databasename = xtlj & "bzxx.mdb"frm数据查询.datprimaryrs.recordsource = "select * fro
28、m lxhzk"tb1.movefirsthxfi = 1do while hxfi <= 34if len(trim(tb1.fields(hxfi - 1).value) > 0 thenfrm数据查询.lbllabels(hxfi + 3).caption = tb1.fields(hxfi - 1).value & ":"elsefrm数据查询.lbllabels(hxfi + 3).caption = " "end iffrm数据查询.lbllabels(hxfi + 3).visible = truefrm数据查
29、询.txtfields(hxfi + 3).visible = truefrm数据查询.txtfields(hxfi + 3).datafield = tb1.fields(hxfi - 1).name hxfi = hxfi + 1 loopfrm数据查询.label1.visible = truefrm数据查询.label2.visible = truefrm数据查询.label3.visible = truefrm数据查询.text1.visible = truefrm数据查询.text2.visible = truefrm数据查询.text3.visible = truefrm数据查询
30、.pb1.visible = falsefrm数据查询.datprimaryrs.refreshfrm数据查询.show 1 end if*private sub lxbzryzs_click()set db = ws.opendatabase(xtlj & "bzxx.mdb")set tb1 = db.openrecordset("lxbzzd", dbopentable)set tb2 = db.openrecordset("lxbzk", dbopentable)frmmain.statusbar1.panels(2)
31、.text = "共" & val(tb2.recordcount) & "记录"tb2.closeload frm数据修改frm数据修改.caption = " 离休 标准库数据修改"frmmain.statusbar1.panels(1).text = " 注意:现在打开和处理的是 离休 标准工资库"frm数据修改.datprimaryrs.databasename = xtlj & "bzxx.mdb"frm数据修改.datprimaryrs.recordsourc
32、e = "select * from lxbzk order by 部门,工号"frm数据修改.datprimaryrs.refreshif frm数据修改.datprimaryrs.recordset.recordcount = 0 thenfrm数据修改.datprimaryrs.recordset.addnewfrm数据修改.cmd保存.enabled = truefrm数据修改.cmd放弃.enabled = truefrm数据修改.cmd增加.enabled = falsefrm数据修改.cmd删除.enabled = falsefrm数据修改.cmd替换.ena
33、bled = falsefrm数据修改.cmd锁定.enabled = falsefrm数据修改.cmd关闭.enabled = falsefrm数据修改.cmd定位.enabled = false end iftb1.movefirst hxfi = 1 do while hxfi <= 34 if len(trim(tb1.fields(hxfi - 1).value) > 0 then frm数据修改.lbllabels(hxfi + 3).caption = trim(tb1.fields(hxfi - 1).value) & ":" frm数据
34、修改.lbllabels(hxfi + 3).alignment = 1 else frm数据修改.lbllabels(hxfi + 3).caption = " " end if frm数据修改.lbllabels(hxfi + 3).visible = true frm数据修改.txtfields(hxfi + 3).visible = true frm数据修改.txtfields(hxfi + 3).datafield = tb1.fields(hxfi - 1).name hxfi = hxfi + 1 loop frm数据修改.show 1 if hxfdbdk
35、= true then frmmain.statusbar1.panels(1).text = " 注意:现在打开和处理的是" & hxfyear & "年" & hxfmath & "月的工资库!" else frmmain.statusbar1.panels(1).text = " *未打开工资库*" end if db.close frmmain.statusbar1.panels(2).text = " "end subprivate sub sl_cli
36、ck()retval = shell("winmine.exe", 1)end subprivate sub yksc_click() if hxfdbdk = true then hxfyn = msgbox(hxfyear & "年" & hxfmath & "月" & "的工资库已打开,是否关闭?"vbokonly, "企业工资管理系统") if hxfyn = vbyes then frmmain.statusbar1.panels(1).text = &
37、quot; 注意:原打开的工资库已经被关闭!" frm月库生成.show 1 end if else frm月库生成.show 1 end if lsdbdk = false call cdkzend subprivate sub zzhzxs_click() set db = ws.opendatabase(dqklj) set tb1 = db.openrecordset("zzbzzd", dbopentable) set tb2 = db.openrecordset("zzhzk", dbopentable) if tb2.record
38、count = 0 then hxfyn = msgbox("库内无人员记录,不能继续,请先设置标准库后再生成!"vbokonly, "企业工资管理系统") db.close goto en: end if frmmain.statusbar1.panels(2).text = "共" & val(tb2.recordcount) & "记录" tb2.close load frm数据查询 frm数据查询.caption = hxfyear & "年" & hxf
39、math & "月 在职 工资汇总库" frmmain.statusbar1.panels(1).text = " 注意:现在打开和处理的是" & "年" & hxfmath & "月 在职 工资汇总库" frm数据查询.datprimaryrs.databasename = dqklj frm数据查询.datprimaryrs.recordsource = "select * from zzhzk" frm数据查询.datprimaryrs.refresh tb
40、1.movefirst hxfi = 1 do while hxfi <= 34 if len(trim(tb1.fields(hxfi - 1).value) > 0 then frm数据查询.lbllabels(hxfi + 3).caption = tb1.fields(hxfi - 1).value & ":" else frm数据查询.lbllabels(hxfi + 3).caption = " " end if frm数据查询.lbllabels(hxfi + 3).visible = true frm数据查询.txtf
41、ields(hxfi + 3).visible = true frm数据查询.txtfields(hxfi + 3).datafield = tb1.fields(hxfi - 1).name hxfi = hxfi + 1 loop frm数据查询.label1.visible = true frm数据查询.label2.visible = true frm数据查询.label3.visible = true frm数据查询.text1.visible = true frm数据查询.text2.visible = true frm数据查询.text3.visible = true frm数据
42、查询.pb1.visible = false frm数据查询.show 1 if hxfdbdk = true then frmmain.statusbar1.panels(1).text = " 注意:现在打开和处理的是" & hxfyear & "年" & hxfmath & "月的工资库!" else frmmain.statusbar1.panels(1).text = " *未打开工资库*" end if db.close frmmain.statusbar1.panels
43、(2).text = " "第六章 在职员工工资维护在职员工的工资是任何企业工资管理中最为复杂的一部份,人员变动、人员升迁等很多因素影响着在职员工的工资情况。所以程序也将此部分作为重点加以说明,目的是让我们通过这个程序来了解现代企业工资的运作。6.1、在职员工工资项目修改模块效果如图:对在职人员的工资组成部份进行详细定义,从而能实现员工工资的透明化管理,也能让员工清楚了解自已在企业中的所享受的待遇。具体代码实现过程:option explicitdim hxfjd as integerprivate sub cmd关闭_click()hxfi = 0do while hxf
44、i <= 33 if lenb(trim(txtfields(hxfi).text) = 2 then txtfields(hxfi).text = trim(txtfields(hxfi).text) & "" if lenb(trim(txtfields(hxfi).text) = 4 then txtfields(hxfi).text = trim(txtfields(hxfi).text) & "" if lenb(trim(txtfields(hxfi).text) = 6 then txtfields(hxfi).tex
45、t = trim(txtfields(hxfi).text) & "" hxfi = hxfi + 1loopscreen.mousepointer = vbdefaultunload meend subprivate sub datprimaryrs_error(dataerr as integer, response as integer) '错误处理程序代码置于此处 '想要忽略错误,注释掉下一行 '想要俘获它们,在此添加代码处理它们 msgbox "data error event hit err:" & e
46、rror$(dataerr) response = 0 '忽略错误end subprivate sub datprimaryrs_reposition() screen.mousepointer = vbdefault on error resume next '为 dynasets 和快照显示当前记录位置 datprimaryrs.caption = "record: " & (datprimaryrs.recordset.absoluteposition + 1)end subprivate sub datprimaryrs_validate(a
47、ction as integer, save as integer)'验证代码置于此处'下列动作发生时该事件被调用select case actioncase vbdataactionmovefirstcase vbdataactionmovepreviouscase vbdataactionmovenextcase vbdataactionmovelastcase vbdataactionaddnewcase vbdataactionupdatecase vbdataactiondeletecase vbdataactionfindcase vbdataactionbookm
48、arkcase vbdataactionclosescreen.mousepointer = vbdefault end select screen.mousepointer = vbhourglassend subprivate sub form_keydown(keycode as integer, shift as integer) if keycode = vbkeydown then if hxfjd < 33 then txtfields(hxfjd + 1).setfocus end if end if if keycode = vbkeyup then if hxfjd
49、>= 1 and hxfjd <= 33 then txtfields(hxfjd - 1).setfocus end if end ifend subprivate sub form_unload(cancel as integer)screen.mousepointer = vbdefaultend subprivate sub txtfields_gotfocus(index as integer) hxfjd = index textf txtfields(index)end subprivate sub txtfields_keypress(index as intege
50、r, keyascii as integer) if keyascii = 13 then if hxfjd < 33 then txtfields(hxfjd + 1).setfocus end if end ifend sub6.2、在职员工工资公式修改模块效果如图:公式修改主要是计算员工实发工资的工具,也就是说,员工每月领到的实际数企业是按照什么样的标准及计算方法产生的。具体代码实现过程:dim hxftjbj as booleandim hxfi as integeroption explicitprivate sub cmd保存_click() if len(trim(txtf
51、ields(0).text) > 0 and len(trim(txtfields(2).text) > 0 then datprimaryrs.updaterecord datprimaryrs.recordset.bookmark = datprimaryrs.recordset.lastmodified cmd删除.enabled = true cmd修改.enabled = true cmd关闭.enabled = true cmd保存.enabled = false cmd放弃.enabled = false cmd添加.enabled = true combo1.ena
52、bled = false com1.enabled = false com2.enabled = false txtfields(1).enabled = false txtfields(2).enabled = false frm公式修改.refresh else hxfyn = msgbox("统计字段和统计表达式不能为空!,请选择!", vbokonly, "企业工资管理系统") end if end subprivate sub cmd放弃_click() cmd删除.enabled = true cmd修改.enabled = true cmd关闭.enabled = true cmd保存.enabled = false cmd放弃.enabled = false cmd添加.enabled = true combo1.enabled = false com1.enabled = false com
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 《新员工培训课程》课件
- 湖北汽车工业学院科技学院《工业机器人》2021-2022学年第一学期期末试卷
- 紫癜风护理常规
- 《UPS电源简介》课件
- 皮肤科雾化治疗
- 混凝土打灰劳务合同(2篇)
- 粉尘防爆安全知识培训
- 《科技成果鉴定指南》课件
- 急诊外科腰痛治疗方案
- 《大感人事》课件
- 中国航天发展历史
- 临床常用血液成分与输血适应症
- 《燃烧性能测试》课件-第二节 氧指数测试
- DB32/T 4446-2023 公共机构能源托管规程
- 初中英语名词单复数专项训练题目
- 面神经微血管减压术护理
- 2.贵州省地方标准项目申报书
- “读思达”教学法在整本书阅读教学中的实践
- 盐酸右美托咪定鼻喷雾剂-临床用药解读
- HSK 2标准教程(完整版)
- 新HSK1-6词汇大纲文档
评论
0/150
提交评论