表单控件 根据条件查询

楼主
我是社区第93017位番薯,欢迎点我头像关注我哦~
控件中的自动查询还可以通过设置数据集的过滤来实现, 根据数据集过滤来实现,参数变化的时候,每次查询的结果集都是所有的,然后在页面进行过滤,如果数据量比较大,会消耗性能,解决方案:在查询条件中(sql 查询条件)也添加上这个需要过滤的条件,同时添加数据集过滤条件,这样就可以实现文本框输入结束后的自动查询,查询的数据是根据自己的条件去过滤数据集


自定义实现方式:
点击查询按钮,能够根据body中的查询条件,动态刷新报表页面的显示:


控件中下拉框可以实现自动查询的功能,但文本框的点击事件不生效(如果不设置数据集过滤),因此输入文本框的内容后,点击查询按钮根据参数去查询数据,查询的数据是基于当前控件的参数去查询的,数据量是自己库中对应的数据
下面实现的主要是自定义的查询功能实现,不涉及到数据集的过滤(会重新查询一次数据库,根据当前的条件)
实现效果:
给button 添加一个点击事件:


对应的js代码如下:
var form = this.options.form;  
form.getWidgetByName('report0').gotoPage(1,form.collectionValue(),true);

//其中report0 代表需要刷新的报表页面(具体名称根据当前的设计页面来决定)




编辑于 2017-9-12 15:22  

编辑于 2017-9-12 15:23  
编辑于 2017-9-12 15:31  

编辑于 2017-9-12 15:38  
分享扩散:
参与人数 +1 F豆 +188 理由
兔子酱 + 188 骚年,我看好你哦

查看全部评分

沙发
发表于 2017-9-15 16:20:18
已提名精华帖,待论坛运营委员会评分后可评为精华帖,帆软论坛精华帖奖励计划http://bbs.fanruan.com/thread-91079-1-1.html
板凳
发表于 2017-9-18 23:35:30
有一个问题想咨询下楼主,为什么要在数据集的结果集中使用数据列过滤参数,而不是直接在数据集中使用sql过滤参数呢?
地板
发表于 2017-9-19 08:04:38
来自手机
cherishdqy 发表于 2017-9-18 23:35
有一个问题想咨询下楼主,为什么要在数据集的结果集中使用数据列过滤参数,而不是直接在数据集中使用sql过 ...

    用参数过滤数据集主要是为了实现自动查询的效果,但是这样会影响性能,所以我就直接用参数过滤数据集加sql过滤参数来实现表单部分的自动刷新了。  表单自动刷新目前帆软只是做了一个下拉控件值改变才会去自动查询,对于文本框的值如果不添加数据集过滤参数我本地测试是不会自动查询的。
5楼
发表于 2017-9-19 08:38:12
zchzch 发表于 2017-9-19 08:04
用参数过滤数据集主要是为了实现自动查询的效果,但是这样会影响性能,所以我就直接用参数过滤数据集 ...

放在表单body中的控件是可以自动查询的,不管是在数据集的sql中做参数过滤还是在单元格数据列中做参数过滤,都可以自动查询的,文本控件也可以,输入值就会自动查询了,或者输入值后点击文本框

你可以用附件测试一下,第一个文本框是是数据集中的sql过滤的,第二个文本框是在单元格数据列中过滤的
6楼
发表于 2021-12-3 15:43:21
可以给个示例吗
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

返回顶部 返回列表