首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > PB >

怎么设置多重过滤条件

2013-06-26 
如何设置多重过滤条件?刚学PB没多久,遇到一个问题,希望各位前辈指点我有一个数据窗口,包括name、sex、age、cl

如何设置多重过滤条件?
刚学PB没多久,遇到一个问题,希望各位前辈指点
我有一个数据窗口,包括name、sex、age、class这几个列
想设置过滤的功能
如果在age项 输入 18 就 输出18岁的人
再在sex项中 输入 男 就输出18的男生

这几个过滤条件 不需要同时输入 ,输入一项自动输出结果
并且 不考虑输入的顺序

 string ls_filter
 ls_filter = 'Describe("' + "evaluate('lookupdisplay(age)'," + '" + string(getrow ()) + ")") like "%'+sle_3.Text+'%"'
 dw_1.SetFilter(ls_filter)
 dw_1.Filter()

我在每个sle中是这么写的,可是过滤出来有问题
请各位前辈指点
[解决办法]
新建数据窗口的时候可以在条件检索中选择按多个条件检索。
[解决办法]
没看懂怎么设置多重过滤条件
[解决办法]
给你提供一个新思路。首先,在我从业的时间内,我从来不用filter,因为效率不好。在此我就不解释这个了。对于动态条件检索,我惯用的方法是使用数据窗口的2个函数,一个是getsqlselect,另一个是setsqlselect。前一个是用来获取数据窗口原始语法的,后者是用来组后动态and条件重设数据窗口语法的,重设语法后,立即执行检索,在得到查询结果后,再次调用setsqlselect将原始语法设置回去,以便下次执行。其中有一点需要注意的是,在你用getsqlselect提取数据窗口语法之前一定要让数据窗口绑定事物,就是那句dw.settransobject()。否则你会得到不一样的sql。
[解决办法]

引用:
给你提供一个新思路。首先,在我从业的时间内,我从来不用filter,因为效率不好。在此我就不解释这个了。对于动态条件检索,我惯用的方法是使用数据窗口的2个函数,一个是getsqlselect,另一个是setsqlselect。前一个是用来获取数据窗口原始语法的,后者是用来组后动态and条件重设数据窗口语法的,重设语法后,立即执行检索,在得到查询结果后,再次调用setsqlselect将原始语法设置回去,以便下次执行。其中有一点需要注意的是,在你用getsqlselect提取数据窗口语法之前一定要让数据窗口绑定事物,就是那句dw.settransobject()。否则你会得到不一样的sql。
正解
[解决办法]
顶楼上的,通过getsqlselect 以及set sqlselect减少网络流量

热点排行