Foxtable(狐表)用户栏目专家坐堂 → 项止打开不加载任数据


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

主题:项止打开不加载任数据

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


加好友 发短信
等级:童狐 帖子:257 积分:1971 威望:0 精华:0 注册:2012/12/20 8:21:00
项止打开不加载任数据  发帖心情 Post By:2013/12/9 19:49:00 [显示全部帖子]


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

 

项目打开后,总是会自动加载表,如果让项目打开不加载任何数据,只有按功能上的按键后,才打开相应的窗体


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


加好友 发短信
等级:童狐 帖子:257 积分:1971 威望:0 精华:0 注册:2012/12/20 8:21:00
  发帖心情 Post By:2013/12/10 8:43:00 [显示全部帖子]

有点甜,第三个帮助打不开,

 

其实,我要的是不加载任何表,只有我点击了功能区的菜单时,才打开相应的窗口,如果实现?


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


加好友 发短信
等级:童狐 帖子:257 积分:1971 威望:0 精华:0 注册:2012/12/20 8:21:00
  发帖心情 Post By:2013/12/10 9:30:00 [显示全部帖子]

这个难住我了

在项目的 BeforeLoadOuterTable 事件,我设置不载任何表,代码如下:

Select Case e.DataTableName
    Case "cp_cpinfo"
        e.Cancel = True
    Case "cust_user"
        e.Cancel =True
End Select

 

1、是达到了不加载表的目的,但是项目打开后,还是会自表产生一张表 “表1”

2、我点击了功能区的菜单后,提示 “所有者表 cp_cpinfo”不存在,由于我又在窗口里写了如下代码,希望能达到,不在界面上出现表,又能在中窗口上打开生成我要的数据(估且描述为 动态加载),

窗口的AfterLoad事件代码如下:

If DataTables.Contains("cp_cpinfo") = False Then '如果表C没有加载
    DataTables.Load("cp_cpinfo") '加载表C
End If

 

结果还是不行,我要怎么做?


 

 


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


加好友 发短信
等级:童狐 帖子:257 积分:1971 威望:0 精华:0 注册:2012/12/20 8:21:00
  发帖心情 Post By:2013/12/10 9:34:00 [显示全部帖子]

关于动态加载表

动态加载数据,只是针对表的数据而言,表本身始终会加载的。
一个规模较大的系统,表的数量可能会很多,如果多达上百个甚至几百个表,那么即使不加载任何数据,全部加载空表也是相当费时的。

我见过很多用户,为减少初始加载的表的数量,不采用常规的设计方式,而是大量采用窗口,在窗口中插入SQLTable型或者SQLQuery型Table控件,这样在打开窗口的时候,才加载表的结构和数据,以提高系统的启动速度;但这种设计方式,背离了Foxtable“简单高效”的初衷,对于多数用户来说并不太容易控制,而且每次打开窗口都要加载一次数据,有效率的损失;此外由于这种设计方式,会导致表依附于窗口,关联和表达式这些常用好用的功能,以及跨表的数据计算与调用,也不容易实现。

如果表本身也可以动态加载,在需要的时候加载表的结构和数据,在不需要的时候还能卸载掉这个表,就能做到在打开项目的时候只加载极少的表,而大部分的表留在打开相关功能模块的时候加载;且这些功能模块暂时不使用的时候,还能卸载掉相关的表,那么以后不管有多少个表,我们都可以按常规设计系统了。

 

 

其他帮助里这段话,说到我心里去了,就是不知如何实现?


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


加好友 发短信
等级:童狐 帖子:257 积分:1971 威望:0 精华:0 注册:2012/12/20 8:21:00
  发帖心情 Post By:2013/12/10 9:51:00 [显示全部帖子]

看到示例“表的加载和卸载”,明白了,不能把事件写码窗口里,要写在功能区的 click里,

 

但是还是有个地方不明白,我如何加载表,但是表是可隐藏的,可以设置可见,可也可设置不可见,这样就兼顾的FOXBABLE优点,又能实现更多用户的需求,不是更好的,请回答?


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


加好友 发短信
等级:童狐 帖子:257 积分:1971 威望:0 精华:0 注册:2012/12/20 8:21:00
  发帖心情 Post By:2013/12/10 9:53:00 [显示全部帖子]

晕,我在打字的时候,bin已经回答了,FOXTABLE 的在线帮助,真是给力啊

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


加好友 发短信
等级:童狐 帖子:257 积分:1971 威望:0 精华:0 注册:2012/12/20 8:21:00
  发帖心情 Post By:2013/12/10 10:01:00 [显示全部帖子]

初学者,问下奇奇怪怪的事情,可能理解的吗?

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


加好友 发短信
等级:童狐 帖子:257 积分:1971 威望:0 精华:0 注册:2012/12/20 8:21:00
  发帖心情 Post By:2013/12/10 12:57:00 [显示全部帖子]

好好学习,接受批评

 回到顶部