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

📄 frmcustomer.frm

📁 金算盘软件代码
💻 FRM
📖 第 1 页 / 共 5 页
字号:
End Sub

'筛选
Private Sub mclsMainControl_EditFilter()
    Dim blnFlage(2) As Boolean
    With sstCustomer
    '    If Not mblnIsSaveListset(.Tab) Then
    '        If Not FindlngViewID(intViewID(.Tab)) Then mclsList(.Tab).ListSet.SaveList
    '        mblnIsSaveListset(.Tab) = True
    '    End If
        If mclsList(.Tab).ListSet.ListID < 1 Then mclsList(.Tab).ListSet.SaveList
        Filter.ShowFilter mclsList(.Tab).ListSet.ListID, 1, , , , , blnFlage(.Tab)
        If Not blnFlage(.Tab) Then Exit Sub
        mclsList(.Tab).SaveListSet
        mclsList(.Tab).ListSet.ViewId = intViewID(.Tab)
        mclsList(.Tab).FlexGrid.Cols = 0
        Set datCustomer(.Tab).Resultset = GetList(.Tab)
        If Not datCustomer(.Tab).Resultset.EOF Then datCustomer(.Tab).Resultset.MoveLast
        datCustomer(.Tab).Resultset.Close
        'Set datItem(.Tab).Recordset = Nothing
        mclsList(.Tab).SetFlexGrid
        UpdateMenuStatus
        '初始化查找复合列表框
        mclsList(.Tab).InitcboFindKind
        If chkShowAll.Value = 0 Then mclsList(.Tab).DoShowAll False
        
    End With
End Sub

Private Sub mclsMainControl_FilePrintSetup()
    Dim MyPrintSet As PrintClass
    Set MyPrintSet = New PrintClass
    With sstCustomer
        Select Case .Tab
            Case 0
                MyPrintSet.PrintSetUp gclsBase.BaseDB, mclsList(.Tab).FlexGrid, , , , 54, " " & Chr(1) & gclsBase.BaseName & Chr(1) & gclsBase.OperatorName
            Case 1
                MyPrintSet.PrintSetUp gclsBase.BaseDB, mclsList(.Tab).FlexGrid, , , , 16, " " & Chr(1) & gclsBase.BaseName & Chr(1) & gclsBase.OperatorName
            Case 2
                MyPrintSet.PrintSetUp gclsBase.BaseDB, mclsList(.Tab).FlexGrid, , , , 64, " " & Chr(1) & gclsBase.BaseName & Chr(1) & gclsBase.OperatorName
        End Select
    End With
    Set MyPrintSet = Nothing
End Sub

Private Sub mclsMainControl_ListReportMenu(ByVal intIndex As Integer)
   If gclsBase.ControlAccount Then
       Select Case intIndex
              'Case 0
                   'AccountAR_Detail '应收明细
                  ' Report.ShowStandardReport 254, 212
              'Case 1
                   'AccountAP_Detail '往来单位类型一览表
    '               Report.ShowListReport 303, 322
    '          Case 1
    '               Report.ShowListReport 78, 132
                   'Customer_Detail '往来单位一览表
              Case 0
                  ' AccountAR_Total '应收余额总帐
                   Report.ShowBalance 1420, 638, , , ListID(sstCustomer.Tab)
              Case 1
                   'AccountAP_Total '应付余额总帐
                   Report.ShowBalance 1421, 639, , , ListID(sstCustomer.Tab)
              Case 2
                    Report.ShowAgeReport 120, 610
                  ' AccountAP_Analyse '应付帐龄分析表
              Case 3
                    Report.ShowAgeReport 121, 126 'AccountAR_Analyse '应收帐龄分析表
    '        #If conVersionType <> 16 Then
    '          Case 6
    '                Report.ShowListReport 79, 133
    '        #End If
      End Select
    Else
        Select Case intIndex
            Case 0
                Report.ShowBalance 1420, 638, , , ListID(sstCustomer.Tab)
            Case 1
                Report.ShowBalance 1421, 639, , , ListID(sstCustomer.Tab)
            Case 2
                Report.ShowAgeReport 1691, 1005
            Case 3
                Report.ShowAgeReport 1693, 1007
        End Select
    End If
  
End Sub

Private Sub mclsSubClass_WndProc(Msg As Long, wParam As Long, lParam As Long, Result As Long)
    Debug.Print "hook2 Grid Start"
    mclsList(sstCustomer.Tab).HookProc Msg, wParam, lParam, mclsSubClass
End Sub

Private Sub mclsSubClassForm_WndProc(Msg As Long, wParam As Long, lParam As Long, Result As Long)
    Dim MinMax As MINMAXINFO

    If Msg = WM_GETMINMAXINFO Then
        CopyMemory MinMax, ByVal lParam, Len(MinMax)
        
        MinMax.ptMinTrackSize.x = 450
        MinMax.ptMinTrackSize.y = 250
        
        CopyMemory ByVal lParam, MinMax, Len(MinMax)
        Result = 0
    End If
