Foxtable(狐表)用户栏目专家坐堂 → 关于DataTables的LoadFilter 时机


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

主题:关于DataTables的LoadFilter 时机

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


加好友 发短信
等级:童狐 帖子:209 积分:1695 威望:0 精华:0 注册:2012/7/26 17:50:00
关于DataTables的LoadFilter 时机  发帖心情 Post By:2012/9/28 8:47:00 [只看该作者]

我在AfterOpenproject中设置了 显示一个窗体,想让用户选择加载的数据类型,然后执行

DataTables("表A").LoadFilter = "***"
DataTables("表A").Load()

加载指定数据,

 

但发现窗体显示前,数据都已经全加载了,(还没有选择却看到窗口后面的表里有数据了)

然后把窗体选择放到beforeopenproject ,却还不存在 DataTables("表A").

 

放到beforeloadinnertable也不行!

 

请问这个该怎么实现了,难道要隐藏那些表?


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


加好友 发短信
等级:童狐 帖子:209 积分:1695 威望:0 精华:0 注册:2012/7/26 17:50:00
  发帖心情 Post By:2012/9/28 8:57:00 [只看该作者]

对于内部表,如果希望初始不加载任何数据,处理起来会相对麻烦一些,需要使用代码,这是应用篇中唯一需要使用代码的地方。
假定希望
订单,产品, 客户三个表初始不加载任何数据,首先打开项目属性设置窗口,选择项目事件页,单击BeforeLoadInnerTable事件旁的按钮"...":

最后将代码设置为:

Select Case e.DataTableName
   
Case "订单","产品","客户"
        e.Filter =
"[_Identify] Is Null"
End
Select

 

虽然可以用这个,但其实后台好像还是先把 DataTables 全load了,屏幕一闪而过(看到数据出来了).然后才是没有数据.

没有一个控制先什么都不要加载的时机么?

[此贴子已经被作者于2012-9-28 8:58:45编辑过]

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


加好友 发短信
等级:狐神 帖子:6708 积分:34304 威望:0 精华:11 注册:2012/8/18 23:10:00
  发帖心情 Post By:2012/9/28 9:41:00 [只看该作者]

 应该不会的,把你的项目弄来看看……

 或者试一下 e.Filter = "False"

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


加好友 发短信
等级:童狐 帖子:209 积分:1695 威望:0 精华:0 注册:2012/7/26 17:50:00
  发帖心情 Post By:2012/9/28 10:15:00 [只看该作者]

我明白了,启动之后,停在某个表a中,这之前会闪现别的表(别的表全加载),     让我误以为数据都加载上来了.

 

其实这样闪现别的表好像没有必要呢.

 


 回到顶部