Foxtable(狐表)用户栏目专家坐堂 → 打开狐表项目的速度,以及动态生成表、动态绑定表的问题?


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

主题:打开狐表项目的速度,以及动态生成表、动态绑定表的问题?

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


加好友 发短信
等级:一尾狐 帖子:495 积分:4013 威望:0 精华:0 注册:2008/10/10 19:36:00
  发帖心情 Post By:2009/9/4 23:53:00 [显示全部帖子]

以下是引用czy在2009-9-4 20:17:00的发言:
其实60个表并不存在问题,问题是每个表如果有n多窗口,每窗口有n多控件,打开项目时才费时。
60个内部表,不加载数据,文件中5个窗口,每窗口10个控件,我打开项目20秒。

  图片点击可在新窗口打开查看我今天才知道狐表启动项目时是先把所有的窗口都加载进来的,动态加载表可以用SQLTable方法解决,难道就没有办法动态加载窗口吗?狐表启动后总会占有八九十兆甚至一百多兆的内存,难道都是因为把窗口都加载了进来?
     狐表提供了开发功能,自然就是要面向大容量数据库管理的,不一定所有的用户都有易服老师的功力,能用一个窗口动态的添加控制来实现所有的窗口功能,我相信以后用户在开发的时候窗口一定会越来越多,像我的系统就已经有五十几个窗口啊,这已是省了又省。
     如果这些影响速度上的问题得不到解决,那狐表的开发功能可能就变成了一个鸡肋,真正热衷使用的也只是现在论坛里这批忠实的Fans了,而狐表的级别可能也要退回到跟易表一个级次了。
     我现在开发的软件,客户普遍反映是:功能没的说,但速度就不敢恭维了。
     真诚的希望老总能想办法解决速度上的问题,这样去掉狐表的短板,将来也能更好的发展。对于我们忠爱狐表的用户来说,绝对希望狐表能长久的发展下才去,因为狐表目前已经成了我们不可缺少的一个工具了。
图片点击可在新窗口打开查看


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


加好友 发短信
等级:一尾狐 帖子:495 积分:4013 威望:0 精华:0 注册:2008/10/10 19:36:00
  发帖心情 Post By:2009/9/5 9:03:00 [显示全部帖子]

以下是引用狐狸爸爸在2009-9-5 0:05:00的发言:
技术解答:

窗口是在打开的时候加载的,不是一启动就加载。
所以窗口多少不影响运行速度,再多的窗口也无所谓,因为窗口不是同时打开的。
如果表太多,自然影响打开速度,可以考虑:
1、对于结构相同的表,应该尽量合并为一个表。
2、用OuterTableBuilder和SQLTable动态生成,窗口问题可以用我今天介绍的方法解决。


关于性能:

今天的狐表性能是没得说的,不是王婆卖瓜,是事实。
不要动不动就归结于开发工具,同样的工具,在不同人的手上,会产生完全不同的效果。

60个表又如何,谁让你一次全部打开?
你在电脑同时开60个网页,会是什么样的结果?
尽用一些不切实际的东西讲性能,老实说,我看着有点恼火。

一个月前还有些许道理,今天讲完全是胡搅,因为现在根本就不存在所谓性能上的短板。
blackzhu的老古董电脑,之前要10分钟才打开项目,现在不也说打开速度非常好了吗。

再好的工具,也要合理使用,才会有好的结果,我不是神,只是一个普通的凡人,我没有办法设计一个随便怎么折腾都能运转如飞的软件。
世界上也不存在这样的软件!!!
[此贴子已经被作者于2009-9-5 0:43:07编辑过]

 
  抱歉!!!被C版误导了,以为窗口是先全部加载进来的!!!图片点击可在新窗口打开查看


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


加好友 发短信
等级:一尾狐 帖子:495 积分:4013 威望:0 精华:0 注册:2008/10/10 19:36:00
  发帖心情 Post By:2009/9/5 12:34:00 [显示全部帖子]

