历史版本5 :过滤组件联动 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

1、描述 编辑

过滤组件联动是指后面过滤组件的可选值随着前面组件的选择变化而变化,在制作模板的过程中有时候会碰到不同组件之间有一定的对应关系,如下图:

      222

省份过滤组件绑定的字段是省份,城市过滤组件绑定的字段是城市,当省份选择了江苏省之后,城市控件中出现的应该是江苏省下面的各个市,因为省份字段和城市字段是在同一张表里或者关联表里的,是有对应关系的,这样的需求就属于过滤组件联动,过滤组件联动可通过两种方式实现:默认联动与参数联动,下面分别介绍。

2、默认联动 编辑

新建一个仪表板,在页面中添加两个文本过滤组件和一个分组表,分别为它们拖入数据,过滤组件重命名为省份、城市,如下图:

      222

下面详述组件字段的添加过程。 

2.1 省份过滤组件

省份过滤组件的数据来源于地产行业>省市签约数据统计表中的省份字段:

      222

2.2 城市过滤组件

城市过滤组件的数据来源于地产行业>省市签约数据统计表中的市字段(也可是省市签约数据统计关联表中的字段):

      222

2.3 效果查看

依次选择2个组件中的值,可以看到如上图的联动效果。

      222

2.4 说明

FineBI支持默认的过滤组件联动效果,即只需要将数据跟过滤组件进行绑定,FineBI就会自动读取被绑定数据之间的关联关系,实现组件联动,数据之间的关联关系必须是以下两种关系中的一种:

1. 联动组件中的数据来源于一张表;

2. 联动组件前面的组件可以是主键表的任意字段,后面的组件内数据则可以是外键表中的任意字段,且两个字段均添加到同一张自助数据集中,过滤组件从自助数据集中选字段;

3、参数联动编辑

参数联动在仅开启实时数据直连数据库的情况下支持,通过参数传递的方式联动过滤组件。 

3.1 添加表

新建SQL数据集,写好带省份参数的SQL语句,并点击确定保存,如下图:

 222

select * from DEMO_CUSTOMER where 1=1 <parameter> and 省份 in ('${省份}' ) </parameter>

另外新建一个不带参数的客户维度表,如下图:

select * from DEMO_CUSTOMER

222

为新建的表均开启实时数据直连数据库,如下图:

222

3.2 省份过滤组件

新建一个仪表板,在页面中添加文本过滤组件,将不带参数的客户表中的省份字段拖拽至过滤组件中,如下图:

      222

勾选绑定参数,并选择绑定之前添加的省份参数,如下图:

      222

点击确定保存并修改过滤组件名为省份。

注:为该文本过滤组件添加不带参数的省份字段,是为了在过滤组件选择字段时能选到所有的省份值。

3.3 城市过滤组件

在页面再添加一个文本过滤组件,为该组件绑定带参数的客户表中的城市字段,如下图:

      222

点击确定保存并修改过滤组件名为城市。 

3.4 效果查看

在页面新增一个明细表,添加带参数的数据表中省份、城市、客户名称等字段,如下图:

      222

此时我们在省份过滤组件中选择江苏省,可以看到城市组件中联动出江苏省的城市,如下图:

      222

且明细表中也过滤出对应省份城市的数据。