Foxtable(狐表)用户栏目专家坐堂 → 窗口分页加载外部表部分列出错


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

主题:窗口分页加载外部表部分列出错

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


加好友 发短信
等级:幼狐 帖子:197 积分:1351 威望:0 精华:0 注册:2019/3/31 11:25:00
窗口分页加载外部表部分列出错  发帖心情 Post By:2019/10/28 11:59:00 [只看该作者]

老师好!
      一个SQL Server外部数据表有500W行, 我在窗口里用SQLTable类型表,Select语句:Select  [物料编码],[物料描述],[计量单位],[备注],[_Identify] Fr om {ERP物料编码}

窗口AfterLoad事件代码如下:
      '生成目录树
Dim cmd As New SQLCommand
Dim dt As DataTable
cmd.C
cmd.CommandText = "SELECT DISTINCT 大类,中类,小类,品名 Fr om {ERP物料编码}"
dt = cmd.ExecuteReader()
Dim trv As WinForm.TreeView = e.Form.Controls("TreeView1")
trv.BuildTree(dt,"大类|中类|小类|品名")
trv.Nodes.Insert("加载所有数据",0)
'加载第一页数据
With DataTables("窗口1_Table1")
    .LoadFilter = "" '清除加载条件
    .LoadPage = 0 '加载第一页
    .LoadTop = 25 '每页25行
    .Load()
    e.Form.Controls("TextBox1").Value = 1 & "/" & .TotalPages
End With

当打开运行窗口时报错

图片点击可在新窗口打开查看此主题相关图片如下:qq截图20191027213809.jpg
图片点击可在新窗口打开查看
然后就超时。

我更改Select语句:Select  top 10 [物料编码],[物料描述],[计量单位],[备注],[_Identify] Fr om {ERP物料编码} 
这样就能打开窗口不报错了,但感觉比较慢,大约要30秒,点击节点后大约10秒刷新。
请问老师:
     1、为什么Select语句加了top 10后不报错,和窗口代码.LoadTop = 25  不冲突吗?
     2、此项目主要用途是从第4个节点下查找需要的物料编码和对应行内容到另一个表,是否有更好的方式(速度流畅)解决方案?    



 回到顶部
帅哥,在线噢!
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110590 积分:562846 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/10/28 12:05:00 [只看该作者]

Select语句改为:Select  [物料编码],[物料描述],[计量单位],[备注],[_Identify] Fr om {ERP物料编码} where 1=2,意思初始不加载任何数据

感觉比较慢,大约要30秒 -- 这个应该是加载目录树慢,而不是加载25行数据慢

 回到顶部