企业工资管理系统论文.doc_第1页
企业工资管理系统论文.doc_第2页
企业工资管理系统论文.doc_第3页
企业工资管理系统论文.doc_第4页
企业工资管理系统论文.doc_第5页
已阅读5页,还剩35页未读 继续免费阅读

下载本文档

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

文档简介

西南科技大学高等教育自学考试毕业设计(论文)题目名称:企业工资管理系统 层 次:本科准考证号: 011110300502 指导教师:朱小云 学生姓名: 佟豪 技术职务:副教授 学生专业:信息管理与服务 助学中心名称:云南国防工业职业技术学院西南科技大学高等教育自学考试办公室制摘 要企业的工资管理是公司管理的一个重要内容。随着企业人员数量增加,企业的工资管理工作也变得越来越复杂。工资管理既涉及到企业劳动人事的管理,同时也是企业财务管理的重要组成部分。工资管理需要和人事管理相联系,同时连接工时考勤和医疗保险等等,来生成企业每个职工的基本工资、津贴、医疗保险、保险费、实际发放工资等。资金是企业生存的主要元素,资金的流动影响到企业的整体运作,企业员工的工资是企业资金管理的一个重要的组成部分。早期的工资统计和发放都是使用人工方式处理纸质材料,不仅花费财务人员大量的时间且不易保存,往往由于个人的因素抄写不慎或计算疏忽,出现工资发放错误的现象。早期工资管理多采取纸质材料和具有较强的时间限制。基于以上原因,企业工资管理系统使用电脑安全保存、快速计算、全面统计,实现工资管理的系统化、规范化、自动化。企业工资管理系统是典型的信息管理系统(MIS),前台程序开发工具采用微软的VB6,后台数据库采用Access数据库。VB6是一种面向对象的开发工具,具有组件丰富、语言简单、功能强大的优点。 Access数据库具有与VB6无缝连接、操作简单、易于使用的优点。运行结果证明,本企业工资管理系统极大提高了工作效率,节省了人力和物力,最终满足企业财务管理、员工工资发放的需要,同时也成为现代化企业管理的标志关键词:工资管理、信息管理、数据查询、数据库AbstractEnterprise wage management is an important element of corporate governance. With the increasing number of business people, corporate payroll has also become increasingly complex. Payroll covers both labor and personnel management, enterprise financial management is also an important component. Wage management needs and personnel management linked to the same time, working hours, attendance and health insurance connections, etc., to generate business for each employees basic pay, allowances, medical insurance, insurance premiums, the actual payment of wages and so on. Funds are the key elements of business survival, impact on the flow of funds to the enterprises overall operation, The wages of employees of enterprise capital management is an important component. Early wage statistics and distribution of both paper-based materials, use of artificial manner, not only finance staff to spend a lot of time and do not keep well, often due to personal factors inadvertently copied or calculations neglect the phenomenon of error occurs payment of wages. Early wage administration to take a more paper-based materials and has a strong time constraints. For these reasons, enterprise computer security payroll system uses to save, fast calculation, comprehensive statistics, the realization of the systematic salary management, standardization and automation. Wage management system is a typical enterprise information management System (MIS), foreground program development tools using Microsoft VB6, back-end database using Access database. VB6 is an object-oriented development tools, with components rich in language simple, powerful advantages. Access database with VB6 with a seamless connection, simple operation, easy to use. Running results show that this corporate payroll system, greatly increasing efficiency and save manpower and material resources, and ultimately to meet the enterprise financial management, payroll needs, but also become a symbol of modern enterprise managementKeywords: Wage Management、Information Management、Data Query Database目 录第一章绪论4 1.1数据库管理系统4 1.2 企业工资管理系统4 1.3 开发工具简介4第二章企业工资管理系统需求分析5 2.1 应用需求分析6 2.2 组织结构图6 2.3系统目标6 2.4应用现状调查6 2.5业务总体流程调查7第三章人事工资管理系统总体设计8 3.1系统功能模块分析8 3.2系统功能划分8 3.2.1人事管理功能8 3.2.2工资管理功能8 3.2.3系统维护功能9 3.3系统功能模块图9 3.4系统数据库设计10第四章 企业工资管理系统应用程序设计15 4.1 “登录模块”详细设计15 4.2“主窗体”模块详细设计15 4.3各项子模块详细设计16 4.4 各项子模块编写要点26第五章 结束语35参考文献36致 谢37第一章 绪论1.1数据库管理系统数据库管理系统(database management system)是一种操纵和管理数据库的大型软件,是用于建立、使用和维护数据库,简称DMS。 DBMS是数据库系统的核心组成部分。对数据库的一切操作,包括定义、更新及各种控制,都是通过DBMS进行的。DBMS总是基于某种数据模型,可以把DBMS看成是某种数据模型在计算机系统上的具体实现。根据数据模型的不同,DBMS可以分成层次型、网状型、关系型、面向对象型等。MS Access 2000就是一种关系型数据库管理系统。关系模型主要是用二维表格结构表达实体集,用外键表示实体间联系。关系模型是由若干个关系模式组成的集合。关系模式相当于前面提到的记录类型,每个关系实际上是一张二维表格。关系模型和层次、网状模型的最大判别是用关键码而不是用指针导航数据,表格简单用户易懂,编程时并不涉及存储结构,访问技术等细节。SQL语言是关系型数据库的标准化语言,已得到了广泛的应用。1.2 企业工资管理系统企业工资管理是一项琐碎、复杂而又十分细致的工作,一般不允许发生差错。最初的工资统计和发放都是使用人工方式处理,工作量大的时候,出现错误的机率也随之升高,不仅花费财务人员大量的时间,而且往往由于抄写不慎,或者由于计算的疏忽,出现工资发放错误的现象。同时工资的发放具有较强的时间限制,必须严格按照单位规定的时间完成计算和发放工作。正是企业工资管理的这种重复性、规律性、时间性,使得企业工资管理计算机化成为可能。企业工资管理系统就是使用电脑代替大量的人工统计和计算,完成众多企业工资信息的处理,同时使用电脑还可以安全地、完整地保存大量的企业工资记录。1.3 开发工具简介微软公司的Visual Basic 6.0是Windows1应用程序开发工具,是目前最为广泛的、易学易用的面向对象的开发工具。Visual Basic提供了大量的控件,这些控件可用于设计界面和实现各种功能,减少了编程人员的工作量,也简化了界面设计过程,从而有效的提高了应用程序的运行效率和可靠性。因此,本系统使用MS Visual Basic 6.0开发。第二章 企业工资管理系统需求分析 2.1 应用需求分析需求分析是开发企业工资管理系统的关键性阶段,是一个从不断认识和逐步细化的过程,是下一阶段的工作基础,是为下一阶段进行物理方案设计、解决“怎么做”提供依据,其关键性主要体现在“理解需求”和“表达需求”两方面。通过对现行系统的详细调研,主要是从系统的角度理解用户的需要,确定新系统的综合要求,并提出这些需求的实现条件以及需求应达到的标准,也就是确定新系统要做什么,做到什么程度。这些需求包括:(1)功能需求。确定新系统应做什么,这是最主要的需求。(2)性能需求。给出所开发的新系统的技术性能指标,包括存储容量限制、运行时间限制、安全保密性等。(3)环境需求。这是对系统运行以及所处环境的要求。例如,在硬件方面采用什么机型、有什么硬件设备等;在软件方面,采用什么支持系统运行的系统软件(指操作系统、数据库管理系统)。(4)未来需求。这类要求是指目前不属于系统开发的范围,但将来随着外界环境的变化以及系统的发展可能会提出的要求。了解这类要求的目的是在开发过程中,可对系统将来可能的扩展与修改做准备。一旦需要时,就比较容易进行补充和修改了。2.2 组织结构图图2.1 某公司的组织结构图2.3系统目标采用公司现有的软硬件软件及科学的管理系统开发方案,建立某中型人事工资管理系统,实现移动人事工资管理的计算机自动化。系统应符合公司人事、工资管理制度,并达到操作直观、方便、实用、安全等要求。2.4应用现状调查姆前,公司使用的人事工资管理系统采用的是DOS环境下的Foxbase数据库,界面不友好,不能适应移动公司发展的需要。2.5业务总体流程调查维护员工基本信息维护员工工资信息数据统计表格制作出盘结束开始图2.2 系统流程图维护员工基本信息:人事管理主要负责人员基本信息的维护,包括新进员工档案的建立,员工信息的修改。公司工资管理基本流程如下:数据来源:将各部门送达的员工工资信息包括基本工资、奖金、水电费等作为数据来源,分为新增员工工资数据和老员工每月修改数据。数据的输入:由工作人员通过新员工本月工资增加和老员工上月工资表修改完成。数据的统计:由工作人员通过对修改后的上月工资表进行计算得到每个人的实发工资以及总金额。表格的制作:由工作人员以修改、计算后的在上月工资表为蓝本生成与银行进行数据交换的软件即出盘。同时可打印工资报表。第三章 人事工资管理系统总体设计3.1系统功能模块分析开发这个系统的目的就是帮助企业的财务主管部门提高工作效率,实现企业工资信息管理的系统化、规范化和自动化。能够和认识管理系统、考勤管理系统相结合,真正实现企业高效、科学、现代化的员工管理。系统最终实现的主要功能如下。企业工资信息设置部分:包括设置员工的基本工资和其他项目的金额,如奖金等。并且负责设置员工工资的计算公式。企业工资信息管理部分:包括统计出勤、计算工资、查询工资和导出工资表。系统部分:包括添加用户和修改密码。3.2系统功能划分整个系统从总体上分为人事管理、工资管理、系统维护三大部分,每一部分应实现的功能如下: 3.2.1人事管理功能新员工档案的输入:员工基本信息维护:包括修改、删除(删除员工只是将该员工登记为无效,并不要求从表中删除).员工基本信息查看:员工基本信息查询:支持多条件查询,可以选择某一部门、某一职位、某一职称、学历、性别等进行查询,也可以组合查询。人事状况曲线:企业员工花名册:3.2.2工资管理功能新员工工资新增:员工工资修改:出盘:按所规定的格式生成与银行进行数据交换的软件,一般为文本文件出盘出错回滚:工资短信:将员工本月工资信息通过短信发出,并通知领工资时间。3.2.3系统维护功能部门信息维护:实现灵活的增减部门信息职务信息维护:实现灵活的增减职务信息职称信息维护:实现灵活的增减职称信息工资账目维护:能够灵活的改变员工的薪水账目。用户管理:包括新增用户、删除用户、修改用户密码等。3.3系统功能模块图新增用户修改密码删除用户工资短信新员工工资新增老员工工资维护出 盘工资报表工资账目维护职务信息维护部门信息维护职称信息维护用户管理新员工档案的新增员工基本信息维护员工基本信息查看员工基本信息查询人事状况曲线分析企业员工花名册人事工资管理系统工资管理模块系统维护模块人事管理模块图3.1 系统功能模块图3.4系统数据库设计数据库是信息管理系统的后台,存储着所有的信息,在信息管理系统中有着很重要的地位。数据库设计的好与坏,直接影响到这个系统的运行效率。良好的数据库设计,可以提高数据信息的存储效率,确保数据信息的完整性和一致性。针对企业工资信息管理系统的需求,通过对员工工资计算过程的内容分析,为本系统设计如下的数据项和数据结构:基本工资信息:包括员工编号和基本工资(元/小时)。其他项目信息:包括员工编号、奖金、津贴、福利、扣发等。计算公式信息:包括加班费的百分比、出差工资、旷工、迟到早退扣发等。出勤统计信息:包括员工编号、姓名、统计日期、出勤天数、迟到早退次数、加班天数、加班天数等。工资统计信息:包括员工编号、姓名、统计日期、基本工资、奖金、津贴、福利,加班费、出差费、扣发、总额等。启动Access 2000,创建新的数据库,命名为Salary.mdb和Person.mdb,保存在要存放这个系统所有工程文件的文件夹中。在使用的时,要把应用程序和这两个数据库保存在同一个文件夹中。表 3.1 员工出勤统计信息表字 段类 型长 度是否空说 明id自动编号长整型不能空记录编号stuffid文本50不能空员工编号stuffname文本50不能空员工姓名recordmonth日期/时间不能空统计时间attendance数字长整型不能空出勤天数lateearly数字长整型不能空迟到早退次数absent数字长整型不能空旷工次数overtimecom数字长整型不能空正常加班次数overtimespe数字长整型不能空特殊加班次数errand数字长整型不能空出差次数表 3.2员工工资计算公式信息表字 段类 型长 度是否空说 明overtimecom数字长整型不能空正常加班工资百分比overtimespe数字长整型不能空特殊加班工资百分比errand数字长整型不能空出差工资id自动编号长整型不能空记录编号absent数字长整型不能空旷工工资le数字长整型不能空迟到早退表 3.3员工其他项目设置字 段类 型长 度是否空说 明id自动编号长整型不能空记录编号stuffid文本50不能空员工编号yearmonth日期/时间不能空年月type数字长整型不能空类型name文本50能空类型money货币货币不能空名称remark备注能空备注sposition文本50不能空员工职务salary货币货币不能空基本工资表 3.4员工工资统计信息表字 段类 型长 度是否空说 明id自动编号长整型不能空记录编号stuffid文本50不能空员工编号stuffname文本50不能空员工姓名yearmonth日期/时间不能空时间basicsalary货币货币基本工资bonus货币货币奖金welfare货币货币福利allowance货币货币津贴abatement货币货币扣发lesub货币货币迟到早退扣发absentsub货币货币旷工扣发overtime货币货币加班费errand货币货币出差费others货币货币其他金额total货币货币总额表 3.5员工信息表字 段类 型长 度是否空说 明sid文本50能空员工编号sname文本50能空员工姓名sgender文本50能空性别splace文本50能空籍贯sage数字长整型不能空年龄sbirthday日期/时间不能空生日sdegree文本50能空学历sspecial文本50能空专业saddress文本50能空住址scode文本50能空邮编stel文本50能空电话semail文本50能空EmailsworkTime日期/时间不能空参加工作时间sintime日期/时间不能空进入公司时间sdept文本50能空部门spaytime日期/时间不能空起薪时间sposition文本50能空职务sremark文本50能空备注表 3.6用户信息表字 段类 型长 度是否空说 明userid文本50不能空用户名称userpwd文本50不能空用户密码第四章 企业工资管理系统应用程序设计4.1 “登录模块”详细设计 登录模块的详细设计主要是用户登录的一个界面,判断登录的用户是管理员还是普通用户,进入后将面对的是主界面,从而进行相关的操作。 登录的界面主要由用户名和密码的信息,还有一些标题设置,确定和取消的按钮组成。通过标题可以知道此系统的大概内容,由此,登录界面的设计完成。 图4.1人事工资管理系统登录界面4.2“主窗体”模块详细设计在这个项目中,选择使用多文档界面。使用这个窗体的好处是可以使程序更加有条理。对于一个多任务的应用程序,使用多文档窗体还可以减少占用的系统资源。主窗体设计的界面是用菜单编辑器做的,主要由系统、工资信息设置、工资信息管理和关于这四个大模块组成。主窗体是进行相关操作的主界面。在这几个里,管理员有所有的权利进行各种操作。 图4.2 工资管理系统主界面4.3各项子模块详细设计选择“系统”“添加用户”菜单,在添加用户的窗体里,输入新的用户名称和密码后,单击“确定”按钮,系统将会添加新的用户。 sql = insert into userinfo (userid,userpwd) values( & username sql = sql & , & password & ) Call transactsql(sql, salary) MsgBox 添加成功, vbOKOnly + vbExclamation, 添加结果 username.Text = password.Text = confirmpwd.Text = username.SetFocus 图4.3用户维护窗口选择“系统”“修改密码”菜单,在修改密码的窗体里,输入旧密码和2次输入新密码后,单击“确定”按钮,系统将会更改当前用户的密码。userpassword = newpwdsql = update userinfo set userpwd= & newpwd & where userid= & strusername & Call transactsql(sql, salary)MsgBox 密码已经修改, vbOKOnly + vbExclamation, 修改结果图4.4密码修改窗口选择“工资信息设置”“基本工资设置”菜单设置员工的基本工资,可以根据员工的编号,或者根据员工职务设置基本工资,设置的基本工资为每个小时的工资。Set rs = getrs(sql, salary)If rs.EOF = False Thensql = delete from salarysetting where stuffid= & Mstuffid.Text & Call transactsql(sql, salary)End Ifrs.Closeid = Mstuffid.TextCall addrecordMsgBox 已经设置基本工资, vbOKOnly + vbExclamation, 添加结果Call initsql = select * from salarysettingCall frmresult.basictopicCall frmresult.showbasic(sql)frmresult.Showfrmresult.ZOrder 0Me.ZOrder 0图4.5基本工资设置窗口选择“工资信息设置”“其他项目设置”菜单,在其他项目设置的窗体中,设置员工当月的奖金、津贴、福利等项目。sql = select * from salaryother If ichangeflag = 1 Then Call add MsgBox 已经添加记录, vbOKOnly + vbExclamation, 提示 Call frmresult.othertopic Call frmresult.showother(sql) frmresult.Show Unload Me Else If Me.optionbonus.Value = True Then itype = 1 ElseIf Me.optionallowance.Value = True Then itype = 2 ElseIf Me.optionwelfare.Value = True Then itype = 3 ElseIf Me.optionabatement.Value = True Then itype = 4 ElseIf Me.optionothers.Value = True Then itype = 5 resumdate = recordtime sql = delete from salaryother where stuffid= & Mid.Text sql = sql & and YearMonth=# & recordtime & # and sql = sql & Type= & itype Call transactsql(sql, Salary) Call add Call frmsumsalary.resumsalary(resumdate) sql = select * from salaryother Call frmresult.othertopic Call frmresult.showother(sql) frmresult.Show Unload Me End If选择“工资信息设置”“工资计算公式设置”菜单,在这个计算公式窗体中设置员工实际发放工资的计算公式。If Me.textovertimecom = And IsNumeric(Me.textovertimecom) = True Then MsgBox 请输入正常加班工资百分比, vbOKOnly + vbExclamation, 提示 Me.textovertimecom = Me.textovertimecom.SetFocus ElseIf Me.textovertimespe = And IsNumeric(Me.textovertimespe) = False Then MsgBox 请输入特殊加班工资百分比, vbOKOnly + vbExclamation, 提示 Me.textovertimespe = Me.textovertimespe.SetFocus ElseIf Me.texterrand = And IsNumeric(Me.texterrand) = False Then MsgBox 请输入出差工资, vbOKOnly + vbExclamation, 提示 Me.texterrand = Me.texterrand.SetFocus ElseIf Me.textabsent = And IsNumeric(Me.textabsent) = False Then MsgBox 请输入旷工扣发工资, vbOKOnly + vbExclamation, 提示 Me.textabsent = Me.textabsent.SetFocus ElseIf Me.textle = And IsNumeric(Me.textle) = False Then MsgBox 请输入迟到早退扣发工资, vbOKOnly + vbExclamation, 提示 Me.textle = Me.textle.SetFocus Else Call setvalue Call init End If图4.6 工资结算公式窗口选择“工资信息管理”“出勤统计”菜单,在统计出勤记录窗体中选择需要统计记录的月份。firstday = Year(Date) & - & Mmonth.Text & -1days = DateDiff(d, Year(Date) & - & Mmonth.Text & -1, _ Year(Date) & - & Mmonth.Text + 1 & -1)lastday = Year(Date) & - & Mmonth.Text & - & dayssql = select * from attendancestatistics where recordmonth between #sql = sql & firstday & # and # & lastday & #Set rsrecord = getrs(sql, salary)If rsrecord.EOF = False Then MsgBox 已经统计, vbOKOnly + vbExclamation, 提示 frmaresult.Show frmaresult.ZOrder 0 rsrecord.Close Unload Me Exit Sub End If sql = select * from attendanceinfo where adate between # sql = sql & firstday & # and # & lastday & # Set rsrecord = getrs(sql, person) If rsrecord.EOF = False Then sql = select sid,sname from stuffinfo order by sid Set rsperson = getrs(sql, person)图4.7 出勤记录窗口选择月份后单击“确定”按钮,如果系统已经统计过该月份的记录,那么会出现如下图所示的统计结果信息列表。如果系统没有统计过,那么系统就会开始统计记录,然后显示如图所示的统计结果信息列表。If strusername admin Thensql = select sid from stuffinfo where sname= & strusername & Set rs = getrs(sql, salary)sd = rs(0)sql = select * from attendancestatistics where stuffid= & sd & Me.Adodc1.ConnectionString =provider=microsoft.jet.oledb.4.0;Datasource=& App.Path & salary.mdb Me.Adodc1.RecordSource = sqlMe.Adodc1.RefreshSet Me.DataGrid1.DataSource = Me.Adodc1.RecordsetMe.DataGrid1.RefreshElsesql = select * from attendancestatisticsMe.Adodc1.ConnectionString=provider=microsoft.jet.oledb.4.0;Datasource=& App.Path & salary.mdbMe.Adodc1.RecordSource = sqlMe.Adodc1.RefreshSet Me.DataGrid1.DataSource = Me.Adodc1.RecordsetMe.DataGrid1.Refresh End If图4.8 员工出勤结果窗口选择“工资信息管理”“计算实发工资”菜单,在这个窗体中选择需要统计的月份。选择统计月份后,单击“开始统计”按钮,系统如果已经统计了该月份的工资,系统会显示工资信息列表窗体。如果系统还没有统计工资,那么系统开始统计工资,然后在信息结果列表窗体中显示统计结果。If Mmonth.Text = 4 Then firstday = Year(Date) & - & Mmonth.Text & -1 days = DateDiff(d, Year(Date) & - & Mmonth.Text & -1, _ Year(Date) & - & Mmonth.Text + 1 & -1) lastday = Year(Date) & - & Mmonth.Text & - & days Call sumsalary(firstday, lastday) sql = select * from salarystatistics frmresult.SSTab1.Caption = 员工工资统计列表 Call frmresult.listtopic Call frmresult.showdata(sql) frmresult.Caption = 统计结果列表 frmresult.ZOrder 0 Unload MeElse MsgBox 这个月的工资未统计, vbOKOnly + vbExclamation, 提示End If选择“工资信息管理”“查询工资”菜单,系统显示如图的查询信息窗体,系统默认的是查询出数据库中所有的记录(当管理员进入的时候),当从“员工编号”下拉列表中选择一个员工编号后,单击“查询单人”按钮,就会查询出符合这个员工编号的记录;如果需要返回查询所有信息,单击“查询所有”按钮,系统就会返回所有员工的信息。在“员工工资统计列表”中单击鼠标右键,会弹出下图的菜单,在“员工其他项目列表”中单击鼠标右键也会出现下图的菜单。图4.9员工其他项目列表图图4.10工资统计结果图选择“工资信息管理”“导出工资表”菜单,会出现下图的“导出记录”窗体中选择需要导出工资的月份。选择月份和保存位置后,单击“导出”按钮,系统会开始导出数据。图4.11 导出记录图单击“导出”按钮打开导出的文件,单击“取消”按钮回到系统。图4.12 导出的工资记录图4.4 各项子模块编写要点在登录的这个窗体里,我做的特点是:只要在数据库里有用户信息的,都可以登录,然后显示相关自己的信息,而管理员显示所有的信息。当输入的用户名或密码不正确的时候,会出现如下的对话框: 或 图4.13 警告窗口在主窗体的设计中,我在系统的下拉菜单里包括有添加用户、修改密码和退出系统。在这个模块里普通用户只有修改自己的密码的权利。在添加用户的窗体里:添加3个标签、3个文本框和2个命令按钮,然后设置它们相关的属性。在修改密码的窗体里:添加了3个标签,用来显示信息;3个文本框用来输入用户名称和用户密码;2个按钮用来确定和取消操作,然后设置它们的属性。在工资信息设置的下拉菜单里包括有基本工资信息设置、其他项目信息设置和计算公式设置。在这个模块里,普通用户没有任何权利进行相关的操作。在基本工资窗体里:添加了2个选项按钮、2个下拉列表、2个标签、1个文本框和2个按钮,然后设置它们的属性。在其他项目设置的窗体里:使用了一个DTPicker控件获得添加记录的时间,要使用这个控件需要添加部件类库,选择“工程部件”命令,选择Microsoft Windows Common Controls-2 6.0(sp4)项,然后设置相关的属性。在工资信息管理的下拉菜单里包括有统计出勤信息、计算实发工资、查询工资和导出工资表。在这个模块里,普通用户有统计出勤信息和查询工资的权利,但是都显示的是自己的信息。在出勤统计窗体里:添加一个下拉列表、一个标签和2个命令按钮,然后设置相关的属性。在出勤结果信息列表的窗体里:使用了Adodc控件和DataGrid控件,控件的Visible属性一定要设置为False。在计算实发工资窗体里添加的控件和统计出勤记录窗体的控件相同。在工资统计列表窗体里:使用了SSTab控件,在每一个标签上添加一个MSFlexGrid控件,然后设置它们的属性。在导出工资表的窗体中使用了CommondDialog控件,要使用这个控件需要在“控件”窗体中,选择Microsoft Common Dialog Control6.0(sp3)项,同时因为数据表格是导出到Excel,所以需要添加引用。选择“工程引用”菜单,在“引用”窗体中选择Microsoft Excel 9.0 Object Library项,这样才能够成功导入到Excel。在这个窗体里,我做的特点是:权利分工明确。当管理员进入的时候他有所有的权利,单击哪个模块就会弹出相对应的窗体。而普通用户则不能,我把它进行了权限设置,会弹出权限的对话框。 图4.14 权限警告窗口在添加用户的窗体里,如果输入的用户密码和确认密码不一致,将出现一个警告对话框: 图4.18 用户口令警告窗口然后输入与用户密码相同的密码,我这里的密码都是以*的形式表达,是不可见的。添加的用户将保存在数据库的userinfo里。单击“取消”按钮就卸载此窗体,添加用户的过程到此完成。在修改密码的窗体里,我要注重讲解一下:当输入的旧密码与登录时的密码不一致将出现提示对话框(如图一),当输入的“确认新密码”和“输入新密码”的密码不一致时也将出现警告对话框(如图二)。我在做这个窗体时遇到了一个问题:就是输入的新密码确认后,当你再一次的进入修改密码窗体输入旧密码时,如果输入的是刚刚修改过的密码,就会出现错误。经过一段时间的思考,我发现原因是修改过的密码没有覆盖登录时的密码,所以会出现问题。我觉得这是一个很大的问题,在别的书上可能没注意到这一点,所以我要注重的讲一下,这是我做这个窗体时的最大体会。在建立基本工资窗体时,这个窗体会在两个地方使用到,一个就是添加,另一个就是修改,在窗体载入时系统应自动判断状态。选择员工编号或选择职务,然后填写工资金额,单击“确定”按钮,系统就会按照选择的方式,设置员工的基本工资。在做基本工资这个窗体时,我的想法是:当你在修改基本工资的信息,首先都要从数据库中调出相关的信息,然后把它删除掉,再从数据库中的员工信息表中调出所要的信息,然后再一次的添加所要设置的信息。当你没输入员工编号的时候,会出现下图的对话框; 图4.19 员工编号提示窗口当没输入员工的职务时会出现错误的信息。在建立其他项目设置的窗体时,也在两个地方使用,即添加和修改,在载入时也需要判断状态。选择员工编号,再选择需要添加的项目和进额,单击“确定”按钮,即可添加其他项目。在其他项目设置这个窗体里,我用了一个Frame控件和几个optionButton控件,目的在于:在添加其他项目时,只能有一个设置是有效的,而且还可以添加其他的项目,还有备注等等,这些都便于记录。这里还有一个DTPicker控件是用来记录添加其他项目的时间,我觉得这个控件非常好。还有就是每次添加成功后,系统需要初始化,更新一下。在设置完这个窗体后将会弹出查询工资的窗体。在建立工资计算公式的窗体时,输入内容后,单击“确定”按钮,设置计算公式中使用的数字。在计算公式设置的窗体里,单击“恢复默

温馨提示

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

评论

0/150

提交评论