工资管理系统论文_第1页
工资管理系统论文_第2页
工资管理系统论文_第3页
工资管理系统论文_第4页
工资管理系统论文_第5页
已阅读5页,还剩26页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

工资管系论文毕业工资治理系统计与实现系专

别:业:

运算机应用工程系软件工程班

级:06软一班完成日期:2010.04.30

摘要随着我国国民经济建设的蓬勃进展和具有中国特色的社会主义市场经济体制的迅速完善各个行业都在积极使用现代化的治理工具不断改善企业的服务质量,提高工作效率。不管是行政职能,依旧生产运作的治理要求的不断提高,在专门大程度上使企业不得不改变传统的经营治理方式以适应快速进展的社会主义市场经济改变企业治理方式方法差不多成为企业进展的先决条件建设一个科学高效的信息治理系统是解决这一问题的必由之路。对企业内部的财务运用现代化技术进行治理,是提高工作效率的有效手段。工资治理作为企业内部财务治理的一个重要方面,也逐步被企业治理者所重视,由于企业的规模的不断扩大企业职工人数的不断增多使工资发放成为企业治理中的一个重课题再加上每一位职工的具体实际情形相同规章章制度的不断完善,增大了个人工资发放难度;每个人每月的工资都要通过工资制度的审核,这大大增加了治理人员的工作量过运算机治理系统对职职员资进行全面的统计与治理全面解决了工资治理过程中所遇到的各种问题同时克服了传统治理方式中的易出错等问题。工资治理系统成为企业现代化治理中的首选治理工具。关键词

工资治理系统;工资;治理工具

录第1引言错!未义签1.1本课题的研究意义

错误未义签1.2本论文的目的、内容及作者的要紧奉献

错未定义签1.2.1目的1.2.2内容

1.2.3作者的要紧奉献

第2治信系概2.1治理信息系统现状

22.2治理信息系统开发方法介绍

第3研现及计标3.1相近研究课题的特点及优缺点分析

63.2研究存在的问题及解决方法

3.3本课题要达到的设计目标

8第4总设104.1项目规划

104.2系统功能结构

104.3设计目标

10第5系设125.1开发运行环境

125.2数据库设计

第6主能块计6.1建立工程框架

136.2封装数据库6.3主窗口设计

6.4登录模块设计

18

6.5职员录入模块设计6.6用户治理模块设计

20错!未义签第7结与望286.1结论

参考献29

第1章引言1.1课题的究意义目前市面上流行的工资发放软件许多然而关于企事业单位的工资发放来说,不需要太大型的数据库系统。只需要一个操作方便,功能有用,能同时满足财务部门单位其他相关部门及代发单位三方对数据的治理及需求的系统我们的目标确实是在于开发一个功能有用,用户(财务部、其他相关部门、银行)操作方便,简单明了的工资发放软件。1.2本论文目的、内容作者的紧奉1.2.1目的目前市面上流行的工资发放软件许多然而关于企事业单位的工资发放来说,不需要太大型的数据库系统。只需要一个操作方便,功能有用,能同时满足财务部门单位其他相关部门及代发单位三方对数据的治理及需求的系统我们的目标确实是在于开发一个功能有用,用户(财务部、其他相关部门、银行)操作方便,简单明了的工资发放软件。1.2.2内容实现本单位财务部门对工资发放的集中治理可供财务人员对本单位的人职员资进行增加、删除、修改、查询、导入、导出文件、输出报表,并对系统的可登录人员进行治理时通过菜单关闭功能使本单位其他相关部门的人员对工资的数据编辑无法操作,只能通过查询或导出文件来了解本单位的工资发放情形;对工资发放中的应发工资合计扣个人所得税及个人实发工资等项目由系统自动进行运算同时本系统还可对工资发放情形进行多角度查询并转换成可与银行UNIX平台接口的数据形式以便于托付银行办理代发工资业务在登录治理方面财务人员以工资发放系统的治理人员身份登录并对本系统的可登录人员进行治理有权增加及删除本系统的登录人员进行自身密码的修改而本单位其他相关部门的可登录人员在登录本系统后则只能进行自身密码的修改而无权增加及删除用户。1.2.3作者的要紧奉献全程参与了此课题的研究与开发,包括分析,设计,编码,测试,文档等。

