过滤Form数据源

不打扰是莪最后的温柔 提交于 2020-03-09 08:01:24
1、先在form的声明的地方声明变量。
public class FormRun extends ObjectRun
{
  QueryBuildRange criteriaPosted;
}
2、数据源(datasource)对应的表的ini方法。
public void init()
{
  super();
  criteriaPosted=this.query().dataSourceName('YouTable').addRange(fieldNum(YouTable,FieldName));
}
3、数据源的ExecuteQuery方法下。
public void executeQuery()
{
  criteriaPosted.value(queryValue(Noyes::No));
  super();//注意,父类的方法要后执行.
}
4、可以写一个checkbox,调用方法ExecuteQuery();这样就可以实现动态控制了。
5、数据源方法的区别。
(1)DS.Research(),保留现有条件,刷新数据,相当于F5的作用。
(2)DS.ExecuteQuery(),修改过渡条件后,必须重新执行查询。
   DS.Reread(),重新从表读取。
   DS.Refresh(),刷新数据。
6、也可以通过添加Filter过滤器方式添加查询。
InventTable_ds.filter(FieldNum(InventTable,ItemId),ItemIds);//添加
InventTable_ds.removeFilter();//删除
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!