起步软件技术论坛-X3

 找回密码
 立即注册
搜索
查看: 170|回复: 8

【结帖】[请求]数据集即时刷新**

[复制链接]
发表于 2007-12-24 17:18:42 | 显示全部楼层 |阅读模式
有两个数据集,对应到DataSetBroker1和DataSetBroker2
现在对DataSetBroker1进行删除操作,数据集会自动跳转到另一条记录上,我需要让DataSetBroker2也跳转到DataSetBroker1所在的那记录,应该怎么做?
回复

使用道具 举报

发表于 2007-12-24 17:50:39 | 显示全部楼层
这两个数据集什么关系?属于同一个信息?同一个窗体?还是不同的信息?不同的窗体?
如果是不同信息不同窗体的话,可以用系统消息来实现。实现方法在论坛中以TBizMessage来搜索即可。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-12-24 18:39:04 | 显示全部楼层
没有设置主从关系,在同一个窗体里面
是不同的信息集
回复 支持 反对

使用道具 举报

发表于 2007-12-25 10:01:45 | 显示全部楼层
在 DataSetBroker1 的 AfterDelete 事件上去处理,通过获取DataSetBroker1 的关键字的值去到DataSetBroker2 上定位记录
参考代码
procedure TCT1.DataSetBroker1AfterDelete(DataSet: TDataSet);
var
  i:String;
begin
  i:= DataSetBroker1.DataSet.Fieldbyname('ID').asstring;
  DataSetBroker2.DataSet.Locate('ID',i,[TLocateOption.loPartialKey]);
end;
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-12-25 11:14:24 | 显示全部楼层
不好意思,之前没描述清楚,我做的只是过滤操作,过滤之后DataSetBroker1会跳转到另一条记录
方法体应该和上面的一样,请问我应该写在哪个事件里面呢?
回复 支持 反对

使用道具 举报

发表于 2007-12-25 11:30:41 | 显示全部楼层
叫你一个笨方法,每个事件都写一个ShowMessage,看看执行过滤哪些事件被触发到了,就知道写在哪里
回复 支持 反对

使用道具 举报

发表于 2007-12-26 13:27:09 | 显示全部楼层
写在这个事件里面看一下:
FilterRecord
回复 支持 反对

使用道具 举报

发表于 2008-1-7 17:30:41 | 显示全部楼层
楼主,问题解决了吗?
在datasetbroker的afterscroll或ondatachange这两个事件中试试看
回复 支持 反对

使用道具 举报

发表于 2008-1-24 09:45:41 | 显示全部楼层
由于楼主长期未反馈,先结帖!
有问题请重新开帖!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Justep Inc.

GMT+8, 2025-7-5 20:27 , Processed in 0.043680 second(s), 15 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表