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

📄 xtquery.frm

📁 一套鞋厂的销售管理系统
💻 FRM
📖 第 1 页 / 共 4 页
字号:
                            s = s & Mid(DestRst![DisValue], i, 1)
                        End If
                    Next
'                    Me.DateBegin.Value = Left(DestRst![DisValue], 8)
'                    Me.DateEnd.Value = Mid(DestRst![DisValue], 10, 8)
               End If
            Case 5
                Me.WriteValueLabel.Caption = SourceRst![DoSource]
                Me.WriteValue.Left = Me.WriteValueLabel.Left + Me.WriteValueLabel.Width + 100
                Me.WriteValue.Visible = True
                Me.WriteValueLabel.Visible = True
                If a > 0 Then
                    DestRst.MoveFirst
                    Me.WriteValue.Text = DestRst![DisValue]
                End If
        End Select
    End If
End Sub


Private Sub Form_Unload(Cancel As Integer)
    SourceRst.Close
    DestRst.Close
    Set SourceRst = Nothing
    Set DestRst = Nothing
End Sub

Private Sub OptionSellAssay_Click()
    Me.TotalType.Visible = False
    Me.AssayType.Visible = True
    Me.LineType.Visible = False
    Me.LineTypeCP.Visible = False
    PrintFilter "销售分析"
End Sub

Private Sub OptionSellLine_Click()
    Me.TotalType.Visible = False
    Me.AssayType.Visible = False
    Me.LineType.Visible = True
    Me.LineTypeCP.Visible = False
    PrintFilter "销售排行(地)"
End Sub

Private Sub OptionSellLineCP_Click()
    Me.TotalType.Visible = False
    Me.AssayType.Visible = False
    Me.LineType.Visible = False
    Me.LineTypeCP.Visible = True
    PrintFilter "销售排行(产)"
End Sub

Private Sub OptionSellTotal_Click()
    Me.TotalType.Visible = True
    Me.AssayType.Visible = False
    Me.LineType.Visible = False
    Me.LineTypeCP.Visible = False
    PrintFilter "销售统计"
End Sub


Private Sub SourceList_Click()
    Dim i As Long, j As Long
    'Debug.Print CurrentSource
    If CurrentSource >= 0 And CurrentSource <> SourceList.ListIndex Then
        DestRst.Filter = "DoClass='" & SourceList.List(CurrentSource) & "'"
        i = DestRst.RecordCount
        If i > 0 Then
            DestRst.MoveFirst
            For j = 1 To i
                DestRst.delete
                DestRst.MoveNext
            Next
        End If
        If SourceList.Selected(CurrentSource) Then
            SourceRst.Filter = "Class='" & SourceList.List(CurrentSource) & "'"
            Select Case SourceRst![dotype]
                Case 0
                    If SourceRst![DisplayType] = "0" Then
                        j = 0
                        For i = 0 To SqlList.ListCount - 1
                            If SqlList.Selected(i) Then
                                DestRst.AddNew
                                    DestRst![doclass] = SourceRst![Class]
                                    DestRst![dotype] = SourceRst![DoWhy]
                                    DestRst![DisValue] = SqlList.List(i)
                                    DestRst![dovalue] = DestArray(1, i + 1)
                                DestRst.Update
                                j = j + 1
                            End If
                        Next
                        If j = 0 Then
                            SourceList.Selected(CurrentSource) = False
                        End If
                    Else
                        j = 0
                        For i = 0 To DoubleList.ListCount - 1
                            DestRst.AddNew
                                DestRst![doclass] = SourceRst![Class]
                                DestRst![dotype] = SourceRst![DoWhy]
                                DestRst![DisValue] = DoubleList.List(i)
                                DestRst![dovalue] = DestArray(1, i + 1)
                            DestRst.Update
                            j = j + 1
                        Next
                        If j = 0 Then
                            SourceList.Selected(CurrentSource) = False
                        End If
                    End If
                Case 1, 2
                    j = 0
                    For i = 0 To SqlList.ListCount - 1
                        If SqlList.Selected(i) Then
                            DestRst.AddNew
                                DestRst![doclass] = SourceRst![Class]
                                DestRst![dotype] = SourceRst![DoWhy]
                                DestRst![DisValue] = SqlList.List(i)
                                DestRst![dovalue] = DestArray(1, i + 1)
                            DestRst.Update
                            j = j + 1
                        End If
                    Next
                    If j = 0 Then
                        SourceList.Selected(CurrentSource) = False
                    End If
                Case 3
                    DestRst.AddNew
                        DestRst![doclass] = SourceRst![Class]
                        DestRst![dotype] = "="
                        DestRst![DisValue] = Me.DateBegin.Value
                        DestRst![dovalue] = Me.DateBegin.Value
                    DestRst.Update
                Case 4
                    DestRst.AddNew
                        DestRst![doclass] = SourceRst![Class]
                        DestRst![dotype] = "Between"
                        DestRst![DisValue] = Me.DateBegin.Value & "|" & Me.DateEnd.Value & "|"
                        DestRst![dovalue] = Me.DateBegin.Value & "|" & Me.DateEnd.Value & "|"
                    DestRst.Update
                Case 5
                    DestRst.AddNew
                        DestRst![doclass] = SourceRst![Class]
                        DestRst![dotype] = "="
                        DestRst![DisValue] = Me.WriteValue.Text
                        DestRst![dovalue] = Me.WriteValue.Text
                    DestRst.Update
            End Select
        End If
    End If
    CurrentSource = SourceList.ListIndex
    PrintDestBox
    PrintSqlBox
