Foxtable(狐表)用户栏目专家坐堂 → 加载表问题


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

主题:加载表问题

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


加好友 发短信
等级:三尾狐 帖子:715 积分:6677 威望:0 精华:0 注册:2016/6/27 17:56:00
加载表问题  发帖心情 Post By:2019/4/25 20:39:00 [只看该作者]

老师,有个事情不明白,请问下下面这行代码放在 AfterOpenProject 和放在 BeforeLoadOuterTable 的区别是什么?我的理解是如果放在AfterOpenProject里面,那么会加载所有的行,然后在打开项目时筛选出截止前2年的行,但是表实际上已经全部加载了。如果是放在BeforeLoadOuterTable 里面,那么是在加载之前就筛选好后再加载,那么加载的行数就是实实在在的2年内的行数,是这样子的吗?我想知道下哪个速度会更快点,因为我这边网速比较慢,表里面又有几万行,想知道怎样加载会更快一点(我是外部数据库),谢谢!

DataTables("表A").LoadFilter = "日期 >= '"  &  Date.Today.AddYears(-2) & "'"
DataTables("表A").Load

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


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

理解是对的。当然是加载的数据越少就越快

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


加好友 发短信
等级:三尾狐 帖子:715 积分:6677 威望:0 精华:0 注册:2016/6/27 17:56:00
  发帖心情 Post By:2019/4/25 21:35:00 [只看该作者]

老师,加问个问题,下面的代码我如果想放到BeforeLoadOuterTable里面可以吗?一样会执行吗?
Tables("表A").Sort = "日期 DESC"
[此贴子已经被作者于2019/4/25 21:37:50编辑过]

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


加好友 发短信
等级:超级版主 帖子:106680 积分:542589 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/4/25 21:36:00 [只看该作者]

不可以。应该放到表A的afterload事件里

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


加好友 发短信
等级:三尾狐 帖子:715 积分:6677 威望:0 精华:0 注册:2016/6/27 17:56:00
  发帖心情 Post By:2019/4/25 22:38:00 [只看该作者]

老师,我刚才把表放到BeforeLoadOuterTable属性里面,发现还是会加载全部的行,我是想在往服务器提取数据时就只加载2年内的数据,就是实实在在的只加载2年内的数据,要放在哪个属性里合适,还是要修改代码?

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


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

请仔细看一遍BeforeLoadOuterTable的帮助,按照帮助的用法使用,并不是使用1楼的代码:http://www.foxtable.com/webhelp/scr/0670.htm

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


加好友 发短信
等级:三尾狐 帖子:715 积分:6677 威望:0 精华:0 注册:2016/6/27 17:56:00
错误提示  发帖心情 Post By:2019/4/26 17:32:00 [只看该作者]

老师,老师这段代码试了,提示错误,说无法完成延迟准备,'#'附件有语法错误,我是SQL 数据

 


图片点击可在新窗口打开查看此主题相关图片如下:88.jpg
图片点击可在新窗口打开查看

图片点击可在新窗口打开查看此主题相关图片如下:999.jpg
图片点击可在新窗口打开查看
[此贴子已经被作者于2019/4/26 17:53:59编辑过]

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


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


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


加好友 发短信
等级:三尾狐 帖子:715 积分:6677 威望:0 精华:0 注册:2016/6/27 17:56:00
  发帖心情 Post By:2019/4/26 17:59:00 [只看该作者]


老师我把下面的代码放到,BeforeLoadOuterTable提示错误,无法完成延迟准备,"#"附件有语法错误,能帮我看下吗?

If e.DataTableName = "订单" AndAlso e.User.Name = "开发者" Then
    Dim StartDate As Date = Date.Today().AddDays(-10)
    e.SelectString = "Select * Fro m {订单} Where [日期] > #" & StartDate & "#"
End If

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


加好友 发短信
等级:三尾狐 帖子:715 积分:6677 威望:0 精华:0 注册:2016/6/27 17:56:00
  发帖心情 Post By:2019/4/26 18:17:00 [只看该作者]

老师,找到原因了,已经改过来了,谢谢!

 回到顶部