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


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

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

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


加好友 发短信 一级勋章
等级:六尾狐 帖子:1412 积分:8937 威望:0 精华:0 注册:2008/9/1 8:57:00
  发帖心情 Post By:2009/9/6 9:06:00 [只看该作者]

以下是引用cpayinyuan在2009-9-5 7:31:00的发言:

       按照贺老师的说法,“谁让你一次全部打开”,那我就请教一下贺老师,在SQLTable出现之前,如果在打开项目时不一次全部打开,怎么建立表的事件代码(我的大部分表中都有事件代码)?如果有办法,请贺老师不吝赐教!如果没有,在当时的版本中我在打开项目时一次打开也只能说是没有办法的办法!

       还是请贺老师正面回答我的上述问题吧.记得贺老师说过,狐表的重要特色就是表事件,所以,狐表中的大部分表都有表事件应该是天经地义的事情吧(大部分表都有DatacolChanged事件).
       如果现在的版本没有这项功能,建议给狐表增加用代码动态建立表事件的功能.如果这一点实现了,那么,我在打开项目时不加载任何表,把全部表都改用代码动态加载,就没有后顾之忧了.这个可能对以前的框架有所改变,这样改进后,不再是必须“找到表名——打开表属性——找到某个事件——编辑代码,而是可以在其他一个地方建立一段代码,并声明这段代码应用于哪个表的哪个事件中。
       另外,关于SqlTable中生成的表,输入框与字段的绑定问题,虽然贺老师已经告诉大家可以用代码把每个输入框与字段逐个绑定,但这样的工作量可不是闹着玩的.经过分析,目前存在的主要问题是: 现在的版本中,SQLTable生成的表只有在打开窗口的时候才存在,所以,设计输入框的时候就无法直接把输入框与字段绑定,在设计其他窗口的时候也无法引用这个表,很不方便.建议稍作改进如下:
      对于SQLTable生成的表,改为在建立窗口中的SqlTable控件时自动生成,这样,输入框即可很方便的与SQLTable生成的表的字段绑定,提高数倍的工作效率.同时,在设计其他窗口时也可以用代码任意引用SQLTable生成的表了.这样,使用SQLTable 也没有任何后顾之忧了.
     从理论上来讲,既然可以在窗口打开的时候动态生成表,那么在设计窗口的时候同样可以动态生成表,这样的改进就该是可以很轻松实现的. 但为了不影响效率并简化设计,对于SQLTable建立时自动生成表,作两条限制:
     (1)仅限于在设计窗口界面上SqlTable绑定的表,也就是在设计窗口的右侧填写的SQLTable生成时的select语句,不能应用于窗口执行过程中SQLTable用代码动态生成的表.
     (2)建立SQLTable生成的表不需要在界面上显示,仅应允许应用于两个地方:第一是任意窗口中的代码引用这个DataTable和Table;第二是输入框绑定表的界面中.

   

[此贴子已经被作者于2009-9-6 9:22:19编辑过]

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


加好友 发短信 一级勋章
等级:六尾狐 帖子:1412 积分:8937 威望:0 精华:0 注册:2008/9/1 8:57:00
  发帖心情 Post By:2009/9/6 9:19:00 [只看该作者]

     另外,我再提一个改进的思路,希望贺老师认真分析一下有无道理.

    记得贺老师以前说过,其他的开发工具都是设计有设计的环境和界面,运行有运行的运行环境和界面,而只是狐表是设计与运行的环境和界面是统一的.这样做的好处是比较方便,但同时也造成很多功能的设计需要同时兼顾设计和运行,所以造成许多功能改进不太方便,我估计同时也会造成效率的下降.因为在运行项目时也必须加载与设计相关的东西,在设计项目时也必须打开运行项目的各项资源.

    经过狐表认真分析,只有当"开发者"进入的时候,才能调出系统菜单,也就是才能对系统进行设计,而其他用户进入项目,是不可能进行设计的.换句话说,如果是其他人(非开发者)进入,所有的设计、开发功能都是没有意义的。但是,为了兼顾当时设计项目时的需要,在以后的若干年进入项目的时候都同时加载很多设计开发才可能用到的东西,我认为这是一种不必要的资源浪费。

     基于上述分析,建议改进如下:

    在进入项目的时候,如果是开发者进入,则同时加载狐表所有的内容、所有的功能、所有的控件(这和以前一样)。而入如果是其他人进入,则只加载运行用到的东西,对于开发用到的所有功能所有资源,都不再加载,这样,当交付给最终用户使用时,就是一个很简洁、打开很快、占用资源少、效率更高的系统。而对于开发者,加载了所有的东西,虽然效率差点、资源占用大点,但这也是必须的,不会影响到所有开发功能的使用。

    以上建议妥否,对提高效率是否具有很大的意义,望贺老师认真分析一下。

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


加好友 发短信
等级:二尾狐 帖子:542 积分:4243 威望:0 精华:4 注册:2008/9/1 8:27:00
  发帖心情 Post By:2009/9/6 9:28:00 [只看该作者]