第2治理信息系统概述2.1治理信系统现状治理信息系统MIS)是一门边缘学科,集治理科学、信息科学、系统科学、现代通信技术和电子运算机技术于一体1985年,治理信息系统创始人,明尼苏达大学卡尔森治理学院的闻名教授戴维(Gordon.B.Davis给出了一个具有代表性的定“治理信息系统是一个利用运算机硬件和软手工作分析、打算、操纵和决策模型以及数据库的用户-机器系统。它能提供信息支持企业或组织的运行、治理和决策功能。随着网络技术的显现,治理信息系统又有了新的必恭必敬,基于网络的治理信息系统不断显现,治理信息系统的概念模型也发生了相应的变化,许多学者对治理信息系统给出了新的定义。例如劳顿认为:“治理信息系统是一个基于运算机的信息系统,它通过收处理储备和扩散信息支持组织的治理、决策、合作、操纵、分析活动,并使之可视化。因此,我们能够看出,治理系统系统具有几个差不多含义:(1治理信息系统不是一个单纯的软件系统,而是一个人-机系统,由人和机器协同工作。治理信息系统在支持企业或组织的各项治理活动中,治理人员负责将基础数据及时地输入到运算机运算机则依照企业或组织中的各层治理人员的要求对基础数据进行加工处理,并将所得到的信息输出。运算机不断地与最终用户进行着信息的交换,但在对数据的加工处理过程中又需要人的适当干预。(2)治理信息系统的治理过程确实是对数据进行惧、储备、加工处理、传递,并产生信息的过程,因此数据是治理信息系统的灵魂。治理信息系统运用了数据库的技术,对基础数据进行统一规划、储备,供各层治理人员使用,从而实现了数据的一致和共享。(3治理信息系统能够解决企业或组织所面临的问题。例如,治理信息系统能够处理企业产生经营活动的全过程,能够解决组织中数据处理效率问题,也能够解决财务治理决策过程等。治理信息系统应具有如下几个功能。(1)数据处理功能:数据处理是治理信息系统最差不多的功能,它包括对各种类型数据的收集、加工处理、传递、储备等工作。(2)实测功能:通过对数据的加工处理,能够随时了解各部门的实际运行情形,如各生产车间今天生产的产品数量、销售部同意的订单等。(3)推测功能:通过运用一定的数学方法和推测模型,对过去的数据进行分析,就可能对以后可能发生的情形进行推测,为高级治理人员进行治理决策提供

依据。(4)操纵功能:通过信息的反馈能够对整个企业生产经营的各个部门、各个环节的运行情形进行监测、和谐、操纵,保证系统的正常运行。目前,治理信息系统的应用差不多专门广泛,随着运算机技术、网络技术和通信技术的进展,治理信息系统的功能也日趋完善,并朝着智能化、网络化、集成化等方向进展。如办公自动化(OA子商务(EC家系统(ES算机集成制造系统(CIMS2.2治理信系统开发方介绍目前,常用的治理信息系统的开发方法有生命周期法、原型法和面对对象的开发方法。下面仅对原型法和面对对象的开发方法进行简单的描述。(1)原型法:原型法(Prototyping)是20世纪年代进展起来的,旨在改变生命周期法的缺点的一种系统开发方法。①原型法的差不多思想首选依照用户的要求,由用户和开发者共同确定系统的差不多要求和要紧功能,利用系统快速生成工具,建立一个系统模型。再在此基础上与用户交流,将模型不断补充,修改完善,如此反复,最终直至用户和开发者都比较中意为止,就形成了一个相对稳固、较为理想的治理信息系统。②原型法的开发过程采纳原型法开发治理信息系统能够分为如下几个时期:A、确定用户的差不多需求。由用户提出对新系统的差不多要求,如功能、差不多界面形式、所需的数据、应用范畴、运行环境等,开发者依照这些信息估算出开发该系统所需的费用,并建立简明的系统模型。B、开发初步的原型系统。系统开发人员依照用户的要求建立原型系统,但该系统只是一个初步的、不成熟的系统,从系统的工作效率上看也是不完善的。其要紧目的是为了描述开发者所明白得的用户的差不多需求。C、修改、评判原型系统。将建筑好的原型系统交给用户,并投入试运行,用户将使用过程中发觉的问题一一记录下来,并与开发人员进行交流。开发人员针对这些问题不断地对系统进行修改、扩充与完善,直至用户中意为止。③原型法的优缺点原型法的优点是开发周期短,费用较少,同时能够较有效地幸免因开发者和用户的认识隔阂所产生的失败,其缺点是系统的开发缺乏统一的规划和开发标

准,难以对系统的开发过程加以操纵。原型法一样适用于开发规模不大、不太复杂或需求经常发生变化的系统。(2)面向对象的开发方法面向对象(ObjectOriented的技术于20纪80年兴起,随后广泛地应用于运算机技术的几乎所有领域。面向对象的技术中最重要的概念是对象。面向对象是基于问题对象的自底向上的一种系统开发方法。在开发过程中,分析和设计时期独立于程序设计语言,信息系统模型设计好后,最终用具体的程序设计语言、数据库或硬件来实现。面向对象法最要紧的特点是对对象为基础,对象是分析问题和解决问题的核心。①面对对象法的开发过程面对对象法的开发过程一样分为四个时期:A、认识客观世界(如一个企业)中的对象以及行为,分别独立设计各个对象的实体。B、分析对象之间的联系和相互之间所传递的信息,由此构造客观世界(企业)所对应的信息治理系统的模型。C、由信息系统的模型转换成运算机软件系统的模型。D、由运算机软件系统的模型再转化成一个现实系统。②面向对象法的优缺点:面向对象法的优点是便于关心分析者、设计者和用户清晰地表达抽象概念,互相进行交流;交流特定的软件工具模块,直截了当地完成了从对象的描述到软件体系结构之间的转幸免了其它的方法在开发过程的客观世界描述和软件结构不一致性和复杂性问题,便利系统开发简单、统一,开发周期短,费用低。面向对象法的要紧缺点与原型法一样,因此这种方法也不适用于开发大的、复杂的系统。本系统在开发过程中具体是采纳了原型法和面向对象两种方法相结合的开发思路,力求在开发过程中尽量吸取这两种方法的长处,而克服它们的短处。第3章研究现状及设计目标3.1相近研课题的特点优缺点析传统的工资发放,多采纳手工的形式,既繁琐又易于出差错,随着电子技术的进展,工资发放多采纳电算化的方式进行治理,幸免进行简单的重复运算,从

而做到准确、快捷。为了适应那个要求,我们工作组通过详细的市场调查发觉市面上工资发放的软件繁多,竞争猛烈,为了幸免重复生产类似的软件产品,做出自己的特色,我们决定做一个切合单位工资发放实际要求的工资发放系统软件。3.2研究存的问题及解方法目前的可用的设计技术在设计此类系统上的数据库技术差不多专门成熟提供的开发工具也专门多,例如:VisualC++,VisualBasic,PowerBuilder,Dephi,visualfoxpro,它们差不多上专门好的数据库开发工具,差不多上可视化开发工具,功能强大,开发容易,开发周期短,关于本任务都能够胜任。Visual是一种可视化的、面对对象和条用事件驱动方式的结构化高级程序设计可用于开发环境下的种类应用程序它简单易学、效率高,且功能强大,能够与Windows专业开发工具相比美,而且程序开发人员不必具有C/C++编程基础。在Basic环境下,利用事件驱动的编程机制新颖易用的可视化设计工具使用内部的应用程序接口(API)函数,以及动态链接库(DLL)、动态数据交换DDE)、对象的链接与嵌入(OLE)、开放式数据访问(ODBC)等技术,能够高效、快速地开发出Windows环境下功能强大、图形界面丰富的应用软件系统。总的来说,Visual具有以下特点:可视化编程用传统程序设计语言设计程序时差不多上通过编写程序代码来设计用户界面在设计过程中看不到界面的实际显示成效必须编译后运行程序才能观看。假如对界面的成效不中意,还要回到程序中修改。有时候,这种编程-编译-修改的操作可能要反复多次,大大阻碍了软件开发效率。VisualBasic提供了可视化设计工具,把Windows界面设计的复杂性“封装起来开发人员不必为界面设计而编写大量程序代码只需要按设计要求的屏幕布局,用系统提供的工具,在屏幕上画出各种“部件图形对象,并设置这些图形对象的属性。VisualBasic自动产生界面设计代码,程序设计人员只需要编写实现程序功能的那部分代码,从而能够大大提高程序设计的效率。面向对象的程序设计:版以后的Visual持面向对象的程序设计,但它与一样的面向对象的程序设计语言C++)不完全相同。在一样的面向对象程序设计语言中象由程序代码和数据组成抽象的概念Visual则是应用面向对象的程序设计方法(OOP)程序和数据封装起来作为一个对象,并为每个对象给予应有的属性使对象成为实在的东西在设计对象时不必编写建立和描述每个对象的程序代码,而是用工具画在界面上,Basic动生成对象的程序代码并封装起来每个对象以图形方式显示在界面上差不多

上可视的。结构化程序设计语言Basic是在BASIC语言的基础上进展起来的,具有高级程序设计语言的语句结构,接近于自然语言和人类的逻辑思维方式。VisualBasic语句简单易明白,其编辑器支持彩色代码,可自动进行语法错误检查,同时具有功能强大且使用灵活的调试器和编译器。事件驱动编程机制:Visual通过事件来执行对象的操作。一个对象可能会产生多个事件每个事件都能够通过一段程序来响应例如命令按钮是一个对象,当用户单击该按钮时,将产生一个“单击“事件,而在产生该事件时将执行一段程序,用来实现指定的操作。在用VisualBasic设计大型应用软件时,不必建立具有明显开始和终止的程序,而是编写若干个微小的子程序,即过程。这些过程分别面向不同的对象,由用户操作引发某个事件来驱动完成某种特定的功能者由事件驱动程序调用通用过程来执行指定的操作,如此能够方便编程人员,提高效率。访问数据库VisualBasic具有强大的数据库治理功能,利用数据控件和数据库治理窗口,能够直截了当建立或处理MicrosoftAccess格式的数据库,并提供了强大的数据储备和检索功能。同时,VisualBasic还能直截了当编辑和访问其他外部数据库Paradox等数据库格式都能够用VisualBasic编辑和处理。Visual提供开放式数据连接,即功能,可通过直截了当访问或建立连接的方式使用并操作后台大型网络数据库,如SQLOracle等。在应用程序中,能够使用结构化查询语言据标准,直截了当访问服务器上的数据库提供了简单的面向对象的库操作指令和多用户数据库访问的加锁机制和网络数据库的编程技术机上运行的数据库提供网络接口,以便在分布式环境中快速而有效地实现客户服务器(client/)方案。动态数据交换(DDE利用动态数据交换(DynamicDataExchange)技术,能够把一种应用程序中的数据动态地链接到另一种应用程序中两种完全不同的应用程序建立起一条动态数据链路。当原始数据变化时,能够自动更新链接的数据。Basic提供了动态数据交换的编程技术够在应用程序中与其他应用程序建立动态数据交换,在不同的应用程序之间进行通信。对象的链接与嵌入(OLE)对象的链接与嵌入(OLE)将每个应用程序都看做是一个对象(object),将不同的对象链接(link)起来,再嵌入(embed)某个应用程序中,从而能够得到具有

声音像像画字等各种信息的集合式的文件技术是公司对象技术的战略它把多个应用程序合为一体将每个应用程序看做是一个对象进行链接和嵌入是一种应用程序一体化的技术利用OLE技术能够方便地建立复合式文档(compounddocument),这种文档由来自多个不同应用程序的对象组成文档中的每个对象都与原先的应用程序相联系并可执行与原先应用程序完全相同的操作。动态链接库(DLL)VisualBasic是一种高级程序设计语言,不具备低级语言的功能,对访问机器硬件的操作不太容易实现但它能够通过动态链接库技术将或汇编语言编写的程序加入到VisualBasic应用程序中,能够像调用内部函数一样调用其他语言编写的函数此外通过动态链接库还能够调用应用程序接口(API)函数,实现SDK所具有的功能。3.3本课题达到的设计标实现数据库治理,数据库内包含有单位部门名称、序号、姓名、账号、应发工资合计、基础工资、职务工资、级别工资、补助工资、奖金、福利、代扣失业保险金、代扣养老保险金、代扣住房公积金、代扣个人所得税、实发个人工资等等数据项还包括登录人员登录密码等数据项通过读取数据库的数据项来治理单位人员的工资发放情形财务部门人员有权新建工资发放人员记录添加人员的各项工资明细数据关于人员应发工资合计代扣个人所得税个人实发工资等需运算的工资项目则由系统自动实现。通过读取数据库的数据项来了解单位人员的工资发放情形统的登录人员可按自身对数据的需求情形自主设定查询条件从而达到对工资数据的多角度查询;同时,可导出工资数据,并可将工资数据转换成可与银行平台接口的数据形式以便于托付银行办理代发工资业务。通过读取数据库的数据项来操纵系统的登录情形系统自动检查核对登录人员和密码的一致性财务部门的人员作为治理员登录本系统除能够修改自身密码外还有权决定增加及删除本系统的可登录人员系统的其他可登录人员在登录本系统后则只能进行自身密码的修改。本系统的最终目的是为了能够对工资发放进行有效的治理务部门人员能够高效快捷地对工资数据进行编辑幸免进行简单的重复运算而单位其他相关部门人员可多角度查询本单位的工资发放情形而使工资发放数据既得到安全操纵又得到宏观治理。

第4总体设计4.1项目规工资治理系统是由差不多信息治理、工资查询、工资治理、系统治理和关心等几个功能模块组成,规划系统功能模块如下:

差不多信息治理模块差不多信息治理模块要紧包括职员录入、职员删除部分。

工资查询模块工资查询模块要紧包括差不多工资查询、浮动工资查询、加班/休假查询、总体查询4个部分。

工资治理模块工资治理模块要紧包括工资发放治理、差不多工资治理、浮动工资治3个部分。

系统治理模块系统治理模块要紧包括用户治理、修改密码、退出系统个部分。

关心模块关心模块要紧包括关于1个部分。4.2系统功结构工资系统的功能结构如图1所。工资理系统基本息管理基

工资询加浮

工资理工基

系统理

帮助员工录入

员工删除

本工资查

动工资查

班休假查

总体查询

资发放管

本工资管

动工资管

用户管理

修改密码

退出系统

关于询

理图

系统功能图4.3设计目

本系统是依照中小企业的实际需求而开发的完全能够实现企业对客户的自动化治理,通过本系统能够达到以下目标:

系统运行稳固,安全可靠。界面设计美观,人机交互界面友好。信息查询灵活、方便、快捷、准确,数据储备安全可靠。满足键盘和鼠标的双重操作,完全支持回车键。采纳多种方式查询数据。操作员能够随时修改自己的口令。对用户输入的数据系统进行严格的数据检验可能排除人为的错误。数据保密性强,为每个用户设置相应的权限级别。

第5系统设计5.1开发运环境1.硬件要求CPU:300MHz以上的处理器。内存:128MB,举荐256MB。硬盘:150MB以上剩余空间。显示像素:最低800*600,最佳成效1024*7682.软件要求操作系统:Windows2000/NT/XP/CE。数据库:SQLServer2000。5.2开数据统计1.数据库概要说明数据库GZFFXT中包括职员基础信息表、职员差不多工资表、职员浮动工资表、职员加班/休假表、工资发放明细表、用户表个数据表。图2所示的即为本系统中数据库中的数据表结构图数据表结构图包含系统所有数据表。能够清晰地反应数据库信息。图2

数据库概要说明2.要紧数据表的结构数据库中的数据表请参见附录B。

第6章系要紧功能模块设计6.1建立工框架在VisualC++中建立文档治理系统的差不多框架,步骤如下:(1)单击菜单File-->New”命令,打开New”对话框,单击Projects”选项卡,选择“MFCAppWizard(exe)输入工程名,并设置路径,如图6.3所示。图6.3“New”对话框(2)单击“OK”按钮AppWizard-Step1”对话框差不多打开,如图6.4所示,选项“Dialogbase接着单击“Next”按钮。图6.4“MFCAppWizard-Step”话框(3)在弹出的“24”对话框中,输入对话框标题,如图5所示。

图6.5“MFCAppWizard-Stepof”对话框(4)在接下来的对话框中保持默认的选项。设置好的属性如图所示,单击“OK”按钮后,就完成了新建工程。图6.6设计好的工程属性6.2口设计1.菜单资源设计主窗口菜单设置的要紧步骤如下:(1)单击“ResourceView”选项卡,右键单击GZGLXTResources选项,选择“Insert”菜单项,打开“InsertResource”窗口,如图6.7示。

图6.7“InsertResource”口(2)选择“Menu”文件夹,单击New”按钮,在GZGLXTResources名目下新增一个Menu名目项,菜ID为IDR_MENU1。双击此菜单,对此菜单项的属性进行设计。如图6.8所示。图6.8设菜单属性图2.客户区设计(1)打开对话框IDD_GZGLXT_DIALOG属性窗口,在对话框中添加1个Picture控件,用来存放图片。在Menu组合框中选择。如图9所示。图6.9系主界面(2)预先在下边留出状态栏,声明、类对象实体代码

如下。CTimet;CStatusBarCtrlm_StatusBar;引用的外部变量externCCzyxxbffxxb;(3)在OnInitDialog成员函数中添加状态栏。//TODO:Addinitializationheret=CTime::GetCurrentTime();intwidth[]={200,370,500};&width[0]);吉林省明日科技"StatusText;前用户:strdate;strdate.Format("当前时刻:%s",t.Format("%y-%m-%d"));m_StatusBar.SetText(strdate,0,2);TRUE;//returnyousettocontrol(4)打开窗口,为菜单ID_EXIT添加代码。程序调用函数关闭对话框,退出系统。vCGZGLXTDlg::OnExit(){//TODO:Addyourcommandhandler}6.3登录模设计1.实现目标登录模块功能是完成用户登录本系统的操作户登录对话框的设计如图所示图6.10登对话框2.设计步骤(1向项目中添加一个新Dialog资源资源为IDD_LOGINIDD_LOGIN

对话框资源中单击鼠标右键,执行弹出快捷菜单的“Properties”菜单命令,打开“Dialog”对话框。在Properties”对话框中选General选项卡,更换其“Caption”文本框内容为“用户登录(2Controls面板上向Dialog资源中添加21个Picture个Edit,更换资源的属性,并为资源设置相对应的变量,如表所示。表6.1资源设置IDProperties

MemberVariablesTypeMemberIDC_EDIT1

默认

CStringm_nameIDC_EDIT2PassWordTRUEIDOKCaption登录IDCANCELCaption退出IDC_STATICTypeBitmap3.代码分析(1)引用的外部变量。externCCzyxxbffxxb;(2)响应“登录”按钮的代码。voidCLogin::OnOK(){

CStringm_pwd//TODO:Addextravalidationhere//将对话框中编辑框的数据读取到成员变量中UpdateData(true);if(m_name==""){MessageBox("请输入用户名");return;}//假如读取数据和用户输入不同,则返回if(ffxxb.HaveCzy(m_name,m_pwd)!=1){MessageBox("用户名或密码错误!");return;}ffxxb.SetCzyName(m_name);jb="1";//判定当前用户级别if(ffxxb.HaveCzyjb(m_name,m_pwd,jb)==1){ffxxb.SetCzyjb(jb);}CDialog::OnOK();}下面在主对话框中添加代码使对话框在启动时第一打开登录对话框在主窗口选择OnInitDialog函数函数将打开登录对话框如用户不是通过单登

录”按钮关闭对话框,则调用OnOK函数关闭主对话框,具体代码如下:BOOLCWordGLXTDlg::OnInitDialog(){CDialog::OnInitDialog();//TODO:AddinitializationhereCLogingin;if(gin.DoModal()!=IDOK)TRUE;//returnyousettocontrol}6.4职员录模块设计1.实现目标添加职员信息,职员录入对话框的设计如图所示图6.11职录入对话框2.设计步骤(1)向项目中添加一个新Dialog资源,资源为IDD_YGTJK。在IDD_YGTJK对话框资源中单击鼠标右键,执行弹出快捷菜单的Properties”菜单命令,打“Dialog话框Properties话框中选择General选项卡,更换其“Caption”文本框内容为“职员录入(2)从板上向源中添加个、2Combo、2Edit,更换资源的属性,并为资源设置相对应的变量,如表所示。表6.2资源设置IDProperties

MemberVariablesTypeMemberIDC_EDIT1IDC_EDIT2

默认默认

CStringm_idCStringm_nameIDC_COMBO1TypeBitmapIDC_COMBO2Caption退出IDOKCaption添加IDCANCELCaption退出3.代码分析

CComboBoxm_sexCComboBoxM_whcd(1打开ClassWizard在OnInitDialog成,向OnInitDialog添加代码如下。BOOLCYgjctjdlg::OnInitDialog(){

CDialog::OnInitDialog();//TODO:AddinitializationhereSetIcon(m_hIcon,m_sex.AddString("男");m_sex.AddString("女");m_whcd.InsertString(0,"专科");m_whcd.InsertString(1,"本科");m_whcd.InsertString(2,"研究生");TRUE;//returnunlesssetfocustoacontrol//EXCEPTION:OCXPagesreturn}(2)当用户单击“添加“按钮时,实现添加职员功能,其响应代码如下CYgjctjdlg::OnOK(){//TODO:AddhereCYgjcxxbxxb;UpdateData(true);if(m_id==""){MessageBox("编号不能为空");}if(m_name==""){MessageBox("姓名不能为空");}{MessageBox("职员编号已存在"}xxb.SetYGid(m_id);xxb.SetYGxm(m_name);if(sex==""){MessageBox("性别不能为空");}//组合框中读取文本m_sex.GetLBText(m_sex.GetCurSel(),strsex);xxb.SetSex(strsex);

{MessageBox("文化程度不能为空");}m_whcd.GetLBText(m_whcd.GetCurSel(),strwhcd);//浮动工资表添加编号、姓名xmb;xmb.SetYGid(m_id);xmb.SetYGxm(m_name);xmb.sql_insert();//差不多工资表添加编号、姓名gzb.SetYGid(m_id);gzb.SetYGxm(m_name);//加班休假表添加编号、姓名sjb;sjb.SetYGid(m_id);}6.5职职员添加模块1.实现目标添加职员实际发放的工资情形,职职员资添加对话框设计如图所示。图6.12职员资添加对话框2.设计步骤(1)向项目中添加一个新Dialog资源,资源ID为IDD_YGGONGZITJ在

IDD_YGGONGZITJ对话框击鼠标右键,执行弹出快捷菜单的”菜单命令,打“DialogProperties”对话框。在“DialogProperties”对话框中选择General选项卡,更换其“”文本框内容为“职职员资添加(2)从板上向源中添加、17个Edit、2个Button控件,更换资源的属性,并为资源设置相对应的变量,如表所示。表6.3资源设置IDProperties

MemberVariablesTypeMemberIDC_EDIT1IDC_EDIT2IDC_EDIT3IDC_EDIT4IDC_EDIT5IDC_EDIT6IDC_EDIT7IDC_EDIT8IDC_EDIT9

默认默认默认默认默认默认默认默认默认

CStringm_idCStringm_nameintm_jbgzintm_zwgzintm_glgzintm_zfbzintm_shbzintm_bxfintm_jiabtsIDC_EDIT10Read-onlyTRUEIDC_EDIT11默认IDC_EDIT12Read-onlyTRUEIDC_EDIT13默认IDC_EDIT14默认IDC_EDIT15默认IDC_EDIT16Read-onlyTRUEIDC_EDIT17Read-onlyTRUEIDOKCaption添加IDCANCELCaption退出IDC_BUTTONsyyeCaption上月余额IDC_BUTTONyfgzCaption应发工资3.代码分析

CEditm_jiabgzintm_sjtsCEditm_sjgzintm_ylbxjintm_grsdsintm_sfgzCEditm_yfgzCEditm_syye(1)双击IDC_EDIT9控件,自动生OnChangeEdit9函数,实现用户添加加班天数时,加班工资自动运算并显示,具体代码如下:v{//TODO:IfthisaRICHEDITcontrol,controlwill//sendthisnotificationyoutheCDialog::OnInitDialog()//function//withflagmask.UpdateData(true);str.Format("%d",m_jiabts*40);

//TODO:Addyourcontrolhandlerhere}(2)双击“上月余额钮,系统自动添加消息响应函数,具体代码如下。{//TODO:AddyourcontrolhandlerhereUpdateData(true);if(m_id==""){MessageBox("请先填写职员编号");}ADOConnm_AdoConn;m_AdoConn.OnInitADOConn();t=intm,y;m=t.GetMonth()-1;if(m==0){m=12;y=y-1;}mxb;if(mxb.Havesyye(m_id,y,m)==1){*fromgzffmxbyear(sjian)='%i'andm_AdoConn.GetRecordSet((_bstr_t)sql);str=(char*)(_bstr_t)m_AdoConn.m_pRecordset->GetCollect("Yu_E");}{m_syye.SetWindowText("0");}}

在头文件中添加下列代码。CTimet;()双击“应发工资”按钮,系统自动添加消息响应函数,具体代码如下:CYggztjdlg::OnBUTTONyfgz(){//TODO:AddyourcontrolhandlerhereUpdateData(true);if(syye==""){MessageBox("请先添加上月余额");}intyfgz;yfgz=atoi(syye)+m_jbgz+m_glgz+m_zwgz+m_shbz+m_zfbz-m_ylbxj;yfgz+=(-m_bxf+m_jiabts*40-m_sjts*40-m_grsds);str.Format("%d",yfgz);m_yfgz.SetWindowText(str);}(4)为添加”按钮添加代码,实现添加职职员资功能,代码如下:CYggztjdlg::OnOK(){//TODO:AddhereUpdateData(true);CYgjcxxbxxb;yfgz;if(m_id==""){MessageBox("编号不能为空");}if(xxb.HaveId(m_id)!=1){MessageBox("职员编号不存在"}if(m_name==""){MessageBox("姓名不能为空");

}if(xxb.Havename(m_id,m_name)!=1){MessageBox("职员不存在"}if(yfgz==""){MessageBox("应发工资不能为空");}mxb;mxb.SetYGid(m_id);mxb.SetYGxm(m_name);mxb.SetGLgz(m_glgz);mxb.SetJBgz(m_jbgz);mxb.SetYLbxj(m_ylbxj);mxb.SetZWgz(m_zwgz);mxb.SetBXf(m_bxf);mxb.SetGRsds(m_grsds);mxb.SetSHbz(m_shbz);mxb.SetZFbz(m_zfbz);intjiabgz=m_jiabts*40;mxb.SetSjts(m_sjts);intsjkk;sjkk=m_sjts*40;mxb.SetYFje(atoi(yfgz));mxb.sql_insert();sjb;sjb.SetJiaBts(m_jiabts);sjb.SetSjts(m_sjts);sjb.SetSJkk(sjkk);sjb.sql_update(m_id);}6.6用户治模块设计1.实现目标

实现新建、删除用户功能,用户治理对话框设计如图所示。图6.13用治理对话框2.设计步骤(1项目中添加一个新资源ID为对话框资源中单击鼠标右键,执行弹出快捷菜单的Properties”菜单命令,打“Dialog话框Properties话框中选择General选项卡,更换其“Caption”文本框内容为“用户治理(2)从Controls面板上向源中添加4个Static、1个Combo、3个、1控件,更换资源的属性,并为资源设置相对应的变量,如表6.4所示表6.4资源设置IDProperties

MemberVariablesTypeMemberIDC_EDIT1

默认

CStringm_nameIDC_EDIT2PasswordtrueIDC_EDIT3PasswordtrueIDC_COMBO1默认IDOKCaption添加IDC_BUTTON1Caption删除IDCANCELCaption退出3.代码分析

CStringm_pwdCStringm_pwd1CComboBoxm_jb(1)添加OnInitDialog()函数,初始化Combo控件,集体码如下:BOOLCXinjyhdlg::OnInitDialog(){CDialog::OnInitDialog();//TODO:AddinitializationhereSetIcon(m_hIcon,m_jb.AddString("系统

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论