End Sub

Private Sub PrintDestBox()
    Dim i As Long, j As Long, k As Long, s As String, l As String
    DestList.Clear
    DestRst.Filter = ""
    i = DestRst.RecordCount
    If i > 0 Then
        DestRst.MoveFirst
        s = ""
        For j = 1 To i
            Select Case DestRst![dotype]
                Case "="
                    If s = DestRst![doclass] Then
                        l = l & " 及 " & "<" & DestRst![DisValue] & ">"
'                        l = l & " 及 " & "<" & DestRst![DisValue] & "|" & DestRst![DoValue] & ">"
                    Else
                        If l = "" Then
                        Else
                            DestList.AddItem l
                        End If
                        l = DestRst![doclass] & " 等于 " & "<" & DestRst![DisValue] & ">"
'                        l = DestRst![DoClass] & " 等于 " & "<" & DestRst![DisValue] & "|" & DestRst![DoValue] & ">"
                        s = DestRst![doclass]
                    End If
                    If j = i Then
                        DestList.AddItem l
                    End If
                Case "Between"
                    For k = 1 To Len(DestRst![DisValue])
                        If Mid(DestRst![DisValue], k, 1) = "|" Then
                            DestList.AddItem DestRst![doclass] & " 在 " & "<" & Left(DestRst![DisValue], k - 1) & "> 与 <" & Mid(DestRst![DisValue], k + 1, Len(DestRst![DisValue]) - k - 1) & "> 之间"
                            Exit For
                        End If
                    Next
                Case Else
                    If s = DestRst![doclass] Then
                        l = l & " 及 " & "<" & DestRst![DisValue] & ">"
'                        l = l & " 及 " & "<" & DestRst![DisValue] & "|" & DestRst![DoValue] & ">"
                    Else
                        If l = "" Then
                        Else
                            DestList.AddItem l
                        End If
                        l = DestRst![doclass] & " 等于 " & "<" & DestRst![DisValue] & ">"
                        'l = DestRst![DoClass] & " 等于 " & "<" & DestRst![DisValue] & "|" & DestRst![DoValue] & ">"
                        s = DestRst![doclass]
                    End If
                    If j = i Then
                        DestList.AddItem l
                    End If
            End Select
            DestRst.MoveNext
        Next
    End If
End Sub

Private Sub SourceList_ItemCheck(Item As Integer)
    Dim i As Long, j As Long, k As Long, s As String
    If SourceList.Selected(Item) Then
        SourceRst.Filter = "Class='" & SourceList.List(Item) & "'"
        s = Trim(SourceRst![groupid])
        SourceRst.Filter = "Class<>'" & SourceList.List(Item) & "' and GroupId=" & s
        i = SourceRst.RecordCount
        If i > 0 Then
            SourceRst.MoveFirst
            For j = 1 To i
               ' Debug.Print SourceRst![Class]
                For k = 0 To SourceList.ListCount - 1
                    'MsgBox SourceList.Selected(k)
                    If SourceList.List(k) = SourceRst![Class] And SourceList.Selected(k) Then
                        SourceList.Selected(Item) = False
                        MsgBox "{" & SourceList.List(k) & "}与{" & SourceList.List(Item) & "}只能选择一种!!!"
                    End If
                Next
            Next
        End If
    End If
End Sub

Public Sub PrintFilter(vType As String)
Dim i As Long, j As Long
    If SourceRst Is Nothing Then
    Else
        SourceRst.Close
        Set SourceRst = Nothing
    End If
    Set SourceRst = New ADODB.Recordset
    SourceRst.Open "select * from XtQueryClass where Type='" & vType & "' Order By GroupID", GetConnect, adOpenStatic, adLockReadOnly
    i = SourceRst.RecordCount
    SourceList.Clear
    If i > 0 Then
        SourceRst.MoveFirst
        For j = 1 To i
            SourceList.AddItem SourceRst![Class]
            SourceRst.MoveNext
        Next
    End If
    i = DestRst.RecordCount
    If i > 0 Then
        DestRst.MoveFirst
        For j = 1 To i
            DestRst.delete
            DestRst.MoveNext
        Next
    End If

    CurrentSource = -1
    'DestList.Clear
    PrintSqlBox
    PrintDestBox
End Sub

⌨️ 快捷键说明

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