以下是引用cpayinyuan在2009-9-6 9:19:00的发言:
     另外,我再提一个改进的思路,希望贺老师认真分析一下有无道理.

    记得贺老师以前说过,其他的开发工具都是设计有设计的环境和界面,运行有运行的运行环境和界面,而只是狐表是设计与运行的环境和界面是统一的.这样做的好处是比较方便,但同时也造成很多功能的设计需要同时兼顾设计和运行,所以造成许多功能改进不太方便,我估计同时也会造成效率的下降.因为在运行项目时也必须加载与设计相关的东西,在设计项目时也必须打开运行项目的各项资源.

    经过狐表认真分析,只有当"开发者"进入的时候,才能调出系统菜单,也就是才能对系统进行设计,而其他用户进入项目,是不可能进行设计的.换句话说,如果是其他人(非开发者)进入,所有的设计、开发功能都是没有意义的。但是,为了兼顾当时设计项目时的需要,在以后的若干年进入项目的时候都同时加载很多设计开发才可能用到的东西,我认为这是一种不必要的资源浪费。

     基于上述分析,建议改进如下:

    在进入项目的时候,如果是开发者进入,则同时加载狐表所有的内容、所有的功能、所有的控件(这和以前一样)。而入如果是其他人进入,则只加载运行用到的东西,对于开发用到的所有功能所有资源,都不再加载,这样,当交付给最终用户使用时,就是一个很简洁、打开很快、占用资源少、效率更高的系统。而对于开发者,加载了所有的东西,虽然效率差点、资源占用大点,但这也是必须的,不会影响到所有开发功能的使用。

    以上建议妥否,对提高效率是否具有很大的意义,望贺老师认真分析一下。

虽然本人不懂软件编程,但觉得楼主说的不无道理!


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


加好友 发短信
等级:一尾狐 帖子:400 积分:3961 威望:0 精华:0 注册:2009/4/28 7:39:00
  发帖心情 Post By:2009/9/6 9:50:00 [只看该作者]

以下是引用cpayinyuan在2009-9-6 9:19:00的发言:
     另外,我再提一个改进的思路,希望贺老师认真分析一下有无道理.

    记得贺老师以前说过,其他的开发工具都是设计有设计的环境和界面,运行有运行的运行环境和界面,而只是狐表是设计与运行的环境和界面是统一的.这样做的好处是比较方便,但同时也造成很多功能的设计需要同时兼顾设计和运行,所以造成许多功能改进不太方便,我估计同时也会造成效率的下降.因为在运行项目时也必须加载与设计相关的东西,在设计项目时也必须打开运行项目的各项资源.

    经过狐表认真分析,只有当"开发者"进入的时候,才能调出系统菜单,也就是才能对系统进行设计,而其他用户进入项目,是不可能进行设计的.换句话说,如果是其他人(非开发者)进入,所有的设计、开发功能都是没有意义的。但是,为了兼顾当时设计项目时的需要,在以后的若干年进入项目的时候都同时加载很多设计开发才可能用到的东西,我认为这是一种不必要的资源浪费。

     基于上述分析,建议改进如下:

    在进入项目的时候,如果是开发者进入,则同时加载狐表所有的内容、所有的功能、所有的控件(这和以前一样)。而入如果是其他人进入,则只加载运行用到的东西,对于开发用到的所有功能所有资源,都不再加载,这样,当交付给最终用户使用时,就是一个很简洁、打开很快、占用资源少、效率更高的系统。而对于开发者,加载了所有的东西,虽然效率差点、资源占用大点,但这也是必须的,不会影响到所有开发功能的使用。

    以上建议妥否,对提高效率是否具有很大的意义,望贺老师认真分析一下。

--------真是个“铁杆意见迷”,帮你顶!


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


加好友 发短信 一级勋章
等级:狐仙 帖子:9875 积分:57584 威望:0 精华:15 注册:2008/9/1 9:45:00
  发帖心情 Post By:2009/9/6 11:48:00 [只看该作者]


     基于上述分析,建议改进如下:

    在进入项目的时候,如果是开发者进入,则同时加载狐表所有的内容、所有的功能、所有的控件(这和以前一样)。而入如果是其他人进入,则只加载运行用到的东西,对于开发用到的所有功能所有资源,都不再加载,这样,当交付给最终用户使用时,就是一个很简洁、打开很快、占用资源少、效率更高的系统。而对于开发者,加载了所有的东西,虽然效率差点、资源占用大点,但这也是必须的,不会影响到所有开发功能的使用。

    以上建议妥否,对提高效率是否具有很大的意义,望贺老师认真分析一下。

    我个人认为你这个用代码不久可以解决了吗?另外可以针对每一个用户制成相对应的客户端,因为有外部数据源嘛,每一个用户的客户端特制也没有问题啊,数据导入就可以了嘛!


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


加好友 发短信 一级勋章
等级:六尾狐 帖子:1412 积分:8937 威望:0 精华:0 注册:2008/9/1 8:57:00
  发帖心情 Post By:2009/9/6 11:51:00 [只看该作者]

