1. 概述编辑
1.1 应用场景
当一个组件使用的原始数据是带了参数的 SQL 数据集,那么用过滤组件在对该组件进行过滤时,操作方式不同于正常情况。
过滤组件绑定参数分为两种:(1)过滤组件不绑定字段,仅绑定参数;(2)过滤组件绑定字段和参数。
过滤组件不绑定字段,仅绑定参数的效果如下图所示:
当文本过滤组件为空时,明细表中也无数据,在文本下拉框中可以输入自己要的字段,例如输入「管理店」并回车,明细表自动过滤出「店性质」为「管理店」的数据。
过滤组件绑定字段和参数,文本可下拉选择字段筛选,不需要手动输入。效果如下图所示:
1.2 功能简介
带参数的 SQL 数据集属于实时数据用法,所以过滤组件的参数用法是实时数据(直连数据库)特有的功能。
注:不支持表名或者字段名中等对表结构有影响的位置添加参数。目前仅有文本过滤组件和日期类过滤组件提供绑定参数功能。
2. 示例一、过滤组件仅绑定参数编辑
2.1 制作组件
必须使用带参数的 SQL 数据集制作组件,否则不能实现效果。
注:在添加 SQL 数据集前,管理员配置数据连接,可参考文档:MySQL数据连接
2.1.1 准备数据
1)数据处理用户在「数据准备>实时数据>业务包」下选择添加「SQL数据集」,如下图所示:
2)添加带参数的 SQL 数据集。
添加数据库「数据连接」中的数据集「dian」,输入带参数的 SQL 语句,select * from dian where 店性质 in ('${店性质参数}'),输入「店性质参数」的默认值为「自有店」。再点击右侧「预览」,预览符合参数过滤条件的数据,输入「表名」,点击「确定」完成带参数的数据集上传。如下图所示:
2.1.2 使用 SQL 数据集制作组件
(1)保存该 SQL 数据集后,为该表「创建组件」,例如制作一个明细表,如下图所示:
(2)制作明细表。图表类型选择「明细表」后,拖入字段,完成「进入仪表板」添加带参数的过滤组件。如下图所示:
此时便可以在过滤组件中绑定该参数了。
2.2 过滤组件仅绑定参数
过滤组件仅绑定参数操作步骤如下。
1)新增文本过滤组件,如下图所示:
2)绑定「店性质参数」,如下图所示:
注:普通用户要有一个有参数的数据集的权限之后,才会出现「绑定参数」的按钮。由于所有 SQL 数据集获取的参数都在③这个下拉框中,因此参数最好不要用一样的参数名。
2.3 效果查看
效果详情请参见本文 1.1 节。
3. 示例二、过滤组件绑定字段和参数编辑
过滤组件只绑定参数只能通过手输进行过滤,若是需要有下拉框则需要绑定字段,来提供下拉框内容。本节讲述如何在实现绑定参数的同时,实现下拉框选择字段效果。
实现要求:被绑定字段所在的表不能有已绑定的参数「店性质参数」。
3.1 制作组件
步骤同上,请参考本文 2.1 节。
3.2 过滤组件绑定参数和字段
1)新增文本过滤组件,如下图所示:
(2)先绑定不带参数的「门店维度」表「店性质」字段。再绑定参数处同样是勾选并绑定之前设置的「店性质参数」。点击确定保存该文本过滤组件设置。如下图所示:
注 1:普通用户要有一个有参数的数据集的权限之后,才会出现「绑定参数」的按钮。
注 2:此处不用带参数的门店信息表的店性质字段拖入文本过滤组件中,是因为此时「门店」表取过来数据库的数据,是「店性质」为设置的默认值自有店的门店信息。所以文本框下拉出来的值也只有自有店。不包括所有店性质的字段值。
3.2 效果查看
进入仪表板,可以看到该文本过滤组件中可以选择店性质的字段数据。详情请参加本文 1.1 节。
4. 过滤组件的两种用法编辑
过滤组件有两种用法:上面介绍的参数绑定的用法和普通过滤组件的用法。
在「示例二、过滤组件绑定参数和字段」的默认情况下过滤组件的功能为参数控件,即绑定字段的过滤组件只能过滤带参数的表「门店」制作的明细表组件。若想要过滤组件在满足示例二效果同时,还能过滤绑定字段所在的不带参数的「门店维度」表制作的组件。可去「管理系统>系统管理>常规」中的「BI参数」设置框,开启「参数控件过滤生效」按钮,如下图所示: