基于VB的工资管理系统_第1页
基于VB的工资管理系统_第2页
基于VB的工资管理系统_第3页
基于VB的工资管理系统_第4页
基于VB的工资管理系统_第5页
已阅读5页,还剩42页未读 继续免费阅读

下载本文档

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

文档简介

1、南昌航大高职学院毕业论文 工资管理系统南昌航空工业学院高等职业技术学院毕业设计(论文)任务书、毕业设计(论文)题目:工资管理系统、毕 业设计(论文)使用的原始资料(数据)及设计技术要求:利用Visual Basic6.0及Microsoft Access2000数据库技术对企业员工工资的基本信息进行管理,要求进行用户需求分析,功能模块的设计,对部门、员工及工资的基本信息进行添加、修改、删除、查询及打印等功能。、毕 业设计(论文)工作内容:1. 查找资料,撰写开题报告。2. 设计系统主界面。3. 完成部门管理、员工基本信息管理模块的设计。4. 对软件进行调试与测试。、主 要参考资料:1刘韬等,编

2、著.Visual Basic 6.0数据库系统开发实例导航.北京:清华大学出版社, 20032 丰岚等,编著.手把手教你开发管理信息系统.北京:北京希望电子出版设,20023 求是科技.Visual Basic6.0数据库开发技术与工程实践.北京:人民邮电出版社,2004 专 业 班 学生 李慧明日期: 自 2007 年 2 月 26 日 至 2007 年 6 月 15 日指导教师 兼职教师或答疑教师(并指出所负责的部分):专业主任 开题报告毕业课题名称:工资管理系统一选题的依据及课题的意义:随着计算机技术的普及,数据信息处理技术得到了空前发展,人们处理大量数据的能力越来越强,大量以前必需由人

3、工处理的工作现在都可以由计算机代劳。早期的工资统计和发放都是使用人工方式处理纸质材料,不仅花费财务人员大量的时间且不易保存,往往由于个人的因素抄写不慎或计算疏忽,出现工资发放错误的现象。早期工资管理多采取纸质材料和具有较强的时间限制。基于以上原因,企业工资管理系统使用电脑安全保存、快速计算、全面统计,实现工资管理的系统化、规范化、自动化。二国外研究概况及发展趋势:20世纪80年代后期,进入到数据管理阶段。该阶段的计算机系统广泛应用于企业管理。同时工资管理系统已经由原来的人工管理走入了计算机管理的时代,作为信息管理主要工具的数据库已经成为举足轻重的角色。数据库就是存放数据的仓库,数据按一定的规律

4、存放在计算机中,在科学技术飞速发展的今天人们越来越依赖计算机把现实中的事物抽象成数据然后以记录的形式加以保存。换个角度看数据库是长期存储在计算机内的,有组织的,可共享的数据集合。它具有较小的冗余度,较高的系数据独立性和易扩展性等特征,可以让多个用户在不同的权限下使用。这样用数据库技术来管理工资是一种趋势。三研究内容及实验方案;研究内容: 本课题的研究内容是对数据库理论及软件工程理论的研究,并利用所学的知识将这些理论运用到实践中来,即用这两大理论开发一套工资管理系统。这套系统包含以下几个功能模块:1工资信息设置 2 工资信息管理 3. 系统其功能模块图如下所示:企业工资管理系统系统部分企业工资信

5、息设置企业工资信息管理修改密码基本工资设置其他工资设置工资公式设置计算实发工资查询工资退出系统出勤统计添加用户导出工资表 图一 系统功能模块图本人研究的是以下几个功能模块:(1)工资信息设置这个模块的作用是包括设置员工的基本工资和其他项目的金额,如奖金等。并且负责设置员工工资的计算公式.(2)工资信息管理这个模块包含的信息是包括统计出勤、计算工资、查询工资和导出工资表。四目标,主要特色及工作进度目标:在WINDOWS系统下,运用 VB6.0和ACCESS2000数据库进行开发,实现工资管理系统。主要特色:易操作,外观新颖,界面友好,探索性较强。工作进度:第1至3周:收集相关资料,进行系统方案设