以下是引用blackzhu在2009-9-6 11:48:00的发言:

    我个人认为你这个用代码不久可以解决了吗?另外可以针对每一个用户制成相对应的客户端,因为有外部数据源嘛,每一个用户的客户端特制也没有问题啊,数据导入就可以了嘛!

   没这么简单,我们用代码只能控制不加载我们自己建立的东西,例如项目中的表、自建的窗口等,对于狐表本身而言,我估计也有许多与开发相关的东西可以不加载,这个有可能也会影响加载速度,而且这个只有贺老师才可以控制。
    具体是不是这样,那就只有贺老师来回答了。


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


加好友 发短信 F6
等级:狐精 帖子:3030 积分:19188 威望:0 精华:2 注册:2008/9/1 7:50:00
  发帖心情 Post By:2009/9/6 12:01:00 [只看该作者]

以下是引用cpayinyuan在2009-9-6 9:19:00的发言:
     另外,我再提一个改进的思路,希望贺老师认真分析一下有无道理.

    记得贺老师以前说过,其他的开发工具都是设计有设计的环境和界面,运行有运行的运行环境和界面,而只是狐表是设计与运行的环境和界面是统一的.这样做的好处是比较方便,但同时也造成很多功能的设计需要同时兼顾设计和运行,所以造成许多功能改进不太方便,我估计同时也会造成效率的下降.因为在运行项目时也必须加载与设计相关的东西,在设计项目时也必须打开运行项目的各项资源.

    经过狐表认真分析,只有当"开发者"进入的时候,才能调出系统菜单,也就是才能对系统进行设计,而其他用户进入项目,是不可能进行设计的.换句话说,如果是其他人(非开发者)进入,所有的设计、开发功能都是没有意义的。但是,为了兼顾当时设计项目时的需要,在以后的若干年进入项目的时候都同时加载很多设计开发才可能用到的东西,我认为这是一种不必要的资源浪费。

     基于上述分析,建议改进如下:

    在进入项目的时候,如果是开发者进入,则同时加载狐表所有的内容、所有的功能、所有的控件(这和以前一样)。而入如果是其他人进入,则只加载运行用到的东西,对于开发用到的所有功能所有资源,都不再加载,这样,当交付给最终用户使用时,就是一个很简洁、打开很快、占用资源少、效率更高的系统。而对于开发者,加载了所有的东西,虽然效率差点、资源占用大点,但这也是必须的,不会影响到所有开发功能的使用。

    以上建议妥否,对提高效率是否具有很大的意义,望贺老师认真分析一下。

从构想上看,要支持的!实践中得由老六拿主意。


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


加好友 发短信 一级勋章 三级勋章 二级勋章
等级:超级版主 帖子:6318 积分:33945 威望:0 精华:10 注册:2008/8/31 20:56:00
  发帖心情 Post By:2009/9/6 12:16:00 [只看该作者]

好象没有实际意义的,一个设计好的系统都会针对某一特定的用户进行相关的设置。
现在的普通用户如果不加于限制应该和开发者的权限没什么区别吧,只有当开发者关闭开发功能后,普通用户才不能使用开发功能。
给开发者最大的自由空间应该是对的,给某个用户限制什么样的功能,由项目的开发者来决定我认为是比较合适的。

 回到顶部
美女呀,离线,留言给我吧!
yangming
  69楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:超级版主 帖子:4109 积分:23338 威望:0 精华:21 注册:2008/9/1 20:07:00
  发帖心情 Post By:2009/9/6 12:51:00 [只看该作者]

以下是引用czy在2009-9-6 12:16:00的发言:
好象没有实际意义的,一个设计好的系统都会针对某一特定的用户进行相关的设置。
现在的普通用户如果不加于限制应该和开发者的权限没什么区别吧,只有当开发者关闭开发功能后,普通用户才不能使用开发功能。
给开发者最大的自由空间应该是对的,给某个用户限制什么样的功能,由项目的开发者来决定我认为是比较合适的。

同意!


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


加好友 发短信 一级勋章
等级:MVP荣誉狐 帖子:5154 积分:31434 威望:0 精华:8 注册:2008/9/8 12:27:00
  发帖心情 Post By:2009/9/6 13:26:00 [只看该作者]

以下是引用cpayinyuan在2009-9-6 9:19:00的发言:
     另外,我再提一个改进的思路,希望贺老师认真分析一下有无道理.
..............................
基于上述分析,建议改进如下:
.................................

如果老六没想到,那他应该感谢你的建议,人无完人啊~
另外,我感觉自己编写的代码,是需要‘环境’支持的,让‘环境’分家(开发和应用的环境分开),估计要动更大的‘手术’。
还有,现在都是知识分子的天下了,在总体的设计一致不对数据库有不良影响的情况下,一个单位内部,我还是希望大家都可以参加的设计(设计出自己需要的东东-当然是查询报表为主) ····


 回到顶部
总数 86 上一页 1 2 3 4 5 6 7 8 9 下一页