End Sub
'
' FLEXGRID控件
'
'双击FLEXGRID调用卡片
Private Sub msgCustomer_DblClick()
    With msgCustomer
        If .MouseRow > 0 And .ColSel > 0 And .MouseCol > 1 And frmMain.mnuEditEdit.Enabled Then
           mclsMainControl_EditEdit
        End If
    End With
End Sub

'单击FLEXGRID停用列,停用或启用当前记录
Private Sub msgCustomer_MouseDown(Button As Integer, Shift As Integer, x As Single, y As Single)
        If Button = vbRightButton Then
            Form_MouseDown Button, Shift, x, y
        End If
End Sub

Private Sub msgCustomer_MouseUp(Button As Integer, Shift As Integer, x As Single, y As Single)
    With msgCustomer
        If Button = vbLeftButton Then
           If chkShowAll.Value = 1 And .ColSel > 0 And .MouseRow > 0 And .Row > 0 Then
               If x > .ColPos(1) And x < .ColPos(2) Then
                   .MousePointer = flexHourglass
                   mclsMainControl_EditInActive
                   .MousePointer = flexDefault
               End If
           End If
          UpdateMenuStatus
        End If
    End With
End Sub

'双击FLEXGRID调用卡片
Private Sub msgCustomerType_DblClick()
    With msgCustomerType
        If .MouseRow > 0 And .ColSel > 0 And .MouseCol > 1 And frmMain.mnuEditEdit.Enabled Then
           mclsMainControl_EditEdit
        End If
    End With
End Sub

Private Sub msgCustomerType_MouseDown(Button As Integer, Shift As Integer, x As Single, y As Single)
        If Button = vbRightButton Then
            Form_MouseDown Button, Shift, x, y
        End If
End Sub

Private Sub msgCustomerType_MouseUp(Button As Integer, Shift As Integer, x As Single, y As Single)
    With msgCustomerType
        If Button = vbLeftButton Then
            If chkShowAll.Value = 1 And .ColSel > 0 And .MouseRow > 0 And .Row > 0 Then
                If x > .ColPos(1) And x < .ColPos(2) Then
                    .MousePointer = flexHourglass
                    mclsMainControl_EditInActive
                    .MousePointer = flexDefault
                End If
            End If
            UpdateMenuStatus
        End If
    End With
End Sub

Private Sub msgJob_DblClick()
    With msgJob
        If .MouseRow > 0 And .ColSel > 0 And .MouseCol > 1 And frmMain.mnuEditEdit.Enabled Then
           mclsMainControl_EditEdit
        End If
    End With
End Sub

Private Sub msgJob_MouseDown(Button As Integer, Shift As Integer, x As Single, y As Single)
    If Button = vbRightButton Then
        Form_MouseDown Button, Shift, x, y
    End If
End Sub

Private Sub msgJob_MouseUp(Button As Integer, Shift As Integer, x As Single, y As Single)
    With msgJob
        If Button = vbLeftButton Then
            If chkShowAll.Value = 1 And .ColSel > 0 And .MouseRow > 0 And .Row > 0 Then
                If x > .ColPos(1) And x < .ColPos(2) Then
                    .MousePointer = flexHourglass
                    mclsMainControl_EditInActive
                    .MousePointer = flexDefault
                End If
            End If
            UpdateMenuStatus
        End If
    End With
End Sub

Private Sub sstCustomer_Click(PreviousTab As Integer)
    Dim blnOldShowAll As Boolean
    With sstCustomer
        Set mclsList(0).Again = Nothing
        Set mclsList(1).Again = Nothing
        Set mclsList(2).Again = Nothing
        mclsList(0).FlexGrid.TabStop = False
        mclsList(1).FlexGrid.TabStop = False
        mclsList(2).FlexGrid.TabStop = False
        mclsList(.Tab).FlexGrid.TabStop = True
        Set mclsList(.Tab).Again = cmdAgain
        mclsList(.Tab).FlexNoChange = True
        mclsList(.Tab).FindNoChange = True
        
        '改变钩子对象的作用窗体
        blnOldShowAll = mclsList(.Tab).ShowAll
        
        mclsSubClass.hwnd = mclsList(.Tab).FlexGrid.hwnd
        If Not blnIsLoad(.Tab) Then
            mclsList(.Tab).FlexGrid.Redraw = False
            '得到列表记录集
            mclsList(.Tab).ListSet.ViewId = intViewID(.Tab)
            mclsList(.Tab).InitFlexGrid
'              mclsList(.Tab).FlexGrid.Redraw = False
            Set datCustomer(.Tab).Resultset = GetList(.Tab)
            If datCustomer(.Tab).Resultset.RowCount > 0 Then
               datCustomer(.Tab).Resultset.MoveLast
            End If
            datCustomer(.Tab).Resultset.Close