6、计,写出开题报告第4至8周:实现各部分模块功能。 第9至14周:整体调试并进行必要修改。第15至18周:测试所有功能,写论文。五参考文献1 张立科,Visual Basic 6.0数据库开发技术与工程实践,人民邮电出版 社,2004.4月2 赵增敏,王庆建,ACCESS2000实用教程,电子工业出版设,2002.6月3 牛勇,VB编程篇,电子工业出版设,2004.4月4 徐士良,计算机软件技术基础,清华大学出版社,2002.2工资管理系统 学生姓名:徐波 班级:049042-22指导老师:江晶摘要:企业的工资管理是公司管理的一个重要内容。随着企业人员数量增加,企业的工资管理工作也变得越来越复杂

7、。工资管理既涉及到企业劳动人事的管理,同时也是企业财务管理的重要组成部分。工资管理需要和人事管理相联系,同时连接工时考勤和医疗保险等等,来生成企业每个职工的基本工资、津贴、医疗保险、保险费、实际发放工资等。资金是企业生存的主要元素,资金的流动影响到企业的整体运作,企业员工的工资是企业资金管理的一个重要的组成部分。早期的工资统计和发放都是使用人工方式处理纸质材料,不仅花费财务人员大量的时间且不易保存,往往由于个人的因素抄写不慎或计算疏忽,出现工资发放错误的现象。早期工资管理多采取纸质材料和具有较强的时间限制。基于以上原因,企业工资管理系统使用电脑安全保存、快速计算、全面统计,实现工资管理的系统化

8、、规范化、自动化。企业工资管理系统是典型的信息管理系统(MIS),前台程序开发工具采用微软的VB6,后台数据库采用Access数据库。VB6是一种面向对象的开发工具,具有组件丰富、语言简单、功能强大的优点。 Access数据库具有与VB6无缝连接、操作简单、易于使用的优点。运行结果证明,本企业工资管理系统极大提高了工作效率,节省了人力和物力,最终满足企业财务管理、员工工资发放的需要,同时也成为现代化企业管理的标志。关键词:VB 工资管理 信息管理 数据查询 数据库 指导老师 目 录第一章 绪论81.2 企业工资管理系统8第二章 工资管理系统设计分析92.1 应用需求分析92.2 系统功能模块划

9、分102.3系统数据库设计12第三章 工资管理系统应用程序设计1731 “登录模块”详细设计1732 “主窗体”模块详细设计20.各项子模块详细设计243.3.1 “设置基本工资”窗体设计243.3.2 “其他项目设置”窗体设计263.3.3 “工资计算公式设置”窗体设计293.3.4 “计算实发工资”窗体设计313.3.5 “查询工资“窗体设计333.3.6 “导出工资表”窗体设计3434 各项子模块编写要点35第四章软件调试与测试45第五章 总结46参考文献47第一章 绪论1.1 数据库管理系统数据库管理系统(DBMS)是指数据库系统中管理数据的软件系统。DBMS是数据库系统的核心组成部分

10、。对数据库的一切操作,包括定义、更新及各种控制,都是通过DBMS进行的。DBMS总是基于某种数据模型,可以把DBMS看成是某种数据模型在计算机系统上的具体实现。根据数据模型的不同,DBMS可以分成层次型、网状型、关系型、面向对象型等。MS Access 2000就是一种关系型数据库管理系统。关系模型主要是用二维表格结构表达实体集,用外键表示实体间联系。关系模型是由若干个关系模式组成的集合。关系模式相当于前面提到的记录类型,每个关系实际上是一张二维表格。关系模型和层次、网状模型的最大判别是用关键码而不是用指针导航数据,表格简单用户易懂,编程时并不涉及存储结构,访问技术等细节。SQL语言是关系型数

11、据库的标准化语言,已得到了广泛的应用。1.2 企业工资管理系统企业工资管理是一项琐碎、复杂而又十分细致的工作,一般不允许发生差错。最初的工资统计和发放都是使用人工方式处理,工作量大的时候,出现错误的机率也随之升高,不仅花费财务人员大量的时间,而且往往由于抄写不慎,或者由于计算的疏忽,出现工资发放错误的现象。同时工资的发放具有较强的时间限制,必须严格按照单位规定的时间完成计算和发放工作。正是企业工资管理的这种重复性、规律性、时间性,使得企业工资管理计算机化成为可能。企业工资管理系统就是使用电脑代替大量的人工统计和计算,完成众多企业工资信息的处理,同时使用电脑还可以安全地、完整地保存大量的企业工资

