Foxtable(狐表)用户栏目专家坐堂 → [求助]筛选能否用加载条件来取代


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

主题:[求助]筛选能否用加载条件来取代

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


加好友 发短信
等级:小狐 帖子:305 积分:2695 威望:0 精华:0 注册:2011/10/29 16:26:00
[求助]筛选能否用加载条件来取代  发帖心情 Post By:2017/9/28 12:34:00 [只看该作者]

有个数据库,用的是外部数据源sql
想从“学生信息表”中将部分学生导入到“班级明细表”中,原来设置了个“筛选”按钮,代码如下:


图片点击可在新窗口打开查看此主题相关图片如下:tim截图20170928122830.png
图片点击可在新窗口打开查看
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:筛选.txt



可是“学生信息”表的数据量很大,有几万条,每次打开都有些慢。所以我想,是否能将整个“筛选”用“加载”的意思代替。打开软件的时候先不加载数据,打开“导入学生”窗口后根据文本框输入的内容来加载“学生信息表”数据。


图片点击可在新窗口打开查看此主题相关图片如下:tim截图20170928122021.png
图片点击可在新窗口打开查看

请问用“加载”来代替“筛选”是否可行?应该在哪个事件中写什么样的代码?


[此贴子已经被作者于2017/9/28 12:34:44编辑过]

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2017/9/28 13:04:00 [只看该作者]

Dim nms() As String = {"年级","班级","学号","姓名"}  '定义一个组合框数组
Dim sps() As String = {"'","'","'","'"} '定义一个间隔符数组
Dim bjf() As String = {" = "," = "," = "," = "} '定义一个比较符合数组
Dim fds() As String = {"年级","班级","学号","姓名"} '定义比较的列
Dim filter As String
For i As Integer = 0 To nms.length -1
    If e.Form.controls(nms(i)).value IsNot Nothing Then
        If filter > "" Then
            filter = filter & " And "
        End If
        filter = filter & fds(i) & bjf(i) & sps(i) & e.Form.controls(nms(i)).value & sps(i)
    End If
Next
Tables("导入学生_学生信息表").datatable.loadfilter = filter

Tables("导入学生_学生信息表").datatable.load


 回到顶部