Foxtable(狐表)用户栏目专家坐堂 → [求助] 组合查询 不知哪错,老师解说下


  共有2806人关注过本帖树形打印复制链接

主题:[求助] 组合查询 不知哪错,老师解说下

帅哥哟,离线,有人找我吗?
dxjwlf
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:261 积分:2195 威望:0 精华:0 注册:2015/5/15 14:51:00
[求助] 组合查询 不知哪错,老师解说下  发帖心情 Post By:2015/8/22 15:53:00 [只看该作者]

一个组合框,用于选 表名  一个文本框,用于输入查找姓名,一个按钮用于查找并找开 记录窗口,同时显示查找 到的数据

我的代码:
Dim cb As String = e.Form.Controls("ComboBox1").value
Dim txt As String = e.Form.Controls("TextBox1").value
Dim dt As Table 
dt.Name = "cb"
If cb Is Nothing  Or txt Is Nothing Then
    MessageBox.Show("请输入查询类别或姓名")
Else
    With dt("cb")
        Dim r As Integer
        r = .Find("txt", 0, 0, False, False, True)
        If r > - 1 Then '如果找到符合条件的行
            .Position = r '则选择该行
        End If
    End With
End If

Dim rgd As WinForm.RecordGrid = Forms("查询").Controls("RecordGrid1")
rgd.Table = dt("cb")
rgd.Build()
Forms("查询").open()

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110574 积分:562760 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2015/8/22 16:22:00 [只看该作者]

Dim dt As Table 
dt.Name = "cb"
改为
Tables("cb")
下面的都改了,不能这样用

 回到顶部
帅哥哟,离线,有人找我吗?
dxjwlf
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:261 积分:2195 威望:0 精华:0 注册:2015/5/15 14:51:00
  发帖心情 Post By:2015/8/22 16:51:00 [只看该作者]

弹出;不存在名为 cb的table




Dim cb As String = e.Form.Controls("ComboBox1").value
Dim txt As String = e.Form.Controls("TextBox1").value

If cb Is Nothing  Or txt Is Nothing Then
    MessageBox.Show("请输入查询类别或姓名")
Else
    With Tables("cb")
        Dim r As Integer
        r = .Find("txt", 0, 0, False, False, True)
        If r > - 1 Then '如果找到符合条件的行
            .Position = r '则选择该行
        End If
    End With
End If

Dim rgd As WinForm.RecordGrid = Forms("查询").Controls("RecordGrid1")
rgd.Table = Tables("cb")
rgd.Build()
Forms("查询").open()

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110574 积分:562760 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2015/8/22 17:00:00 [只看该作者]

表名不存在,你先要建表然后再查询

 回到顶部
帅哥哟,离线,有人找我吗?
dxjwlf
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:261 积分:2195 威望:0 精华:0 注册:2015/5/15 14:51:00
  发帖心情 Post By:2015/8/22 17:06:00 [只看该作者]

怎么可能 ,我这是实例

 回到顶部
帅哥哟,离线,有人找我吗?
dxjwlf
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:261 积分:2195 威望:0 精华:0 注册:2015/5/15 14:51:00
  发帖心情 Post By:2015/8/22 17:09:00 [只看该作者]

也就是没有实例化一个对象。
当声明了变量,但是没有赋值,仍然为null.用的时候就会报错. 会不会是 变量 cb 的问题


 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110574 积分:562760 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2015/8/22 17:12:00 [只看该作者]

像你那样定义肯定不对嘛,没有实例化
你要定义临时表也行啊
Dim dtb As New DataTableBuilder("统计")
dtb.AddDef("产品", GetType(String), 32)
dtb.AddDef("客户", GetType(String), 32)
dtb.AddDef("数量", GetType(Integer))
dtb.AddDef("金额", GetType(Double))
dtb.Build()
MainTable
Tables("统计")

 回到顶部
帅哥哟,离线,有人找我吗?
dxjwlf
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:261 积分:2195 威望:0 精华:0 注册:2015/5/15 14:51:00
  发帖心情 Post By:2015/8/22 17:15:00 [只看该作者]

组合框是通过 列表选取 。。应该用selectvalue?

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110574 积分:562760 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2015/8/22 17:17:00 [只看该作者]

嗯,可以

 回到顶部
帅哥哟,离线,有人找我吗?
lmk
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:39 积分:302 威望:0 精华:0 注册:2011/1/9 17:22:00
  发帖心情 Post By:2015/8/22 17:24:00 [只看该作者]

把cb与txt的引号去掉,否则系统会把变量cb与txt当做字符处理的。



 回到顶部
总数 11 1 2 下一页