历史版本36 :[直连]仪表板URL直接添加参数条件传参 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

1. 概述编辑

1.1 版本

FineBI 版本功能变动
6.0-

1.2 问题描述

在集成环境下,用户需要想要在打开门店相关仪表板 URL 的时候,直接添加相关参数,如http://xxxxxxxx?店性质=管理店过滤出店性质为「管理店」的数据。

1.3 实现思路

  • 在 SQL数据集 中添加参数;

  • 在前端仪表板中直接增加参数条件,实现数据过滤功能。

若需要通过过滤组件传递参数,详情参见:过滤组件作为参数参与计算跳转到仪表板(网页链接)

2. 传递一个参数编辑

2.1 添加  SQL 数据集

1)若同时拥有「直连数据」和「抽取数据」功能,则需要在数据列表中切换为「直连数据」,然后选择「公共数据」,点击进入分组下业务包,点击「添加数据集>添加 SQL 数据集」,如下图所示:

注:只有 数据处理用户 可以创建 SQL 数据集。

21.png

2)输入 SQL 语句:select * from new_dian where 店性质 in ('${店性质}')${店性质}就是设置的参数变量,点击「刷新」,设置参数的默认值为「自有店」,设置参数类型为文本类型,点击「预览」,并确定保存数据集,如下图所示:

43.png

2.2 制作分组表

制作一个组件,图表类型选择「分组表」后,拖入字段,如下图所示:

44.png

2.3 传递参数

链接类型传递一个值写法传递多个值写法
公共链接?参数名称=参数值?参数名称=参数值1','参数值2
预览链接?参数名称=参数值?参数名称=参数值1','参数值2

2.3.1 公共链接传递参数

若要实现在 URL 中的参数传递过滤,首先需要获取该仪表板的 URL 。进入仪表板节点,对新建的仪表板选择「创建公共链接」,开启公共链接并「复制链接」,如下图所示:

45.png

比如获取的链接为:http://localhost:37799/webroot/decision/link/njps

在最后添加「?店性质=管理店」:http://localhost:37799/webroot/decision/link/njps?店性质=管理店

在地址栏输入添加参数后的 URL,可以看到通过 URL 中的参数传递,实现「管理店」的过滤。

46.png

注:若浏览器不支持中文参数,即该参数传递过滤不生效,就需要把 json 类型的 url 参数值先进行编码 encodeURIComponent()。比如 edge 浏览器。  

2.3.2 预览链接传递参数

仪表板预览的 URL 加上「?参数名称=参数值」,也可以进行参数的传递。

例如点击「预览仪表板」后可以获取预览的 URL ,如下图所示:

47.png

在预览的 URL 后加入「?店性质=管理店」,可以看到下方的分组表中过滤出了管理店的数据,实现参数的传递功能,如下图所示:

48.png

3. 传递多个参数编辑

在有多个参数的时候,URL 同样可以通过添加参数来实现多个条件过滤的效果。

3.1 添加有多个参数的 SQL 数据集

添加 SQL 数据集,输入带包含多个参数的 SQL 语句:select *  from NEW_DIAN where 店性质 in ('${店性质}' ) and 店风格 in ('${店风格}' )

点击「刷新」,设置默认值为「时尚馆」和「自有店」,并保存数据集,如下图所示:

49.png

3.2 创建仪表板

使用该数据表的字段创建组件,包含「店性质」、「店风格」、「记录数」字段,组件中显示字段值均为参数默认值。如下图所示:

50.png

3.3 传递参数

参考 2.3 节获取该仪表板的链接,在获取的 URL 之后加上多个参数及值:

链接类型传参写法
公共链接?参数名称1=参数值1&参数名称2=参数值2
预览链接?参数名称1=参数值1& 参数名称2=参数值2

例如获取的预览 URL 为:

http://localhost:37799/webroot/decision/v5/conf/subject/page/edit/e9246980d204493bbddb87fe3ea54486/report/ef74d93de3154bbeb059a00dba75689d

为其加上参数「?店性质=管理店&店风格=生活馆」,添加参数后的 URL 为:

http://localhost:37799/webroot/decision/v5/conf/subject/page/edit/e9246980d204493bbddb87fe3ea54486/report/ef74d93de3154bbeb059a00dba75689d?店性质=管理店&店风格=生活馆

添加参数后仪表板可以直接过滤出对应的参数值,如下图所示:

51.png