12、记录。第二章 工资管理系统设计分析2.1 应用需求分析需求分析的过程可以说是一个对具体问题的反复理解和抽象的过程。理解就是对现实问题的理解,要弄清楚究竟需要解决什么问题。抽象就是除去问题的表面,提取问题的本质,建立问题的逻辑模型,以便于以后阶段的系统的设计实现。需求分析阶段是软件产品生存命期中的一个重要阶段,其根本任务是确定用户对软件系统的需求。所谓需求是指用户对软件的功能和性能的要求,就是用户希望软件能什么事情,完成什么样的功能,达到什么性能。通常需求分为两种类型:一种是功能性需求,一种是非功能性需求,这一点也需要有一种清楚的认识。功能性需求是指需要计算机系统解决的问题,也就是对数据的处理要

13、求,这是一类最主要的需求。非功能性需求是指实际使用环境所要求的需求,往往是一些限制要求,例如:性能要求,可靠性要求,安全保密要求,等等。工资管理既涉及到企业劳动人事的管理,同时也是企业财务管理的重要组成部分。工资管理需要和人事管理相联系,同时连接工时考勤和医疗保险等等,来生成企业每个职工的基本工资、津贴、医疗保险、保险费、实际发放工资等。资金是企业生存的主要元素,资金的流动影响到企业的整体运作,企业员工的工资是企业资金管理的一个重要的组成部分。早期的工资统计和发放都是使用人工方式处理纸质材料,不仅花费财务人员大量的时间且不易保存,往往由于个人的因素抄写不慎或计算疏忽,出现工资发放错误的现象。早

14、期工资管理多采取纸质材料和具有较强的时间限制。基于以上原因,企业工资管理系统使用电脑安全保存、快速计算、全面统计,实现工资管理的系统化、规范化、自动化。企业工资管理系统是典型的信息管理系统(MIS),前台程序开发工具采用微软的VB6,后台数据库采用Access数据库。VB6是一种面向对象的开发工具,具有组件丰富、语言简单、功能强大的优点。 Access数据库具有与VB6无缝连接、操作简单、易于使用的优点。运行结果证明,本企业工资管理系统极大提高了工作效率,节省了人力和物力,最终满足企业财务管理、员工工资发放的需要,同时也成为现代化企业管理的标志2.2 系统功能模块划分 根据该企业的业务情况及实

15、现目标,系统功能模块图如图2.1所示:企业工资管理系统系统部分企业工资信息设置企业工资信息管理修改密码基本工资设置其他工资设置工资公式设置计算实发工资查询工资退出系统出勤统计添加用户导出工资表图2.1 系统功能模块在这次系统开发中我主要完成的部分是工资管理和设置方面。开发这个系统的目的就是帮助企业的财务主管部门提高工作效率,实现企业工资信息管理的系统化、规范化和自动化。能够和认识管理系统、考勤管理系统相结合,真正实现企业高效、科学、现代化的员工管理。系统最终实现的主要功能如下:·企业工资信息设置部分:包括设置员工的基本工资和其他项目的金额,如奖金等。并且负责设置员工工资的计算公式。工

16、资信息设置工资计算公式设置其他工资设置基本工资设置图2.2 工资信息设置模块·企业工资信息管理部分:包括统计出勤、计算工资、查询工资和导出工资表。工资信息管理导出工资表计算实发工资出勤统计查询工资图2.3 工资信息管理模块·系统部分:包括添加用户和修改密码。系统退出系统修改密码添加用户图2.4 系统模块2.3系统数据库设计数据库是信息管理系统的后台,存储着所有的信息,在信息管理系统中有着很重要的地位。数据库设计的好与坏,直接影响到这个系统的运行效率。良好的数据库设计,可以提高数据信息的存储效率,确保数据信息的完整性和一致性。针对企业工资信息管理系统的需求,通过对员工工资计算

17、过程的内容分析,为本系统设计如下的数据项和数据结构:·基本工资信息:包括员工编号和基本工资(元/小时)。基本工资信息员工编号基本工资图2.5 基本工资实体E-r图·其他项目信息:包括员工编号、奖金、津贴、福利、扣发等。其他项目设置奖金津贴福利扣发图2.6 其他项目实体E-R图·计算公式信息:包括加班费的百分比、出差工资、旷工、迟到早退扣发等。计算公式加班费出差工资旷工扣发图2.7计算公式实体E-R图启动Access 2000,创建新的数据库,命名为Salary.mdb和Person.mdb,保存在要存放这个系统所有工程文件的文件夹中。在使用的时,要把应用程序和这两

