Foxtable(狐表)用户栏目专家坐堂 → 窗口打开速度求助版主?


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

主题:窗口打开速度求助版主?

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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/5/23 16:10:00 [显示全部帖子]

 尽量不要一次性加载全部8万行数据。

 

 你可以用动态加载、分页加载。比如,加载 今天、本月的数据,比如,加载第一页的数据

 

 http://www.foxtable.com/webhelp/scr/1933.htm

 

 http://www.foxtable.com/webhelp/scr/2269.htm

 


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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/5/23 17:35:00 [显示全部帖子]

以下是引用lisheng1971在2017/5/23 16:29:00的发言:
谢谢版主指点!这样动态加载的话确实很快(比如加载2000行),但如果我我查询的数据正好跨了第2 页和第3页,我要查询其中的某批次数据就显示不全了吧?

 

你查询可以用加载,而不用筛选。加载的话,肯定能查询到你需要的数据。


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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/5/24 9:42:00 [显示全部帖子]

 你查询数据的代码怎么写的?设置filter?

 

 那你把filter改成LoadFilter、Load即可。


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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/5/24 10:15:00 [显示全部帖子]

Dim gzdw As WinForm.CheckedComboBox = e.Form.Controls("工作单位")
Dim xgs As WinForm.CheckedComboBox = e.Form.Controls("县公司")
Dim jdpc As WinForm.CheckedComboBox = e.Form.Controls("鉴定批次")
Dim jdgz As WinForm.CheckedComboBox = e.Form.Controls("鉴定工种")
Dim xm As WinForm.TextBox = e.Form.Controls("姓名")
Dim sfzhm As WinForm.TextBox = e.Form.Controls("身份证号码")
Dim zsbh As WinForm.TextBox = e.Form.Controls("证书编号")
Dim filter As String = "1=1"
If gzdw.Text > "" Then
    filter &= " and 工作单位 in ('" & gzdw.Text.replace(",", "','") & "')"
End If
If xgs.Text > "" Then
    filter &= " and 县公司 = in ('" & xgs.Text.replace(",", "','") & "')"
End If
If jdpc.Text > "" Then
    filter &= " and  鉴定批次 in ('" & jdpc.Text.replace(",", "','") & "')"
End If
If jdgz.Text > "" Then
    filter &= " and  鉴定工种 in ('" & jdgz.Text.replace(",", "','") & "')"
End If
If xm.Text > "" Then
    filter &= " and  姓名 like '%" & xm.Text & "%' "
End If
If sfzhm.Text > "" Then
    filter &= " and  身份证号码 like '%" & sfzhm.Text & "%'"
End If
If zsbh.Text > "" Then
    filter &= " and  证书编号 like '%" & zsbh.Text & "%'"
End If

DataTables("证书编号表").LoadTop = 100 '默认显示100行
DataTables("证书编号表").LoadPage = 0 '显示第一页
DataTables("证书编号表").LoadFilter = filter
DataTables("证书编号表").Load


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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/5/24 10:25:00 [显示全部帖子]

照抄9楼的代码,把filter改成load。

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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/5/24 11:09:00 [显示全部帖子]

Dim gzdw As WinForm.CheckedComboBox = e.Form.Controls("工作单位")
Dim xgs As WinForm.CheckedComboBox = e.Form.Controls("县公司")
Dim jdpc As WinForm.CheckedComboBox = e.Form.Controls("鉴定批次")
Dim jdgz As WinForm.CheckedComboBox = e.Form.Controls("鉴定工种")
Dim xm As WinForm.TextBox = e.Form.Controls("姓名")
Dim sfzhm As WinForm.TextBox = e.Form.Controls("身份证号码")
Dim zsbh As WinForm.TextBox = e.Form.Controls("证书编号")

gzdw.Text = ""
xgs.Text = ""
jdpc.Text = ""
jdgz.Text = ""
xm.Text = ""
sfzhm.Text = ""
zsbh.Text = ""

DataTables("证书编号表").LoadTop = "100 percent" '显示全部行
DataTables("证书编号表").LoadPage = 0 '显示第一页
DataTables("证书编号表").LoadFilter = ""
DataTables("证书编号表").Load

 回到顶部