以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  查询代码  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=102400)

--  作者:独行侠
--  发布时间:2017/6/19 11:37:00
--  查询代码
这是我设计的查询窗口,涉及两个表,一个产品表,一个人员表。  我想实现的内容:  选择一个查询的类型,比如选择物资,上面的名称和编号就都是物资的了,可以下拉选择,也可以直接手动输入搜索。     要是选择人员的话,上面的姓名和编号就都是人员的,下拉内容也都是人员的内容。
,可以下拉选择也可以直接手动输入搜索。
图片点击可在新窗口打开查看此主题相关图片如下:`r1rfis78{m8bk21su}mzaf.png
图片点击可在新窗口打开查看


我的 开始搜索 的代码

If e.Form.Controls("人员").Checked = True

    Dim  t = Tables("人员")

    Dim Filter As String

    With e.Form.Controls("ComboBox1")

        If .Value IsNot Nothing Then

            Filter = "物资 = \'" & .Value & "\'"

        End If

    End With

    With e.Form.Controls("ComboBox2")

        If .Value IsNot Nothing Then

            If Filter > "" Then

                Filter = Filter & " And "

            End If

            Filter = Filter & "人员 = \'" & .Value & "\'"

        End If

    End With

    

    t.Filter = Filter

ElseIf e.Form.Controls("物资").Checked = True

    Dim  t = Tables("物资")

End If

这是我的 AfterLoad事件 的代码

Dim cmb1 As WinForm.ComboBox = e.Form.Controls("ComboBox1")

Dim cmb2 As WinForm.ComboBox = e.Form.Controls("ComboBox2")

cmb1.ComboList = DataTables("人员").GetComboListString("name") And DataTables("物资").GetComboListString("wzmc")

cmb2.ComboList = DataTables("人员").GetComboListString("bh") And DataTables("物资").GetComboListString("bh")

都弄好之后我预览结果,发生了错误

并且在产品那里下拉,什么都没有,搜索也不能用

是我的代码错了吗?   我想实现的那样的搜索效果如何实现?鼓捣了一中午了,又卡住了……

上传的图片没有了…… 

这是错误报告  跟 最后结果的图片

http://pan.baidu.com/s/1i5Fsqwt  http://pan.baidu.com/s/1nuTgZSt

[此贴子已经被作者于2017/6/19 14:50:48编辑过]

--  作者:有点蓝
--  发布时间:2017/6/19 11:53:00
--  
请上传实例项目测试
--  作者:有点色
--  发布时间:2017/6/19 12:04:00
--  

If e.Form.Controls("rdoYifu").Checked = True
    Dim  t = Tables("人员")
    Dim Filter As String
    With e.Form.Controls("cmbProduct")
        If .Value IsNot Nothing Then
            Filter = "产品 = \'" & .Value & "\'"
        End If
    End With
    With e.Form.Controls("cmbCustomer")
        If .Value IsNot Nothing Then
            If Filter > "" Then
                Filter = Filter & " And "
            End If
            Filter = Filter & "客户 = \'" & .Value & "\'"
        End If
    End With
   
    t.Filter = Filter
ElseIf e.Form.Controls("rdoWeifu").Checked = True
    Dim  t = Tables("产品")

 

 

 

End If