18、个数据库保存在同一个文件夹中。表2.1 员工出勤统计信息表:字 段类 型长 度是否空说 明id自动编号长整型否记录编号stuffid文本50否员工编号stuffname文本50否员工姓名recordmonth日期/时间否统计时间attendance数字长整型否出勤天数lateearly数字长整型否迟到早退次数absent数字长整型否旷工次数overtimecom数字长整型否正常加班次数overtimespe数字长整型否特殊加班次数errand数字长整型否出差次数表2.2 员工工资计算公式信息表:字 段类 型长 度是否空说 明overtimecom数字长整型否正常加班工资百分比overtimes

19、pe数字长整型否特殊加班工资百分比errand数字长整型否出差工资absent数字长整型否旷工工资le数字长整型否迟到早退表2.3 员工其他项目设置:字 段类 型长 度是否空说 明id自动编号长整型否记录编号stuffid文本50否员工编号yearmonth日期/时间否年月type数字长整型否类型name文本50是类型money货币货币否名称remark备注是备注表2.4 员工工资统计信息表:字 段类 型长 度是否空说 明id自动编号长整型否记录编号stuffid文本50否员工编号stuffname文本50否员工姓名yearmonth日期/时间否时间basicsalary货币货币基本工资bon

20、us货币货币奖金welfare货币货币福利allowance货币货币津贴abatement货币货币扣发lesub货币货币迟到早退扣发absentsub货币货币旷工扣发overtime货币货币加班费errand货币货币出差费others货币货币其他金额total货币货币总额表2.5 员工信息表:字 段类 型长 度是否空说 明sid文本50否员工编号sname文本50否员工姓名sgender文本50否性别splace文本50否籍贯sage数字长整型否年龄sbirthday日期/时间否生日sdegree文本50是学历sspecial文本50是专业saddress文本50是住址scode文本50是邮编

21、stel文本50是电话semail文本50是EmailsworkTime日期/时间否参加工作时间sintime日期/时间否进入公司时间sdept文本50是部门spaytime日期/时间否起薪时间sposition文本50是职务sremark文本50是备注表2.6 用户信息表:字 段类 型长 度是否空说 明userid文本50否用户名称userpwd文本50否用户密码第三章 工资管理系统应用程序设计31 “登录模块”详细设计1、实现目标:登录模块的详细设计主要是用户登录的一个界面,判断登录的用户是管理员还是普通用户,进入后将面对的是主界面,从而进行相关的操作。登录的界面主要由用户名和密码的信息,

22、还有一些标题设置,确定和取消的按钮组成。通过标题可以知道此系统的大概内容,由此,登录界面的设计完成。 2、界面:图3.1 用户登陆界面登陆界面程序流程图如下:输入用户名密码开始用户名密码是否正确进入系统密码错误是否图3.2 登陆程序流程图3、程序说明: Option ExplicitDim pwdcount As IntegerPrivate Sub cmdcancel_Click() username.Text = "" password.Text = ""End SubPrivate Sub cmdok_Click() Dim sql As Stri

