⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 frmempremove.frm

📁 本公司开发得大请油田人事管理系统c/s结构
💻 FRM
📖 第 1 页 / 共 3 页
字号:
    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 + -