以下是引用reachtone在2009-9-5 11:05:00的发言:
    呵呵,没想到周五晚上没上来,就出了这么个热帖,也跟着说说我的看法吧。在用foxtable之前,我也用过其它的开发工具,有比较才有发言权嘛:
    从foxtable公测开始,我就一直在关注。真正将其投入使用,应该是今年6月中下旬以后。所以,我真正使用foxtable的时间也不过才2个月左右。为什么选择foxtable,我的理由是这样的:
    1、foxtable已经内置了大量的方法与函数,基本涵盖数据处理的方方面面,开发者可以拿来就用,省去了N多的时间。
    2、各种方法中,不仅有针对已加载数据的,还有直接针对后台的。可以毫不夸张的说,等foxtable正式发布以后,很多熟悉sql语句的人基本不要学习foxtable的系统知识,仅用一个sqlcommand就可以做出非常高效的、直接针对后台的查询系统来。因为查询结果出来以后,菜单上的统计、打印、excel报表等直接就可以用了,还有比这再方便的开发工具吗?
    3、正是因为以上两点,foxtable的高效是其它同类开发工具无法比拟的。这里的高效,不仅有项目开发效率的高效,还有项目完成以后运行的高效。我正式学习foxtable也不过2个月的时间,到本月20号就将完成并交付第一个商业项目,当然比较高效了。而且,这个项目将直接管理sql数据库中的数百万条数据,处理效率不高效,我敢用它吗?
    4、老六的敬业精神以及对细节追求的完美让人感动,这从foxtable近期频繁的更新可以看出。包括换心这件事,本来大家都觉得挺好了,但老六还是坚持花挺长的时间把它换下来,可见老六对产品品质的追求!至于细节方面,这从“excel报表”和“分组与交叉统计”的功能上就能看出来。我曾建议老六将这两块功能单独做成dll出售,可以说,这两个功能如果单独出售,其dll售价就会大大高于foxtable即将公开发售的商业版售价。所以,foxtable是超值的!
    以上就是我选择foxtable的原因。
    另外有必要说一下,我在项目中从来没有使用过关联。一是因为之前没有使用关联的习惯,二是非常担心关联所导致的table增长。我在项目中对关联的处理都是用代码实现的。还有就是,在设计项目时,一定要将所用到的datatable的加载条件设置为空,打开项目时就不会加载任何数据了,速度非常快。再说,项目开始运行时,本来就只要显示菜单之类的,也没必要加载任何数据。
    C兄也是论坛上的热心之人,如果你在改进之后、打开项目的速度还是非常慢,建议你将项目发出来让大家一起诊断一下。如果涉及商业秘密,单独发给老六研究一下也行。不见例子,谁知道问题在哪里呢?

 

  reachtone兄,DataTable的加载条件设置为空如何设置?我的是这样设的,不知道是不是你说的那样?


  项目的BeforeLoadOuterTable事件代码:
  Select Case e.DataTableName
    Case "客户名单"
        e.SelectString = "Select * From [客户名单] Where [客户编号] Is Null"
    Case .....
  End Select


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


加好友 发短信
等级:一尾狐 帖子:495 积分:4013 威望:0 精华:0 注册:2008/10/10 19:36:00
  发帖心情 Post By:2009/9/5 12:52:00 [显示全部帖子]

以下是引用czy在2009-9-5 12:39:00的发言:
Where false 应该也可以吧

 
提示where false 附近有语法错误图片点击可在新窗口打开查看


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


加好友 发短信
等级:一尾狐 帖子:495 积分:4013 威望:0 精华:0 注册:2008/10/10 19:36:00
  发帖心情 Post By:2009/9/5 13:27:00 [显示全部帖子]


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

连在杂项里的"执行SQL“窗口里都不行!!图片点击可在新窗口打开查看

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


加好友 发短信
等级:一尾狐 帖子:495 积分:4013 威望:0 精华:0 注册:2008/10/10 19:36:00
  发帖心情 Post By:2009/9/5 14:12:00 [显示全部帖子]


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

连在查询分析器里都不行,是不是跟SQL Server有关系?我的是2000版的。

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


加好友 发短信
等级:一尾狐 帖子:495 积分:4013 威望:0 精华:0 注册:2008/10/10 19:36:00
  发帖心情 Post By:2009/9/5 14:31:00 [显示全部帖子]

以下是引用reachtone在2009-9-5 14:28:00的发言:
那就改成:
where 0=1

 
 这样可以图片点击可在新窗口打开查看


 回到顶部