开发示例 - F7列表数据过滤,以基础资料为例原创
4人赞赏了该文章
1,380次浏览
编辑于2021年11月03日 09:51:58
在很多场景,我们可能需要在打开F7列表时就过滤出符合条件的数据,该功能关键代码为:formShowParameter.getListFilterParameter().setQFilters(qFilters);
以基础资料为例子,效果图如下:
基础资料图
过滤后的效果图(过滤出kdec_combofield=111 and kdec_combofield2=AAA)
代码如下:
public class MultextGrepPlugins20210923 extends AbstractFormPlugin implements BeforeF7SelectListener { @Override public void registerListener(EventObject e) { super.registerListener(e); BasedataEdit bEdit = this.getView().getControl("kdec_basedatafield"); bEdit.addBeforeF7SelectListener(this); } @Override public void beforeF7Select(BeforeF7SelectEvent evt) { ListShowParameter formShowParameter = (ListShowParameter) evt.getFormShowParameter(); List<QFilter> qFilters = new ArrayList<>(); qFilters.add(new QFilter("kdec_combofield", QCP.equals, "111")); qFilters.add(new QFilter("kdec_combofield2", QCP.equals, "AAA")); formShowParameter.getListFilterParameter().setQFilters(qFilters); } }需要注意,setQFilters传入的是一个List,List中的Qfilter是以and的逻辑执行的
推荐阅读