23、ng Dim rs As ADODB.Recordset If Trim(username.Text = "") Then MsgBox "没有输入用户名称", vbOKOnly + vbExclamation, "警告" username.SetFocus Else sql = "select * from userinfo where userid='" & username.Text & "'" Set rs = getrs(sql, "salar

24、y") If iflag = 1 Then If rs.EOF = True ThenMsgBox "没有这个用户,请重新输入", vbOKOnly + vbExclamation, "警告" username.SetFocus Else If Trim(rs.Fields(1) = Trim(password.Text) Then rs.Close Me.Hide strusername = Trim(username.Text) userpassword = Trim(password.Text) frmMain.Show Unload M

25、e Else MsgBox "密码不正确,请重新输入", vbOKOnly + vbExclamation, "警告" password.SetFocus password.Text = "" End If End If End If End If pwdcount = pwdcount + 1 If pwdcount = 3 Then Unload Me End IfEnd SubPrivate Sub Form_Load() pwdcount = 0 strusername = "" userpassword

26、= ""End Sub32 “主窗体”模块详细设计1实现目标:在这个项目中,选择使用多文档界面。使用这个窗体的好处是可以使程序更加有条理。对于一个多任务的应用程序,使用多文档窗体还可以减少占用的系统资源。2、界面及目标实现过程:主窗体设计的界面是用菜单编辑器做的,主要由系统、工资信息设置、工资信息管理和关于这四个大模块组成。主窗体是进行相关操作的主界面。在这几个里,管理员有所有的权利进行各种操作。图3.4 员工工资管理系统界面3、程序说明:rivate Sub Menu_about_Click() frmabout.Show frmabout.ZOrder 0End Sub

27、Private Sub Menu_adduser_Click(Index As Integer) If Trim(strusername) <> "admin" Then MsgBox "对不起,您没有这个权限!", vbOKOnly + vbExclamation, "警告" ElseIf Trim(strusername) = "admin" Then frmadduser.Show frmadduser.ZOrder 0 End IfEnd SubPrivate Sub Menu_basic_Cl

28、ick(Index As Integer) If Trim(strusername) <> "admin" Then MsgBox "对不起,您没有这个权限!", vbOKOnly + vbExclamation, "警告" ElseIf Trim(strusername) = "admin" Then ichangeflag = 1 frmbasicsetting.Show frmbasicsetting.ZOrder 0 End IfEnd SubPrivate Sub Menu_changepwd

29、_Click(Index As Integer) frmchangepwd.Show frmchangepwd.ZOrder 0End SubPrivate Sub Menu_check_Click(Index As Integer) frmresult.Show frmresult.ZOrder 0 frmresult.Caption = "信息查询"End SubPrivate Sub Menu_exit_Click(Index As Integer) Unload Me Exit SubEnd SubPrivate Sub Menu_formulasetting_Cl

30、ick(Index As Integer) If Trim(strusername) <> "admin" Then MsgBox "对不起,您没有这个权限!", vbOKOnly + vbExclamation, "警告" ElseIf Trim(strusername) = "admin" Then frmformula.Show frmformula.ZOrder 0 End IfEnd SubPrivate Sub Menu_getsalary_Click(Index As Integer) I

31、f Trim(strusername) <> "admin" Then MsgBox "对不起,您没有这个权限!", vbOKOnly + vbExclamation, "警告" ElseIf Trim(strusername) = "admin" Then frmsumsalary.Show frmsumsalary.ZOrder 0 End IfEnd SubPrivate Sub Menu_others_Click(Index As Integer) If Trim(strusername) &l

32、t;> "admin" Then MsgBox "对不起,您没有这个权限!", vbOKOnly + vbExclamation, "警告" ElseIf Trim(strusername) = "admin" Then ichangeflag = 1 frmothersetting.Show frmothersetting.ZOrder 0 End IfEnd SubPrivate Sub Menu_out_Click(Index As Integer) If Trim(strusername) <&

33、gt; "admin" Then MsgBox "对不起,您没有这个权限!", vbOKOnly + vbExclamation, "警告" ElseIf Trim(strusername) = "admin" Then frmexport.Show frmexport.ZOrder 0 End IfEnd SubPrivate Sub Menu_sumattendance_Click(Index As Integer) frmsuminout.Show frmsuminout.ZOrder 0End Sub.各项

34、子模块详细设计3.3.1 “设置基本工资”窗体设计1、实现目标:选择“工资信息设置”>“基本工资设置”菜单设置员工的基本工资,可以根据员工的编号,或者根据员工职务设置基本工资,设置的基本工资为每个小时的工资。2、界面及控件列表图3.5 设置基本工资界面表3.1 设置基本工资主要控件列表对 象属 性设 置optionbuttonCaption员工编号optionbuttonCaption员工职务Command1caption确认Command2caption取消3、程序说明:Set rs = getrs(sql, "salary")If rs.EOF = False T

35、hensql = "delete from salarysetting where stuffid='" & Mstuffid.Text & "'"Call transactsql(sql, "salary")End Ifrs.Closeid = Mstuffid.TextCall addrecordMsgBox "已经设置基本工资", vbOKOnly + vbExclamation, "添加结果"Call initsql = "select * fr

36、om salarysetting"Call frmresult.basictopicCall frmresult.showbasic(sql)frmresult.Showfrmresult.ZOrder 0Me.ZOrder 03.3.2 “其他项目设置”窗体设计1、实现目标:选择“工资信息设置”>“其他项目设置”菜单,在其他项目设置的窗体中,设置员工当月的奖金、津贴、福利等项目。2、界面及主要控件列表图3.6其他项目设置界面表3.2 其他项目主要控件对 象属 性设 置dtpicker名称dttimecombobox名称comidframe名称frameinfotexttext

37、空Optionbuttonvaluefalse3、程序说明: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 ity

38、pe = 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='&quo

39、t; & 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 frm

40、result.othertopic Call frmresult.showother(sql) frmresult.Show Unload Me End If3.3.3 “工资计算公式设置”窗体设计1、实现目标:选择“工资信息设置”>“工资计算公式设置”菜单,在这个计算公式窗体中设置员工实际发放工资的计算公式。2、界面及主要控件列表图3.7 计算公式界面表3.3 主要控件列表对 象属 性设 置lablecaption界面所示commandcaption界面所示texttext空3、程序说明:IfMe.textovertimecom = "" And IsNumeric

41、(Me.textovertimecom) = True Then MsgBox "请输入正常加班工资百分比", vbOKOnly + vbExclamation, "提示" Me.textovertimecom = "" Me.textovertimecom.SetFocus ElseIf Me.textovertimespe = "" And IsNumeric(Me.textovertimespe) = False Then MsgBox "请输入特殊加班工资百分比", vbOKOnly +

42、 vbExclamation, "提示" Me.textovertimespe = "" Me.textovertimespe.SetFocus ElseIf Me.texterrand = "" And IsNumeric(Me.texterrand) = False Then MsgBox "请输入出差工资", vbOKOnly + vbExclamation, "提示" Me.texterrand = "" Me.texterrand.SetFocus ElseIf M

43、e.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 "请输入迟到早退扣发工资", vbOKO

44、nly + vbExclamation, "提示" Me.textle = "" Me.textle.SetFocus Else Call setvalue Call init End If3.3.4 “计算实发工资”窗体设计1、实现目标:选择“工资信息管理”>“计算实发工资”菜单,在这个窗体中选择需要统计的月份。选择统计月份后,单击“开始统计”按钮,系统如果已经统计了该月份的工资,系统会显示工资信息列表窗体。如果系统还没有统计工资,那么系统开始统计工资,然后在信息结果列表窗体中显示统计结果。2、界面:图3.8计算工资界面3、程序说明:If Mmo

45、nth.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) &

