📄 frmempremove.frm
字号:
str4CheckPermission = CheckPermission("职工调动信息")
With SSListBar4This
If Mid(str4CheckPermission, 1, 1) = 0 Then .Groups(C_FIRST_GROUP).ListItems(C_SELECT_MEMBER).ForeColor = C_UNUSE_COLOR
If Mid(str4CheckPermission, 2, 1) = 0 Then .Groups(C_SECOND_GROUP).ListItems(C_INSERT_MEMBER).ForeColor = C_UNUSE_COLOR
If Mid(str4CheckPermission, 3, 1) = 0 Then .Groups(C_SECOND_GROUP).ListItems(C_UPDATE_MEMBER).ForeColor = C_UNUSE_COLOR
If Mid(str4CheckPermission, 4, 1) = 0 Then .Groups(C_SECOND_GROUP).ListItems(C_DELETE_MEMBER).ForeColor = C_UNUSE_COLOR
If Mid(str4CheckPermission, 5, 1) = 0 Then .Groups(C_FIRST_GROUP).ListItems(C_TO_EXCEL_MEMBER).ForeColor = C_UNUSE_COLOR
If Mid(str4CheckPermission, 6, 1) = 0 Then .Groups(C_FIRST_GROUP).ListItems(C_TO_PRN_MEMBER).ForeColor = C_UNUSE_COLOR
End With
End Sub
Private Sub VSFlexGrid4This_BeforeDataRefresh(Cancel As Boolean)
Me.VSFlexGrid4This.FixedCols = 1
End Sub
Private Sub VSFlexGrid4This_Click()
With Me.VSFlexGrid4This
If .Row > 0 And .Col = 0 Then
If .TextMatrix(.Row, 0) = "True" Then
.TextMatrix(.Row, 0) = "False"
Else
.TextMatrix(.Row, 0) = "True"
End If
End If
End With
End Sub
Private Sub SSComboBoxEx4Type_Change()
DisplayRelateItems SSComboBoxEx4Type
End Sub
Private Sub SSComboBoxEx4Type_LostFocus()
CheckValidate Me.SSComboBoxEx4Type
End Sub
Private Sub SSListBar4This_ListItemClick(ByVal ItemClicked As Listbar.SSListItem)
Dim lfor As Long
If Me.SSListBar4This.Groups(C_FIRST_GROUP).ListItems(C_LUMP_MEMBER).text = "分类汇总(&L)" Then Me.VSFlexGrid4This.SetFocus
Select Case Me.SSListBar4This.CurrentGroup.Index
Case C_FIRST_GROUP
Select Case ItemClicked.Index
Case C_ALL_MEMBER
If Me.SSListBar4This.Groups(C_FIRST_GROUP).ListItems(C_ALL_MEMBER).ForeColor = C_UNUSE_COLOR Then Exit Sub
With VSFlexGrid4This
'AfterDataRefresh中设置 .row=1
If Me.SSListBar4This.Groups(C_FIRST_GROUP).ListItems(C_ALL_MEMBER).text = "全选(&A)" Then
Me.SSListBar4This.Groups(C_FIRST_GROUP).ListItems(C_ALL_MEMBER).text = "清空(&C)"
For lfor = 1 To .Rows - 1
If lfor < .Row Then
.TextMatrix(lfor, 0) = "False"
Else
If lfor - .Row >= 1000 Then MsgBox "最大只能选择1000条记录。", vbOKOnly, "确定": Exit Sub
.TextMatrix(lfor, 0) = "True"
End If
Next
Else
Me.SSListBar4This.Groups(C_FIRST_GROUP).ListItems(C_ALL_MEMBER).text = "全选(&A)"
For lfor = .Row To .Rows - 1
.TextMatrix(lfor, 0) = "False"
Next
End If
End With
Case C_UNALL_MEMBER
If Me.SSListBar4This.Groups(C_FIRST_GROUP).ListItems(C_UNALL_MEMBER).ForeColor = C_UNUSE_COLOR Then Exit Sub
With VSFlexGrid4This
For lfor = .Row To .Rows - 1
If .TextMatrix(lfor, 0) = "True" Then
.TextMatrix(lfor, 0) = "False"
Else
If lfor - .Row >= 1000 Then MsgBox "最大只能选择1000条记录。", vbOKOnly, "确定": Exit Sub
.TextMatrix(lfor, 0) = "True"
End If
Next
End With
Case C_SELECT_MEMBER
If Me.SSListBar4This.Groups(C_FIRST_GROUP).ListItems(C_SELECT_MEMBER).ForeColor = C_UNUSE_COLOR Then Exit Sub
Me.SSComboBoxEx4Type.CheckList = True
m_strSQL = "select emp_name,out_organ_name,in_organ_name,EMP_REMOVE_ID,t_emp_remove.REMOVE_SORT_NO,(cast(START_END_SALARY/10000 as varchar(4))+'年'+cast(START_END_SALARY%10000/100 as varchar(2))+'月'+cast(START_END_SALARY%100 as varchar(2))+'日') " _
& ",(cast(REMOVE_START_END_DATE/10000 as varchar(4))+'年'+cast(REMOVE_START_END_DATE%10000/100 as varchar(2))+'月'+cast(REMOVE_START_END_DATE%100 as varchar(2))+'日'),t_emp_remove.emp_no as emp_No,REMOVE_OUT_MARK,t_emp_remove.organ_no,FOLD_ORGAN,REMOVE_MARK FROM t_emp_remove,t_remove_sort,t_emp_basic " _
& " where t_remove_sort.REMOVE_SORT_NO=t_emp_remove.REMOVE_SORT_NO and t_emp_basic.emp_No=t_emp_remove.emp_no and t_emp_remove.organ_no=t_emp_basic.organ_no "
If Trim(SSComboBoxEx4Small.text) <> "" Then
SSComboBoxEx4Small.CheckList = True
m_strSQL = m_strSQL & " and (FOLD_ORGAN like '" & Me.SSComboBoxEx4Small.ItemData(Me.SSComboBoxEx4Small.ListIndex) & "%' or t_emp_remove.ORGAN_NO like '" & Me.SSComboBoxEx4Small.ItemData(Me.SSComboBoxEx4Small.ListIndex) & "%') "
Else
If Trim(SSComboBoxEx4Large.text) <> "" Then
SSComboBoxEx4Large.CheckList = True
m_strSQL = m_strSQL & " and (FOLD_ORGAN like '" & Me.SSComboBoxEx4Large.ItemData(Me.SSComboBoxEx4Large.ListIndex) & "%' or t_emp_remove.ORGAN_NO like '" & Me.SSComboBoxEx4Large.ItemData(Me.SSComboBoxEx4Large.ListIndex) & "%') "
Else
If Trim(SSComboBoxEx4Company.text) <> "" Then
SSComboBoxEx4Company.CheckList = True
m_strSQL = m_strSQL & " and (FOLD_ORGAN like '" & Me.SSComboBoxEx4Company.ItemData(Me.SSComboBoxEx4Company.ListIndex) & "%' or t_emp_remove.ORGAN_NO like '" & Me.SSComboBoxEx4Company.ItemData(Me.SSComboBoxEx4Company.ListIndex) & "%') "
Else
SSComboBoxEx4Organ.CheckList = True
If Trim(SSComboBoxEx4Organ.text) <> "" Then m_strSQL = m_strSQL & " and (FOLD_ORGAN like '" & Me.SSComboBoxEx4Organ.ItemData(Me.SSComboBoxEx4Organ.ListIndex) & "%' or t_emp_remove.ORGAN_NO like '" & Me.SSComboBoxEx4Organ.ItemData(Me.SSComboBoxEx4Organ.ListIndex) & "%')"
End If
End If
End If
If Not IsNull(Me.DTPicker4End.Value) Then
m_strSQL = m_strSQL & " and START_END_SALARY>=" & ConvertDate2Int(Me.DTPicker4End.Value)
End If
If Not IsNull(Me.DTPicker4Start.Value) Then
m_strSQL = m_strSQL & " and START_END_SALARY<" & ConvertDate2Int(Me.DTPicker4Start.Value)
End If
If Trim(Me.Text4Name.text) <> "" Then
m_strSQL = m_strSQL & " and emp_name like '%" & Me.Text4Name.text & "%'"
End If
If Trim(Me.SSComboBoxEx4Type.text) <> "" Then
SSComboBoxEx4Type.CheckList = True
If Me.SSComboBoxEx4Type.ItemData(Me.SSComboBoxEx4Type.ListIndex) = "null" Then
m_strSQL = m_strSQL & " and t_emp_remove.REMOVE_SORT_NO is null "
Else
m_strSQL = m_strSQL & " and t_emp_remove.REMOVE_SORT_NO = " & Me.SSComboBoxEx4Type.ItemData(Me.SSComboBoxEx4Type.ListIndex)
End If
End If
If oRs4This.State = adStateOpen Then oRs4This.Close
oRs4This.CursorLocation = adUseClient
oRs4This.Open m_strSQL, g_oConnection4This, adOpenKeyset, adLockOptimistic
If oRs4This.EOF = False Then Set VSFlexGrid4Group.DataSource = oRs4This
Set Me.VSFlexGrid4This.DataSource = oRs4This
Case C_LUMP_MEMBER
If Me.SSListBar4This.Groups(C_FIRST_GROUP).ListItems(C_LUMP_MEMBER).ForeColor = C_UNUSE_COLOR Then Exit Sub
If VSFlexGrid4This.Visible = True Then
VSFlexGroup1.Visible = True
VSFlexGrid4This.Visible = False
Me.SSListBar4This.Groups(C_FIRST_GROUP).ListItems(C_LUMP_MEMBER).text = "表格(&L)"
Me.SSListBar4This.Groups(C_FIRST_GROUP).ListItems(C_SELECT_MEMBER).ForeColor = C_UNUSE_COLOR
Me.SSListBar4This.Groups(C_FIRST_GROUP).ListItems(C_ALL_MEMBER).ForeColor = C_UNUSE_COLOR
Me.SSListBar4This.Groups(C_FIRST_GROUP).ListItems(C_UNALL_MEMBER).ForeColor = C_UNUSE_COLOR
Me.SSListBar4This.Groups(C_FIRST_GROUP).ListItems(C_TO_EXCEL_MEMBER).ForeColor = C_UNUSE_COLOR
Me.SSListBar4This.Groups(C_FIRST_GROUP).ListItems(C_TO_PRN_MEMBER).ForeColor = C_UNUSE_COLOR
Me.SSListBar4This.Groups(C_SECOND_GROUP).ListItems(C_INSERT_MEMBER).ForeColor = C_UNUSE_COLOR
Me.SSListBar4This.Groups(C_SECOND_GROUP).ListItems(C_UPDATE_MEMBER).ForeColor = C_UNUSE_COLOR
Me.SSListBar4This.Groups(C_SECOND_GROUP).ListItems(C_DELETE_MEMBER).ForeColor = C_UNUSE_COLOR
Else
VSFlexGroup1.Visible = False
VSFlexGrid4This.Visible = True
Me.SSListBar4This.Groups(C_FIRST_GROUP).ListItems(C_LUMP_MEMBER).text = "分类汇总(&L)"
Me.SSListBar4This.Groups(C_FIRST_GROUP).ListItems(C_SELECT_MEMBER).ForeColor = C_USE_COLOR
Me.SSListBar4This.Groups(C_FIRST_GROUP).ListItems(C_ALL_MEMBER).ForeColor = C_USE_COLOR
Me.SSListBar4This.Groups(C_FIRST_GROUP).ListItems(C_UNALL_MEMBER).ForeColor = C_USE_COLOR
Me.SSListBar4This.Groups(C_FIRST_GROUP).ListItems(C_TO_EXCEL_MEMBER).ForeColor = C_USE_COLOR
Me.SSListBar4This.Groups(C_FIRST_GROUP).ListItems(C_TO_PRN_MEMBER).ForeColor = C_USE_COLOR
Me.SSListBar4This.Groups(C_SECOND_GROUP).ListItems(C_INSERT_MEMBER).ForeColor = C_USE_COLOR
Me.SSListBar4This.Groups(C_SECOND_GROUP).ListItems(C_UPDATE_MEMBER).ForeColor = C_USE_COLOR
Me.SSListBar4This.Groups(C_SECOND_GROUP).ListItems(C_DELETE_MEMBER).ForeColor = C_USE_COLOR
End If
Case C_CLOSE_MEMBER
Unload Me
Case C_TO_EXCEL_MEMBER
If Me.SSListBar4This.Groups(C_FIRST_GROUP).ListItems(C_TO_EXCEL_MEMBER).ForeColor = C_UNUSE_COLOR Then Exit Sub
MousePointer = 11
ExportExcel m_strSQL, Me.VSFlexGrid4This
MousePointer = 1
Case C_TO_PRN_MEMBER
If Me.SSListBar4This.Groups(C_FIRST_GROUP).ListItems(C_TO_PRN_MEMBER).ForeColor = C_UNUSE_COLOR Then Exit Sub
frmPrint.g_str4MainPrint = "职工调动信息"
Me.VSFlexGrid4This.ColHidden(0) = True
Me.VSFlexGrid4This.SaveGrid App.Path & "\2000.txt", flexFileAll
Me.VSFlexGrid4This.ColHidden(0) = False
frmPrint.Show 1
End Select
Case C_SECOND_GROUP
Select Case ItemClicked.Index
Case C_DELETE_MEMBER
If Me.SSListBar4This.Groups(C_SECOND_GROUP).ListItems(C_DELETE_MEMBER).ForeColor = C_UNUSE_COLOR Then Exit Sub
With Me.VSFlexGrid4This
If .Row > 0 Then
If vbYes = MsgBox("确认删除该记录吗?", vbYesNo + vbDefaultButton2, "警告") Then
ExcuteSQL "begin transaction"
If .TextMatrix(.Row, 9) = C_SubStract_No_InOrgan Then
m_strSQL = "update t_emp_basic set delete_mark=" & C_Emp_Have & " where emp_no=" & .TextMatrix(.Row, 8) & " and organ_no='" & .TextMatrix(.Row, 10) & "'"
If ExcuteSQL(m_strSQL) <> 0 Then
ExcuteSQL "rollback transaction"
Exit Sub
End If
ElseIf .TextMatrix(.Row, 9) = C_SubStract_Have_InOrgan Then
If Len(g_str4LoginUnit) = C_BUREAUE_LENGTH Then
If .Cell(flexcpChecked, .Row, 13) = 1 Then
MsgBox "此条纪录已有全局认证,不能删除", vbOKOnly, "警告"
ExcuteSQL "rollback transaction"
Exit Sub
Else
m_strSQL = "update t_emp_basic set delete_mark=" & C_Emp_Have & " where emp_no=" & .TextMatrix(.Row, 8) & " and organ_no='" & .TextMatrix(.Row, 10) & "'"
If ExcuteSQL(m_strSQL) <> 0 Then
ExcuteSQL "rollback transaction"
Exit Sub
End If
End If
Else
MsgBox "此条纪录只能在总部删除", vbOKOnly, "警告"
ExcuteSQL "rollback transaction"
Exit Sub
End If
ElseIf .TextMatrix(.Row, 9) = C_Add_Have_OutOrgan Then
MsgBox "此条纪录不能删除", vbOKOnly, "警告"
ExcuteSQL "rollback transaction"
Exit Sub
End If
m_strSQL = "delete from T_EMP_REMOVE where EMP_REMOVE_ID=" & .TextMatrix(.Row, 4) & " and organ_no='" & .TextMatrix(.Row, 10) & "' and FOLD_ORGAN='" & .TextMatrix(.Row, 11) & "'"
If ExcuteSQL(m_strSQL) <> 0 Then
ExcuteSQL "rollback transaction"
Exit Sub
End If
ExcuteSQL "commit transaction"
.RemoveItem (.Row)
End If
Else
MsgBox "请选择记录", vbOKOnly, "提示!"
End If
End With
vsElastic.Caption = "查询结果(总计" & VSFlexGrid4This.Rows - 1 & "条记录)"
Case C_INSERT_MEMBER
If Me.SSListBar4This.Groups(C_SECOND_GROUP).ListItems(C_INSERT_MEMBER).ForeColor = C_UNUSE_COLOR Then Exit Sub
If Len(g_str4LoginUnit) = C_BUREAUE_LENGTH Then Exit Sub
g_int4statuse = 0
frmEmpRemovePrompt.Show 1
If oRs4This.State = adStateOpen Then oRs4This.Requery
Case C_UPDATE_MEMBER
If Me.SSListBar4This.Groups(C_SECOND_GROUP).ListItems(C_UPDATE_MEMBER).ForeColor = C_UNUSE_COLOR Then Exit Sub
With Me.VSFlexGrid4This
g_int4rowstate = 0
For lfor = 1 To .Rows - 1
If .TextMatrix(lfor, 0) = "True" Then
g_int4rowstate = g_int4rowstate + 1
g_array4WorkerType(1, g_int4rowstate) = .TextMatrix(lfor, 10)
g_array4WorkerType(2, g_int4rowstate) = .TextMatrix(lfor, 11)
g_array4WorkerType(3, g_int4rowstate) = .TextMatrix(lfor, 4)
End If
Next
If g_int4rowstate = 0 Then
MsgBox "请选择至少一条记录!", vbOKOnly, "提示"
Exit Sub
Else
g_int4statuse = 1
frmEmpRemoveEdit.Show 1
oRs4This.Requery
End If
End With
End Select
End Select
End Sub
Private Sub SSComboBoxEx4Organ_Change()
DisplayRelateItems SSComboBoxEx4Organ
End Sub
Private Sub SSComboBoxEx4Organ_LostFocus()
CheckValidate SSComboBoxEx4Organ
Me.SSComboBoxEx4Large.text = ""
Me.SSComboBoxEx4Company.text = ""
Me.SSComboBoxEx4Small.text = ""
End Sub
Private Sub SSComboBoxEx4Company_Change()
DisplayRelateItems SSComboBoxEx4Company
End Sub
Private Sub SSComboBoxEx4Company_GotFocus()
If Trim(Me.SSComboBoxEx4Organ.text) <> "" Then
FillComboBox SSComboBoxEx4Company, "T_ORGAN", "ORGAN_NO", "ORGAN_NAME", 0, " where Len(ORGAN_NO)=" & C_COMPANY_LENGTH & "and left(ORGAN_NO," & C_FACTORY_LENGTH & ") like '" & SSComboBoxEx4Organ.ItemData(SSComboBoxEx4Organ.ListIndex) & "%' and organ_level=" & C_COMPANY_LEVEL & HaveOrganMark
Else
SSComboBoxEx4Company.Clear
End If
End Sub
Private Sub SSComboBoxEx4Company_LostFocus()
CheckValidate Me.SSComboBoxEx4Company
Me.SSComboBoxEx4Large.text = ""
Me.SSComboBoxEx4Small.text = ""
End Sub
Private Sub SSComboBoxEx4large_Change()
DisplayRelateItems SSComboBoxEx4Large
End Sub
Private Sub SSComboBoxEx4large_LostFocus()
CheckValidate SSComboBoxEx4Large
Me.SSComboBoxEx4Small.text = ""
End Sub
Private Sub SSComboBoxEx4Large_GotFocus()
If Trim(Me.SSComboBoxEx4Organ.text) <> "" Then
If Trim(Me.SSComboBoxEx4Company.text) <> "" Then
FillComboBox SSComboBoxEx4Large, "T_ORGAN", "ORGAN_NO", "ORGAN_NAME", 0, " where Len(ORGAN_NO)=" & C_LARGE_LENGTH & " and left(ORGAN_NO," & C_COMPANY_LENGTH & ") like '" & SSComboBoxEx4Company.ItemData(SSComboBoxEx4Company.ListIndex) & "%' and organ_level=" & C_LARGE_LEVEL & HaveOrganMark
Else
FillComboBox SSComboBoxEx4Large, "T_ORGAN", "ORGAN_NO", "ORGAN_NAME", 0, " where Len(ORGAN_NO)=" & C_COMPANY_LENGTH & " and left(ORGAN_NO," & C_FACTORY_LENGTH & ") like '" & SSComboBoxEx4Organ.ItemData(SSComboBoxEx4Organ.ListIndex) & "%' and organ_level=" & C_LARGE_LEVEL & HaveOrganMark
End If
Else
SSComboBoxEx4Large.Clear
End If
End Sub
Private Sub SSComboBoxEx4Small_Change()
DisplayRelateItems SSComboBoxEx4Small
End Sub
Private Sub SSComboBoxEx4Small_GotFocus()
If Trim(Me.SSComboBoxEx4Organ.text) <> "" Then
If Trim(Me.SSComboBoxEx4Company.text) <> "" Then
If Trim(SSComboBoxEx4Large.text) <> "" Then
FillComboBox SSComboBoxEx4Small, "T_ORGAN", "ORGAN_NO", "ORGAN_NAME", 0, " where Len(ORGAN_NO)=" & C_SMALL_LENGTH & " and left(ORGAN_NO," & C_LARGE_LENGTH & ") like '" & SSComboBoxEx4Large.ItemData(SSComboBoxEx4Large.ListIndex) & "%' and organ_level=" & C_SMALL_LEVEL & HaveOrganMark
Else
FillComboBox SSComboBoxEx4Small, "T_ORGAN", "ORGAN_NO", "ORGAN_NAME", 0, " where Len(ORGAN_NO)=" & C_LARGE_LENGTH & " and left(ORGAN_NO," & C_COMPANY_LENGTH & ") like '" & SSComboBoxEx4Company.ItemData(SSComboBoxEx4Company.ListIndex) & "%' and organ_level=" & C_SMALL_LEVEL & HaveOrganMark
End If
Else
If Trim(SSComboBoxEx4Large.text) <> "" Then
FillComboBox SSComboBoxEx4Small, "T_ORGAN", "ORGAN_NO", "ORGAN_NAME", 0, " where Len(ORGAN_NO)=" & C_LARGE_LENGTH & " and left(ORGAN_NO," & C_COMPANY_LENGTH & ") like '" & SSComboBoxEx4Large.ItemData(SSComboBoxEx4Large.ListIndex) & "%' and organ_level=" & C_SMALL_LEVEL & HaveOrganMark
Else
FillComboBox SSComboBoxEx4Small, "T_ORGAN", "ORGAN_NO", "ORGAN_NAME", 0, " where Len(ORGAN_NO)=" & C_COMPANY_LENGTH & " and left(ORGAN_NO," & C_FACTORY_LENGTH & ") like '" & SSComboBoxEx4Organ.ItemData(SSComboBoxEx4Organ.ListIndex) & "%' and organ_level=" & C_SMALL_LEVEL & HaveOrganMark
End If
End If
Else
SSComboBoxEx4Small.Clear
End If
End Sub
Private Sub SSComboBoxEx4Small_LostFocus()
CheckValidate Me.SSComboBoxEx4Small
End Sub
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -