基于B/S结构的企业人事管理系统
图13 添加部门信息窗体
关键代码如下:
Dim rs As New ADODB.Recordset Private Sub Command3_Click()
rs.Open \时间设置表\ If rs.RecordCount > 0 Then
rs.Fields(\上班时间\ rs.Fields(\下班时间\ rs.Update Else
rs.AddNew
rs.Fields(\上班时间\ rs.Fields(\下班时间\ rs.Update End If rs.Close End Sub
Private Sub Command4_Click() Unload Me
End Sub
(2)员工公出\\请假信息:用户可以通过员工是否公出、请假考勤表格对员工考勤进行实时查询管理。员工公出\\请假信息窗体如图14所示:
计算机科学与技术专业毕业论文(设计) 31
基于B/S结构的企业人事管理系统
图14 添加部门信息窗体
关键代码如下:
Dim rs As New ADODB.Recordset Private Sub Form_Load()
'添加部门信息到部门列表(cboDept)中 cboDept.AddItem \总公司\
rs.Open \部门表 order by 部门编号\ '连接部门表
If rs.RecordCount > 0 Then '如果表中有记录 rs.MoveFirst '将记录指针移到第一条 Do While rs.EOF = False '只要记录不到尾
cboDept.AddItem rs.Fields(\部门名称\ '添加部门名称到部门列表中 rs.MoveNext '将记录指针移到下一条 Loop End If
rs.Close '关闭数据集对象
cboDept.ListIndex = 0 '设置默认项
DTPStartDate.Value = Date: DTPEndDate.Value = Date '设置起止日期为系统日期 End Sub
Private Sub cboDept_Click()
lstEmployee.Clear '清空员工列表 '添加部门信息到cboDept
If cboDept.Text = \总公司\ '如果部门列表为\总公司\
rs.Open \员工信息表 order by 编号\ '连接员工信息表
If rs.RecordCount > 0 Then '如果表中有记录
计算机科学与技术专业毕业论文(设计) 32
基于B/S结构的企业人事管理系统
rs.MoveFirst '将记录指针移到第一条记录 Do While rs.EOF = False '只要记录不到尾
lstEmployee.AddItem rs.Fields(\编号\姓名\ '将员工编号和姓名添加到员工列表中
rs.MoveNext '将记录指针移到下一条记录 Loop End If
rs.Close '关闭数据集对象 Else
rs.Open \* from 员工信息表 where 部门='\+ cboDept + \order by 编号\cnn, adOpenKeyset, adLockOptimistic '按部门查询并显示员工信息 If rs.RecordCount > 0 Then '如果表中有记录 rs.MoveFirst '将记录指针移到第一条记录 Do While rs.EOF = False '只要记录不到尾
lstEmployee.AddItem rs.Fields(\编号\姓名\ '将员工编号和姓名添加到员工列表中
rs.MoveNext '将记录指针移到下一条记录 Loop End If
rs.Close '关闭数据集对象 End If End Sub
Private Sub DataGrid1_DblClick()
blnAddGCQJ = False '标记为修改状态
Load main_kqgl_gcqj_addModify '加载修改员工公出/请假窗体 main_kqgl_gcqj_addModify.Show '显示修改员工公出/请假窗体 With main_kqgl_gcqj_addModify
.Caption = \修改公出/请假信息\ '设置该窗体的标题栏
.DTPStartDate = Left(Adodc1.Recordset.Fields(\开始时间\ '给开始日期赋值 .MaskEdBoxTime1 = Right(Adodc1.Recordset.Fields(\开始时间\ '给开始时间赋值 .DTPEndDate = Left(Adodc1.Recordset.Fields(\结束时间\ '给结束日期赋值 .MaskEdBoxTime2 = Right(Adodc1.Recordset.Fields(\结束时间\给结束时间赋值 .cboStyle = Adodc1.Recordset.Fields(\假别\ '给假别赋值 .txtCause = Adodc1.Recordset.Fields(\原因\ '给原因赋值 End With End Sub
Private Sub Toolbar1_ButtonClick(ByVal Button As MSComctlLib.Button) Select Case Button.Key
Case \ '添加工具栏按钮
blnAddGCQJ = True '标记为添加状态
Load main_kqgl_gcqj_addModify '加载添加员工公出/请假窗体 main_kqgl_gcqj_addModify.Show '显示添加员工公出/请假窗体 With main_kqgl_gcqj_addModify
.Caption = \添加公出/请假信息\ '设置该窗体的标题栏
.DTPStartDate = Date: .DTPEndDate = Date '设置开始日期和结束日期为系统日期 End With
计算机科学与技术专业毕业论文(设计) 33
基于B/S结构的企业人事管理系统
Case \ '修改工具栏按钮 DataGrid1_DblClick '调用过程 Case \ '删除工具栏按钮
If Adodc1.Recordset.RecordCount > 0 Then '如果公出请假记录表中有记录 Adodc1.Recordset.Delete '删除记录 Adodc1.Recordset.Update '更新数据表 Else '否则
MsgBox \系统没有要删除的数据!\提示窗口\ '提示用户没有要删除的数据 End If End Select End Sub
Private Sub cmdFind_Click()
Adodc1.RecordSource = \公出请假记录表 where 开始时间 between '\+ \ '查询公出请假信息 Adodc1.Refresh '刷新数据表 End Sub
4、工资管理:包括工资信息管理、过期数据处理、工资导出(导出Excel、导出为网上银行处理)。
(1)工资信息管理:用户可以通过选择工资月份、日期对工资信息的管理。工资信息管理窗体如图15所示:
图15 工资信息管理窗体
关键代码如下:
Dim rs As New ADODB.Recordset, rs1 As New ADODB.Recordset Private Sub Form_Load() DTPDate = Date
newmonth.Text = Year(Date) & \End Sub
Private Sub Command1_Click()
Dim i As Integer, r As Integer, c As Integer myMonth = newmonth.Text Select Case intSelMonth
计算机科学与技术专业毕业论文(设计) 34
基于B/S结构的企业人事管理系统
Case Is = 1
If newmonth.Text = \ Load main_gzgl_gzgl main_gzgl_gzgl.Show With main_gzgl_gzgl
.Adodc1.RecordSource = \工资表 order by 所属工资月份\ .Adodc1.Refresh End With Else
rs1.Open \工资表 where 工资表.所属工资月份='\cnn, adOpenKeyset, adLockOptimistic If rs1.RecordCount > 0 Then Load main_gzgl_gzgl main_gzgl_gzgl.Show With main_gzgl_gzgl
.Adodc1.RecordSource = \* from 工资表 where 所属工资月份='\+ newmonth.Text + \
.Adodc1.Refresh End With End If rs.Close End Select Unload Me End Sub
Private Sub Command2_Click() Unload Me End Sub
(2)过期数据处理:用户可以通过对过期数据处理进行确定、取消。过期数据处理窗体如图16所示:
图16 过期数据处理窗体
关键代码如下:
Dim rs1 As New ADODB.Recordset
计算机科学与技术专业毕业论文(设计) 35