组合查询

来源:互联网 发布:faker瑞文数据 编辑:程序博客网 时间:2024/05/31 13:16


'在单击组合条件时,文本框可编辑
Private Sub Combo3_Click(Index As Integer)
    Select Case Index
        '2可编辑
        Case 0
        Combo1(1).Enabled = True
        Combo2(1).Enabled = True
        txtcontent1(1).Enabled = True
        '3可编辑
        Case 1
        Combo1(2).Enabled = True
        Combo2(2).Enabled = True
        txtcontent1(2).Enabled = True
    End Select
End Sub

'查询
Private Sub cmdInquire_Click()
'如果第一行输入内容有空,提示信息
If Trim(Combo1(0).Text) = "" Or Trim(Combo2(0).Text) = "" Or Trim(txtcontent1(0).Text) = "" Then
    MsgBox "请输入完整的查询条件", vbOKOnly, "提示"
    Exit Sub
End If


txtsql = "select * from worklog_info where "
txtsql = txtsql & filedname(Combo1(0).Text) & Trim(Combo2(0).Text) & "'" & Trim(txtcontent1(0).Text) & "'"
'第一个查询条件不为空
If Trim(Combo3(0).Text <> "") Then
    '判断第二行信息是否填写完整,否,提示,是,查询
    If Trim(Combo1(1).Text) = "" Or Trim(Combo2(1).Text) = "" Or Trim(txtcontent1(1).Text) = "" Then
        MsgBox "您选择了第一个组合关系,请输入第二行条件再查询!", vbOKOnly, "提示"
        Exit Sub
    Else
        txtsql = txtsql & " " & filedname(Combo3(0).Text) & " " & filedname(Combo1(1).Text) & Combo2(1).Text & "'" & Trim(txtcontent1(1).Text) & "'"
        '查询完后不可编辑
        Combo1(1).Enabled = False
        Combo2(1).Enabled = False
        txtcontent1(1).Enabled = False
    End If
End If
'第二个查询条件不为空
If Trim(Combo3(1).Text <> "") Then
    '判断第三行信息是否填写完整,否,提示,是,查询
    If Trim(Combo1(2).Text) = "" Or Trim(Combo2(2).Text) = "" Or Trim(txtcontent1(2).Text) = "" Then
        MsgBox "您选择了第二个组合关系,请输入第三行条件再查询!", vbOKOnly, "提示"
        Exit Sub
    Else
        txtsql = txtsql & " " & filedname(Combo3(1).Text) & " " & filedname(Combo1(2).Text) & Combo2(2).Text & "'" & Trim(txtcontent1(2).Text) & "'"
        '查询完后不可编辑
        Combo1(1).Enabled = False
        Combo2(1).Enabled = False
        txtcontent1(1).Enabled = False
        Combo2(2).Enabled = False
        Combo1(2).Enabled = False
        txtcontent1(2).Enabled = False
    End If
End If
'记录添加到myflexgrid表中
Set mrc = ExecuteSQL(txtsql, Msgtext)
    With myflexgrid
        .Rows = 1
        .TextMatrix(0, 0) = "教师"
        .TextMatrix(0, 1) = "级别"
        .TextMatrix(0, 2) = "注册日期"
        .TextMatrix(0, 3) = "注册时间"
        .TextMatrix(0, 4) = "注销日期"
        .TextMatrix(0, 5) = "注销时间"
        .TextMatrix(0, 6) = "机器名"
        .TextMatrix(0, 7) = "状态"
        Do While Not mrc.EOF
            .Rows = .Rows + 1
            .CellAlignment = 4
            .TextMatrix(.Rows - 1, 0) = mrc.Fields(1)
            .TextMatrix(.Rows - 1, 1) = mrc.Fields(2)
            .TextMatrix(.Rows - 1, 2) = mrc.Fields(3)
            .TextMatrix(.Rows - 1, 3) = mrc.Fields(4)
            .TextMatrix(.Rows - 1, 4) = Trim(mrc.Fields(5))
            .TextMatrix(.Rows - 1, 5) = Trim(mrc.Fields(6))
            .TextMatrix(.Rows - 1, 6) = mrc.Fields(7)
            .TextMatrix(.Rows - 1, 7) = mrc.Fields(8)
            mrc.MoveNext
            Call AdjustColWidth(frmopertorrecord, myflexgrid)  '自定调节myflexgrid的列宽
        Loop
        mrc.Close
    End With
End Sub


学习感悟:每当遇到一个问题,总是自己给自己一个下马威,告诉自己这个很难,然后停滞不前,其实问题并没有自己想象的那么难,就算难又能怎么样,总会有办法解决的,在逼自己坚持弄完之后,发现障碍是自己设立的,这是我们做事一贯的风格,就是希望在以后不管遇到什么样的事情,都要鼓励自己,改掉之前的坏毛病。


0 0
原创粉丝点击