反馈已提交

网络繁忙

控件筛选查询

  • 文档创建者:Catqiu
  • 编辑次数:9次
  • 最近更新:RosieY 于 2021-12-08
  • 1. 概述

    1.1 预期效果

    参数最主要的应用就是结合控件,实现数据筛选过滤。如下图所示:

    1601021441281870.gif

    那如何将参数和控件结合到一起,实现参数过滤呢?

    1.2 实现思路

    首先必须明确,参数和控件并非一个概念,但两者在绑定的情况下,就可以相互传值,参数值即为控件值,控件值即为参数值,所以就会产生参数和控件看起来是一样的错觉。

    实现数据筛选过滤,即先将参数和控件绑定,控件选择值后传递给参数,报表根据参数值过滤出数据。参数和控件各司其职,控件负责选择值、参数负责过滤数据。

    根据定义方法,参数可以分成数据集参数和模板参数,所以实现数据筛选查询,也对应两种方法,数据集参数方法和模板参数方法。

    2. 实现方法

    2.1 数据集参数

    数据集参数 是定义在 SQL 语句中的参数,即在 SQL 查询数据时,就实现了数据的过滤。如果你的数据是从数据库查询获得,推荐使用此方法。

    2.1.1 定义数据集参数

    通过数据集参数实现数据筛选过滤时,首先要定义一个数据集参数。如:SELECT * FROM 销量 where 地区 = '${area}' 就定义了一个数据集参数 area。如下图所示:

    2.1.2 添加过滤控件

    定义好数据集参数后,如果要在页面实现数据过滤查询,就必须要有一个控件。根据想要的过滤形式选择控件即可,这里我们选择一个「下拉框」控件。

    如下图所示,在参数面板添加了一个下拉框控件,并为为其绑定 数据字典 ,即设置「下拉框」的选项值为「销量」表的「地区」字段。如下图所示:

    注意:添加控件后,一般需要添加一个「查询按钮」,直接从控件区域拖拽添加到参数面板即可。

    2.1.3 绑定参数和控件

    以上准备好了控件和参数,只要两者绑定即可实现数据过滤。参数和控件的绑定方式非常简单,名称一致即为绑定,这里参数值已经确定,所以只需要将控件名称改为参数值即可。如下图所示:

    但一般情况下添加了参数后,参数面板默认会显示出添加的参数,方便用户将其与控件绑定。如下图所示:

    点击参数即可将其添加在参数面板上,点击添加后默认添加一组过滤控件,分别为一个「标签控件」、一个「查询按钮」和一个未定义控件,用户根据需要给未定义控件选择类型即可。如下图所示:

    自动添加后,控件名和参数名是一致的,即已经实现了绑定,就不需要再修改名称了。但控件还需要设置数据字典,具体方法参考 数据字典

    2.1.4 设计报表实现过滤

    将数据集拖到报表中,设计报表,如下图所示:

    保存模板,点击预览,area 控件选择不同的值,也就对应着 area 参数为不同的值,area 参数值不同,数据 SQL 语句就不同,则查询出的数据也就不同,这样就实现了数据过滤查询。如下图所示:

    2021-12-07_16-32-36.gif


    2.2 模板参数

    模板参数 实现数据筛选查询和数据集参数不同,数据集参数是在从数据库中查询数据时就实现了过滤,而模板参数是将数据列添加在单元格中后再过滤,适合内置数据集或者文件数据集使用。

    2.2.1 定义模板参数

    这里相当于提前定义好一个参数,参数可以是 模板参数全局参数系统参数。区别在于全局参数所有模板都可以用,系统参数不用再定义。若你定义了一个全局参数想要实现过滤,或者想要通过系统参数过滤,也可以参考此方法。

    定义一个模板参数 area。如下图所示:

    2.2.2 添加过滤控件

    定义好参数后,如果要在页面实现数据过滤查询,就必须要有一个控件。根据想要的过滤形式选择控件即可,这里我们选择一个「下拉框」控件。

    添加方法同 2.1.2 节。

    2.2.3 绑定参数和控件

    以上准备好了控件和参数,只要两者绑定即可实现数据过滤。绑定方法参考 2.1.3 节。

    注:系统参数默认不会出现在参数面板中,用户不能通过快捷方式添加。

    2.2.4 添加过滤条件

    新建数据集,SQL 语句为:SELECT * FROM 销量,即默认查询销量表中所有数据。将数据列添加到单元格中,并设置报表样式,如下图所示:

    这时默认是所有数据,如果要实现查询,就必须添加过滤条件,双击 A2 单元格,为其添加过滤条件。过滤条件为地区这一列的值等于参数 area。如下图所示:

    这样就实现了过滤,保存模板,点击预览,area 控件选择不同的值,也就对应着 area 参数为不同的值,area 参数值不同,报表中过滤条件就不同,则查询出的数据也就不同,这样就实现了数据过滤查询。如下图所示:

    2021-12-07_16-32-36.gif

    附件列表


    主题: 参数应用
    • 有帮助
    • 没帮助
    • 只是浏览

    售前咨询电话

    400-811-8890转1

    在线技术支持

    在线QQ:800049425

    热线电话:400-811-8890转2

    总裁办24H投诉

    热线电话:173-1278-1526

    文 档反 馈

    鼠标选中内容,快速反馈问题

    鼠标选中存在疑惑的内容,即可快速反馈问题,我们将会跟进处理。

    不再提示

    10s后关闭