| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1200 人关注过本帖
标题:问一个组合框的问题
只看楼主 加入收藏
总是出错
Rank: 2
等 级:论坛游民
威 望:1
帖 子:248
专家分:24
注 册:2012-12-24
收藏
得分:0 
我证实我的思路没有错。我另外创建了二个表,一个CKB(仓库表)
一个HWB(货位表)
CKB只有一个字段,仓库名称
HWB有二个字段,一个是仓库名称,一个是货位号
然后在CKB中输入了3条记录,分别是解放路库,民主路库,新华路库
在HWB中输入了6条记录,分别是1到6号货位,仓库名称随机分配
然后建立一个表单,只有两个组合框。K1的数据源是CKB
K2的数据源是HWB.货位号
在nterActiveChange中写入代码如下

PUBLIC KM1
KM1=ALLTRIM()
SELE HWB
SET FILTER TO  仓库名称=KM1

运行表单
反复点击
先点击K1选择仓库名称
然后点击K2,显示的数据从属于K1.也就是说过滤成立。
根本没有必要刷新和关联
2013-04-21 10:00
总是出错
Rank: 2
等 级:论坛游民
威 望:1
帖 子:248
专家分:24
注 册:2012-12-24
收藏
得分:0 
但是在我目前的表单中为什么不成立啊,百思不解。
2013-04-21 10:02
总是出错
Rank: 2
等 级:论坛游民
威 望:1
帖 子:248
专家分:24
注 册:2012-12-24
收藏
得分:0 
看来只有从新写表单了
2013-04-21 10:23
总是出错
Rank: 2
等 级:论坛游民
威 望:1
帖 子:248
专家分:24
注 册:2012-12-24
收藏
得分:0 
把原来的两个组合框删除后,重新建立新的组合框后,问题顺利解决。谢谢各位的思路。看来是属性设置上出了问题。
2013-04-21 10:31
hu9jj
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:红土地
等 级:贵宾
威 望:400
帖 子:11857
专家分:43421
注 册:2006-5-13
收藏
得分:0 
通常不要直接对表进行set fitler to进行筛选,因为你可能还会在其他表单或程序对同一个表进行筛选或增删操作,这样很容易引起混乱。正确的做法是用select语句筛选临时表来作控件的数据源,就不会受其他表单或程序的影响了。

活到老,学到老!http://www.(该域名已经被ISP盗卖了)E-mail:hu-jj@
2013-04-21 10:43
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
说到底就是对表记录指针没有概念,很奇怪学VFP的会这样。

授人以渔,不授人以鱼。
2013-04-21 14:00
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
控件的数据源绑定,就是要控件在刷新数据时遍历一次数据源中的数据,那个动作是要移动数据源的记录指针的,一旦移动之后,你不把指针回归到原位,就会影响别的也用到同一个数据源的控件。同样的道理,若增删改过数据源的数据,也会影响别的控件,这未必是用查询就可以解决的,即你变动了数据源的数据就要保证所有用到它的控件都要适时更新,否则就会不同步。这就要你在速度和代码之间进行取舍!

查询,就是把原本摘录、复印出去,可以有多个版本,不会影响原本,但有利必有弊,这带来的问题就是数据一致性难以保证。如果原本的数据有了变化,你得把变化了的东西反映给副本,不要以为这不是消耗;如果多个副本都各自修改数据,如何把数据正确无误地导入回原本,也是很大的问题,因为时间序是会把前人刷新过的数据又刷掉的,即数据冲突困境。换句话说,如果都是只读数据,当然麻烦不大,但数据库最大的问题,其实就是数据共享,要变更数据的。

[ 本帖最后由 TonyDeng 于 2013-4-21 14:51 编辑 ]

授人以渔,不授人以鱼。
2013-04-21 14:49
总是出错
Rank: 2
等 级:论坛游民
威 望:1
帖 子:248
专家分:24
注 册:2012-12-24
收藏
得分:0 
回复 15楼 hu9jj
谢谢你的指点
2013-04-21 22:20
总是出错
Rank: 2
等 级:论坛游民
威 望:1
帖 子:248
专家分:24
注 册:2012-12-24
收藏
得分:0 
回复 10楼 taifu945
看懂了,谢谢你。我直接把查询语句分别写入K1 的INTERACTIVECHEGE 和K2的ROWSOURCE中了测试通过。
2013-04-22 07:07
hu9jj
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:红土地
等 级:贵宾
威 望:400
帖 子:11857
专家分:43421
注 册:2006-5-13
收藏
得分:0 
17楼的提醒也要认真看,尤其是编制多用户程序时更要注意这个问题。

活到老,学到老!http://www.(该域名已经被ISP盗卖了)E-mail:hu-jj@
2013-04-22 07:25
快速回复:问一个组合框的问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.025067 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved