以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  请问 LoadFilter 的参数  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=3492)

--  作者:gdtgl
--  发布时间:2009/7/8 21:08:00
--  请问 LoadFilter 的参数
请问:
     不知LoadFilter 有没有获得最后几条记录的参数   像sql语句 SELECT TOP 10 * FROM {订单} ORDER BY 日期 DESC

因为:
    当重新加载数据(LoadFilter和load),会触及在BeforeLoadOuterTable事件,等于加载二次数据。

(现在:在BeforeLoadOuterTable 不加载任何数据,提高窗口的打开速度)
[此贴子已经被作者于2009-7-8 21:18:03编辑过]

--  作者:狐狸爸爸
--  发布时间:2009/7/8 21:14:00
--  
1、LoadFilter只能设置Where语句的条件。
2、执行Load方法,并不会触发BeforeLoadOuterTable事件。

--  作者:gdtgl
--  发布时间:2009/7/8 21:21:00
--  

整个文件 ,只在BeforeLoadOuterTable中 设有 SELECT TOP 10 * FROM {订单} ORDER BY 日期 DESC

现在弹出 ORDER BY  这个错误 应是了....

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

--  作者:gdtgl
--  发布时间:2009/7/8 21:23:00
--  
还有一点的证明 如果在BeforeLoadOuterTable 写了加载数据的 打开窗口明显慢了(我在打开窗口事件也设了重新加载数据,原因是要根据不同的部门加载不同的数据)
--  作者:狐狸爸爸
--  发布时间:2009/7/8 21:27:00
--  

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


--  作者:gdtgl
--  发布时间:2009/7/8 21:34:00
--  

1、在于用sql语句取最后10条数据,所以需要用到...
2、有些不明白, 环境相同, 后来在BeforeLoadOuterTable 加了加载数据代码 窗口就变慢 册除 速度回恢正常。


--  作者:狐狸爸爸
--  发布时间:2009/7/8 21:37:00
--  

我抽时间检查一下看看。


--  作者:gdtgl
--  发布时间:2009/7/8 23:21:00
--  
发个测试文件:

无论怎么样修改,如:
 i =  d2 - 17 (加载17条数据) 但不会加载17条,只会加载10条 (原因 :在于BeforeLoadOuterTable 的条件限制了。)

图片点击可在新窗口打开查看此主题相关图片如下:未命名.jpg
图片点击可在新窗口打开查看
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:新建文件夹.rar


--  作者:gdtgl
--  发布时间:2009/7/8 23:22:00
--  

Dim d2 As integer
Dim cmd As New SQLCommand
cmd.C
cmd.CommandText = "Select max(编号) From 表A "
d2 = cmd.ExecuteScalar()

Dim i As Integer
dim i2 as string
For i =  d2 - 17  To d2
    i2 = "[编号] = \'"& i &"\'"  &  " or "  & i2
Next
i2 = i2.remove(i2.length-4)
output.show(i2)
DataTables("表A").LoadFilter = i2
DataTables("表A").Load()


--  作者:狐狸爸爸
--  发布时间:2009/7/9 7:24:00
--  
呵呵,收到