起步软件技术论坛-X3

 找回密码
 立即注册
搜索
查看: 288|回复: 17

【结】查找属性过滤问题[请求]**

[复制链接]
发表于 2008-7-25 14:43:51 | 显示全部楼层 |阅读模式
我要大区change时改变预算类型的值,用代码设置预算类型这个字段的过滤条件,为什么不过滤呢?是因为没有刷新庅

未命名.jpg

14.2 KB, 下载次数: 143

回复

使用道具 举报

发表于 2008-7-25 14:56:49 | 显示全部楼层
预算类型是根据大区来过滤的吗?如果是,这样的东东,不需要写代码,直接在预算类型设置查找属性,并在过滤页面上,设置过滤条件就可以了。
可以参考  http://bbs.justep.com/forum.php?mod=viewthread&tid=21616

或者以“动态过滤”在bbs上搜索
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-7-25 15:09:01 | 显示全部楼层

我的数据集里面的大区和预算类型都是用的是查找属性定义,但是两个查询的不是一个表,但是两个表都有一个相同的字段MODUALID,这种情况要怎么设置呢

未命名.jpg

42.26 KB, 下载次数: 139

回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-7-25 15:13:48 | 显示全部楼层
讲错了,两个字段没有关系,两个表也没有关系。

我现在是要IF 大区=‘北区’则fee_type=1 else fee_type=1

这种情况要怎么设置呢
回复 支持 反对

使用道具 举报

发表于 2008-7-25 15:24:22 | 显示全部楼层
我现在是要IF 大区=‘北区’则fee_type=1 else fee_type=1
啥意思,不管大区=‘北区’ fee_type 都等于1?
还是 IF 大区=‘北区’则fee_type=1 else fee_type=2

如果是后者过滤的地方用参数吧,就是3楼的地方设置 fee_type 等于自己定义的一个参数,然后动态给参数赋值,例如 http://bbs.justep.com/forum.php?mod=viewthread&tid=508  1楼
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-7-25 15:29:43 | 显示全部楼层
TBudget_Clear_Info(InfoBroker.Info).FIELD_Budget_Clear_User_Dt_MODUALID.LookupDef.Filtered := false;
TBudget_Clear_Info(InfoBroker.Info).FIELD_Budget_Clear_User_Dt_MODUALID.LookupDef.Filter.Clear;
TBudget_Clear_Info(InfoBroker.Info).FIELD_Budget_Clear_User_Dt_MODUALID.LookupDef.Filter.Add('fee_type=1');
TBudget_Clear_Info(InfoBroker.Info).FIELD_Budget_Clear_User_Dt_MODUALID.LookupDef.Filtered := true;

我是想用这段代码来设置,为什么不行呢?我刷新也还是没有更新
回复 支持 反对

使用道具 举报

发表于 2008-7-25 15:32:31 | 显示全部楼层
查找属性不支持filter过滤查找数据集中的数据的。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-7-25 15:33:01 | 显示全部楼层
if dsdetail.DataSet.FieldByName('district').AsString='北区' then
                begin
                     TBudget_Clear_Info(InfoBroker.Info).FIELD_Budget_Clear_User_Dt_MODUALID.LookupDef.Filtered := false;
                     TBudget_Clear_Info(InfoBroker.Info).FIELD_Budget_Clear_User_Dt_MODUALID.LookupDef.Filter.Clear;
                     TBudget_Clear_Info(InfoBroker.Info).FIELD_Budget_Clear_User_Dt_MODUALID.LookupDef.Filter.Add('fee_type=1');
                     TBudget_Clear_Info(InfoBroker.Info).FIELD_Budget_Clear_User_Dt_MODUALID.LookupDef.Filtered := true;

                     //TBudget_Clear_Info(InfoBroker.Info).DataSets
                end
             else
                 begin
                      TBudget_Clear_Info(InfoBroker.Info).FIELD_Budget_Clear_User_Dt_MODUALID.LookupDef.Filtered := false;
                      TBudget_Clear_Info(InfoBroker.Info).FIELD_Budget_Clear_User_Dt_MODUALID.LookupDef.Filter.Clear;
                      TBudget_Clear_Info(InfoBroker.Info).FIELD_Budget_Clear_User_Dt_MODUALID.LookupDef.Filter.Add('fee_type=2');
                      TBudget_Clear_Info(InfoBroker.Info).FIELD_Budget_Clear_User_Dt_MODUALID.LookupDef.Filtered := true;
                 end;
             TBudget_Clear_Info(InfoBroker.Info).DataSetBudget_Clear_User_Dt.Refresh;
回复 支持 反对

使用道具 举报

发表于 2008-7-25 15:34:43 | 显示全部楼层
7楼
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-7-25 15:52:52 | 显示全部楼层
但是如果我不用刷新,用关闭,然后在打开,是会过滤的,这是为什么呢?

关闭然后再打开和刷新有什么区别呢?
回复 支持 反对

使用道具 举报

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

本版积分规则

小黑屋|手机版|Justep Inc.

GMT+8, 2025-7-19 20:53 , Processed in 0.042767 second(s), 18 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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