46、amp; "-" & Mmonth.Text & "-" & days Call sumsalary(firstday, lastday) sql = "select * from salarystatistics" frmresult.SSTab1.Caption = "员工工资统计列表" Call frmresult.listtopic Call frmresult.showdata(sql) frmresult.Caption = "统计结果列表" frmresul

47、t.ZOrder 0 Unload MeElse MsgBox "这个月的工资未统计", vbOKOnly + vbExclamation, "提示"End If3.3.5 “查询工资“窗体设计选择“工资信息管理”“查询工资”菜单,系统显示如图的查询信息窗体,系统默认的是查询出数据库中所有的记录(当管理员进入的时候),当从“员工编号”下拉列表中选择一个员工编号后,单击“查询单人”按钮,就会查询出符合这个员工编号的记录;如果需要返回查询所有信息,单击“查询所有”按钮,系统就会返回所有员工的信息。在“员工工资统计列表”中单击鼠标右键,会弹出下图的菜单,在“员

48、工其他项目列表”中单击鼠标右键也会出现下图的菜单。如果要选择“删除基本工资设置”,出现如下的提示:图3.9 删除基本工资设置界面3.3.6 “导出工资表”窗体设计选择“工资信息管理”>“导出工资表”菜单,会出现下图的“导出记录”窗体中选择需要导出工资的月份。选择月份和保存位置后,单击“导出”按钮,系统会开始导出数据。图3.10 导出记录界面单击“确定”按钮打开导出的文件,单击“取消”按钮回到系统。图3.11 导出工资记录界面34 各项子模块编写要点1、登陆窗体:在登录的这个窗体里,我做的特点是:只要在数据库里有用户信息的,都可以登录,然后显示相关自己的信息,而管理员显示所有的信息。当输入

