起步软件技术论坛-X3

 找回密码
 立即注册
搜索
12
返回列表 发新帖
楼主: rzport_jqf

【搞定】[请求]数据集过滤问题!**

[复制链接]
 楼主| 发表于 2008-3-26 08:51:38 | 显示全部楼层
最初由 atiger 发布
[B]把代码放到Form 的OnShow事件上或者某个按钮上看看 [/B]


还是不行的。我这边窗体上的一个 DataGrid 引用了 数据源 DataSetBroker1, 我把这个引用去掉过滤就正常了。 这样有问题吗?

刚才完整测试代码如下:

procedure TMainForm.Button2Click(Sender: TObject);
var
            strWhere:string;
            strFilter:string;
begin

                  strWhere:='select * from KHJBXX01';
                  Tsqldataset(DataSetBroker1.DataSet).SQL.Clear;
                  Tsqldataset(DataSetBroker1.DataSet).SQL.Text:=strWhere;

                  Tsqldataset(DataSetBroker1.DataSet).SQLFilter:='1<>1'; //strFilter
                  Tsqldataset(DataSetBroker1.DataSet).Filtered:=true;

                  DataSetBroker1.DataSet.Open;
                  //DataSetBroker1.DataSet.first;

                  if DataSetBroker1.DataSet.Eof then
                  begin
                     dialogs.ShowMessage('empty dataset');
                  end;

                  DataSetBroker1.DataSet.Close;

end;
回复 支持 反对

使用道具 举报

发表于 2008-3-26 09:11:23 | 显示全部楼层
SQLFilter 和 SQLFiltered 是一对配合使用的
Filter 和 Filtered 是一对配合使用的
楼主用混了
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-3-26 09:21:29 | 显示全部楼层
最初由 alang 发布
[B]SQLFilter 和 SQLFiltered 是一对配合使用的
Filter 和 Filtered 是一对配合使用的
楼主用混了 [/B]


哦, 是这样。 谢谢你们!

另外还有个问题, 数据源 DataSetBroker1 必需在属性里面先指定‘信息’和‘数据集ID’吗? 不事先指定的话,执行过滤查询的时候会报错。

1.jpg

16.3 KB, 下载次数: 175

回复 支持 反对

使用道具 举报

发表于 2008-3-26 09:33:21 | 显示全部楼层
必须指定 ‘信息’和‘数据集ID’
否则就不知道他所代理的数据集了
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-3-26 09:46:45 | 显示全部楼层
最初由 alang 发布
[B]必须指定 ‘信息’和‘数据集ID’
否则就不知道他所代理的数据集了 [/B]


在代码里面有指定 SQL:

         strWhere:='select * from KHJBXX01';
                  Tsqldataset(DataSetBroker1.DataSet).SQL.Clear;
                  Tsqldataset(DataSetBroker1.DataSet).SQL.Text:=strWhere;

这个不相当于建立新的数据集吗? 不明白为什么还要事先在属性里指定? 是不是应该可以动态建立?
回复 支持 反对

使用道具 举报

发表于 2008-3-26 09:55:36 | 显示全部楼层
楼上的代码肯定不是动态建了
如果需要动态建,请参考
http://bbs.justep.com/forum.php?mod=viewthread&tid=19889
http://bbs.justep.com/forum.php?mod=viewthread&tid=19894
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-3-26 10:00:40 | 显示全部楼层
OK. 谢谢!
回复 支持 反对

使用道具 举报

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

本版积分规则

小黑屋|手机版|Justep Inc.

GMT+8, 2025-7-8 22:13 , Processed in 0.043201 second(s), 15 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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