Foxtable(狐表)用户栏目专家坐堂 → 请问 LoadFilter 的参数


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

主题:请问 LoadFilter 的参数

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


加好友 发短信
等级:管理员 帖子:47477 积分:251256 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2009/7/8 21:14:00 [显示全部帖子]

1、LoadFilter只能设置Where语句的条件。
2、执行Load方法,并不会触发BeforeLoadOuterTable事件。

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


加好友 发短信
等级:管理员 帖子:47477 积分:251256 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2009/7/8 21:27:00 [显示全部帖子]

加载数据不需要设置Order的。
打开窗口和BeforeLoadOuterTable 应该没有啥关系,不过数据多了,打开含有DataList的窗口,是会变慢的。


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


加好友 发短信
等级:管理员 帖子:47477 积分:251256 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2009/7/8 21:37:00 [显示全部帖子]

我抽时间检查一下看看。


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


加好友 发短信
等级:管理员 帖子:47477 积分:251256 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2009/7/9 7:24:00 [显示全部帖子]

呵呵,收到

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


加好友 发短信
等级:管理员 帖子:47477 积分:251256 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2009/7/9 20:52:00 [显示全部帖子]

如果BeforeLoadOuterTable 设置了Top语句,例如 TOP 10加载10条记录,那么Load永远最多加载10条记录。
所以不要BeforeLoadOuterTable设置Top语句。
除非允许用户直接修改Select语句,不过这样太危险。

如果只是大概,可以参考:

Dim cmd As New SQLCommand
Dim dt As DateTabe
cmd.CommandText= "SELECT TOP 10 日期 FROM {订单} ORDER BY 日期 DESC"
dt = dt.ExecuteReader
Dim Date1 as Integer = dt.DataRows(0)("日期")
Dim Date2 as Integer = dt.DataRows(0)("日期")
DataTables("表A").LoadFilter =  "[日期] >= #" & Date1 & "# And [日期]<= #" & Date2 & "#"
DataTables("表A").Load()

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


加好友 发短信
等级:管理员 帖子:47477 积分:251256 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2009/7/10 8:07:00 [显示全部帖子]

以下是引用gdtgl在2009-7-9 21:50:00的发言:


提问的原因之一:个人感受是一直认为:BeforeLoadOuterTable 设的代码会影响到 Load 


是的,因为LoadFilter只能设置条件,也就是Where子句。
也许以后可以提供一些特殊的版本,让有特殊要求的用户直接设置整个Select语句。


 回到顶部