49、的用户名或密码不正确的时候,会出现如下的对话框: 图3.12 输入用户名不正确或密码错误界面或者,图3.13 密码不正确界面2、主窗体:在主窗体的设计中,我在系统的下拉菜单里包括有添加用户、修改密码和退出系统。在这个模块里普通用户只有修改自己的密码的权利。在添加用户的窗体里:添加3个标签、3个文本框和2个命令按钮,然后设置它们相关的属性。在修改密码的窗体里:添加了3个标签,用来显示信息;3个文本框用来输入用户名称和用户密码;2个按钮用来确定和取消操作,然后设置它们的属性。3、工资信息设置:在工资信息设置的下拉菜单里包括有基本工资信息设置、其他项目信息设置和计算公式设置。在这个模块里,普通用户没

50、有任何权利进行相关的操作。在基本工资窗体里:添加了2个选项按钮、2个下拉列表、2个标签、1个文本框和2个按钮,然后设置它们的属性。在其他项目设置的窗体里:使用了一个DTPicker控件获得添加记录的时间,要使用这个控件需要添加部件类库,选择“工程>部件”命令,选择Microsoft Windows Common Controls-2 6.0(sp4)项,然后设置相关的属性。4、工资信息管理:在工资信息管理的下拉菜单里包括有统计出勤信息、计算实发工资、查询工资和导出工资表。在这个模块里,普通用户有统计出勤信息和查询工资的权利,但是都显示的是自己的信息。在出勤统计窗体里:添加一个下拉列表、一

51、个标签和2个命令按钮,然后设置相关的属性。在出勤结果信息列表的窗体里:使用了Adodc控件和DataGrid控件,控件的Visible属性一定要设置为False。在计算实发工资窗体里添加的控件和统计出勤记录窗体的控件相同。在工资统计列表窗体里:使用了SSTab控件,在每一个标签上添加一个MSFlexGrid控件,然后设置它们的属性。在导出工资表的窗体中使用了CommondDialog控件,要使用这个控件需要在“控件”窗体中,选择Microsoft Common Dialog Control6.0(sp3)项,同时因为数据表格是导出到Excel,所以需要添加引用。选择“工程>引用”菜单,在

52、“引用”窗体中选择Microsoft Excel 9.0 Object Library项,这样才能够成功导入到Excel。在这个窗体里,我做的特点是:权利分工明确。当管理员进入的时候他有所有的权利,单击哪个模块就会弹出相对应的窗体。而普通用户则不能,我把它进行了权限设置,会弹出权限的对话框。图3.14 权限错误界面在添加用户的窗体里,如果输入的用户密码和确认密码不一致,将出现一个警告对话框:图3.15 用户名和密码不一致界面然后输入与用户密码相同的密码,我这里的密码都是以*的形式表达,是不可见的。添加的用户将保存在数据库的userinfo里。单击“取消”按钮就卸载此窗体,添加用户的过程到此完成

53、。5、基本工资窗体:在建立基本工资窗体时,这个窗体会在两个地方使用到,一个就是添加,另一个就是修改,在窗体载入时系统应自动判断状态。选择员工编号或选择职务,然后填写工资金额,单击“确定”按钮,系统就会按照选择的方式,设置员工的基本工资。在做基本工资这个窗体时,我的想法是:当你在修改基本工资的信息,首先都要从数据库中调出相关的信息,然后把它删除掉,再从数据库中的员工信息表中调出所要的信息,然后再一次的添加所要设置的信息。当你没输入员工编号的时候,会出现下图的对话框;图3.16 没输入员工编号界面当没输入员工的职务时会出现错误的信息。6、其他项目设置:在建立其他项目设置的窗体时,也在两个地方使用,即添加和修改,在载入时也需要判断状态。选择员工编号,再选择需要添加的项目和进额,单击“确定”按钮,即可添加其他项目。在其他项目设置这个窗体里,我用了一个Frame控件和几个optionButton控件,目的在于:在添加其他项目时,只能有一个设置是有效的,而且还可以添加其他的项目,还有备注等等,这些都便于记录。这里还有一个DTPicker控件是用来记录添加其他项目的时间,我觉得这个控件非常好。还有就是每次添加成功后,系统需要初始化,更新一下。在设置完这个窗体后将会弹出查询工资的窗体。7、工资计算公式:在建立工资计算公式的窗体时

温馨提示

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

评论

0/150

提交评论