'            Set datCustomer(.Tab).Recordset = Nothing
            mclsList(.Tab).SetFlexGrid
            
            '初始化查找复合列表框
            mclsList(.Tab).InitcboFindKind
            '重画窗体
            mclsList(.Tab).FlexGrid.Redraw = False
            'RedrawForm
            '定位到第一行
            With mclsList(.Tab).FlexGrid
                If .Rows > 1 Then
                    mclsList(sstCustomer.Tab).FlexNoChange = False
                    .Row = 1
                    mclsList(sstCustomer.Tab).FlexNoChange = True
                End If
                .col = 0
                .ColSel = .Cols - 1
            End With
            'chkShowAll.Value = 0
            mclsList(.Tab).DoShowAll blnOldShowAll
            UpdateMenuStatus
            blnIsLoad(.Tab) = True
            mclsList(.Tab).FlexGrid.Redraw = True
        Else
            '恢复查找复合列表项
            mblnComboxNoClick = True
            mclsList(.Tab).InitcboFindKind
            mblnComboxNoClick = False
            '恢复查找内容
            If mclsList(.Tab).FlexGrid.Rows > 1 And mclsList(.Tab).FlexGrid.ColSel > 0 Then
                txtfind.Text = mclsList(.Tab).FlexGrid.TextMatrix(mclsList(.Tab).FlexGrid.Row, mclsList(.Tab).SortCol)
            Else
                txtfind.Text = ""
            End If
            mblnCheckNoChange = True
            chkShowAll.Value = IIf(mclsList(.Tab).ShowAll, 1, 0)
            UpdateMenuStatus
            mblnCheckNoChange = False
        End If
        RedrawForm
        mclsList(.Tab).FlexNoChange = False
        mclsList(.Tab).FindNoChange = False
        If mclsList(.Tab).FlexGrid.Row = 0 Then mclsList(.Tab).FlexGrid.col = 0
       #If conVersionType <> 16 Then
        If .Tab = 1 Then
            cmdPopupMenu(3).Enabled = True
        Else
            cmdPopupMenu(3).Enabled = False
        End If
       #End If
    End With
    Debug.Print "Hook1:" & mclsList(sstCustomer.Tab).FlexGrid.hwnd
End Sub
'
'查找内容 TextBox 控件
'
Private Sub txtFind_Change()
    mclsList(sstCustomer.Tab).TextFind txtfind.Text
End Sub

'应主控对象事件
'
'编辑卡片
Private Sub mclsMainControl_EditEdit()
    Dim lngID As Long
    lngID = ListID(sstCustomer.Tab)
    Me.Enabled = False
    Select Case sstCustomer.Tab
        Case 0
            If lngID > 0 Then
                If CheckIDUsed("CustomerType", "lngCustomerTypeID", lngID) Then
'                    frmCustomerTypeListCard.EditCard lngID
                    frmCustomerTypeCard.EditCard lngID, vbModal
                    Set frmCustomerTypeCard = Nothing
                Else
                    ShowMsg 0, "该单位类型不存在,不能进行修改!", vbExclamation + MB_TASKMODAL, "修改单位类型"
                    ToolRefresh sstCustomer.Tab
                End If
            End If
         Case 1
            If lngID > 0 Then
                If CheckIDUsed("Customer", "lngCustomerID", lngID) Then
'                    frmCustomerListCard.EditCard lngID
                    frmCustomerCard.EditCard lngID, vbModal
                    Set frmCustomerCard = Nothing
                Else
                    ShowMsg 0, "该往来单位不存在,不能进行修改!", _
                            vbExclamation + MB_TASKMODAL, "修改往来单位"
                    ToolRefresh sstCustomer.Tab
                End If
            End If
        Case 2
            If lngID > 0 Then
                If CheckIDUsed("Job", "lngJobID", lngID) Then
'                    frmJobListCard.EditCard lngID
                    frmJobCard.EditCard lngID, vbModal
                    Set frmJobCard = Nothing
                Else
                    ShowMsg 0, "该工程不存在,不能进行修改!", _
                           vbExclamation + MB_TASKMODAL, "修改工程"
                    ToolRefresh sstCustomer.Tab
                End If
            End If
    End Select
    Me.Enabled = True
End Sub

'新增卡片
Private Sub mclsMainControl_EditNew()
    Select Case sstCustomer.Tab
        Case 0
'           frmCustomerTypeListCard.AddCard
            frmCustomerTypeCard.AddCard , vbModal
            Set frmCustomerTypeCard = Nothing
        Case 1
'           frmCustomerListCard.AddCard
            frmCustomerCard.AddCard , vbModal
            Set frmCustomerCard = Nothing
        Case 2
'            frmJobListCard.AddCard
            frmJobCard.AddCard , vbModal
            Set frmJobCard = Nothing
    End Select
End Sub

'删除记录
Private Sub mclsMainControl_EditDel()
'    Dim recRecordset As Recordset
'    If mIsShowCard Then
'        If lngID = frmCustomerCard.CustomerID Then
'            MsgBox "不能删除当前编辑的付款方式!", vbExclamation
'            frmCustomerCard.SetFocus

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -