搭建论坛《搭建之星》论坛用户咨询 → [注意]请火速修订


  共有2753人关注过本帖树形打印

主题:[注意]请火速修订

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


加好友 发短信 卧龙樵夫
等级:首席分析师 帖子:1270 积分:7005 威望:0 精华:3 注册:2003-3-23 14:15:25
[注意]请火速修订  发帖心情 Post By:2006-12-22 23:30:41

根据手册,我(谁都也会同样)认为和理解:将数据表属性中的‘过滤活动’设为‘假’时,就等同于无条件的将所有过滤变量赋值释放(清空),也就是常说的回位或归零概念吧,所有过滤条件都将不能执行(不管曾经执行过多少个(次)的过滤活动),数据表中的记录回复到原始排列状态。

  ——但事实上,将数据表属性中的‘过滤活动’设置为‘假’后,看似过滤活动停止了,所有过滤条件都将不能执行,数据表中的记录也回复到原始排列状态。可是。曾经给过滤变量赋过的值却并没有清空(回位或归零)。

——这样,在设置有多个过滤变量时,就出现问题了,(比如:变量甲:ABC,赋值甲:ACB1;变量乙:EDC,赋值乙:EDC1;变量丙:JKL,赋值丙:JKL1;变量丁:QAZ,赋值丁:QAZ1)。第一次执行甲、乙、丙、丁全部过滤后,将数据表属性中的‘过滤活动’设置为‘假’,数据表中的记录回复到原始排列状态。第二次,再需要执行过滤,而是只执行变量甲一个条件的过滤,这时,却会将第一次执行过的变量乙、丙、丁赋值都会加入其中一同过滤了。只有再次先将变量乙、丙、丁的赋值用手工设置为‘空字符’去覆盖曾经赋过的值(其实就是一个清空变量赋值的动作),才能达到第二次过滤的目的。(将‘过滤活动为假有效’属性,在需要时动态改变为‘真’或‘假’,也可能达到目的。但没有清空变量赋值来得保险)。

——因此,应该让将数据表属性中的‘过滤活动’设置为‘假’的过程中自动无条件的清空所有过滤变量赋值(回位或归零),只有这样才能放手去作自己的编程,不考虑任何干扰,重新定义自己的过滤赋值。否则,靠手工去设置,不但凭空增加了语句量而且很麻烦很容易出错和乱套,特别是变量多时。并且,这个错误是很不容易查出的,因为,它根本没有任何表现,程序很正常在执行着,只是不能达到过滤目的罢了。就这个问题阻挡和困扰了我很长时间,人都差点被它害死了!因此,提出来提请大家注意。

  ——这也应该算是一个BUG吧,(不管公司怎样有自己的定义和解释,但我相信大家和程序本身,应该是上述的认为和理解)。BUG会害死人啊!!

——大家可自己去测试一下就体会到了。
——请公司火速更正!不要把本能简单化的问题,复杂化了。


支持(0中立(0反对(0单帖管理 | 引用 | 回复 回到顶部
帅哥哟,离线,有人找我吗?
水手
  2楼 个性首页 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 班长
等级:版主 帖子:998 积分:2851 威望:4 精华:3 注册:2002-4-17 8:42:46
  发帖心情 Post By:2006-12-25 0:00:22

简单的解决办法,每次将过滤属性设置为假后紧跟着进行过滤的定义设置即可,比如第一次将"日期=':date and 客户号=':khh"赋值给过滤的定义属性,此时若变量甲为"date",变量已为"khh",则需要分别给两个变量赋值,若在执行过程中再把"日期=':date"赋值给过滤的定义属性,则只要设置赋值甲即可.



HeaderSoft与您共同进步!

      衡德软件  http://www.headersoft.com

qhd.cw@163.com

QQ:106260929

支持(0中立(0反对(0单帖管理 | 引用 | 回复 回到顶部
帅哥哟,离线,有人找我吗?
pc_doctor
  3楼 个性首页 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 卧龙樵夫
等级:首席分析师 帖子:1270 积分:7005 威望:0 精华:3 注册:2003-3-23 14:15:25
  发帖心情 Post By:2006-12-25 0:14:28

其实,在一楼的楼主帖子已经提出解决办法,意思完全与水手的意思相同(都是替代与覆盖的清除意义)。

只是,将数据表属性中的‘过滤活动’设为‘假’时,本来通行的认识和理解就是要将所有过滤赋值清除的意思。最为简单的办法就是星本身要完成这个通行的认识和理解就可以了,一切麻烦就彻底解决了,余下的事情编程者自会按照通行的认识和理解去做程序了。


支持(0中立(0反对(0单帖管理 | 引用 | 回复 回到顶部

返回版面帖子列表

[注意]请火速修订








签名