URL参数的传递使用(实时数据)

  • 文档创建者:doreen0813
  • 编辑次数:22次
  • 最近更新:Lily.Wang 于 2020-06-30
  • 1. 概述

    1.1 应用场景

    比如想要在打开门店相关仪表板 URL 的时候,直接添加相关参数,如http://xxxxxxxx&店性质=管理店直接过滤出店性质为管理店的数据。

    1.2 功能介绍

    在开启了实时数据,使用直连数据库时,FineBI 支持在 SQL数据集 中添加参数,添加的参数在前端仪表板中能够绑定使用,且能够通过参数的创建传递来实现部分指标的过滤功能。

    注:该URL参数传递功能仅使用开启实时数据的仪表板支持,更新到本地的数据不支持。

    2. 操作步骤

    2.1 添加参数

    1)在业务包中新建带参数的SQL数据集,如select * from new_dian where 店性质 in ('${店性质}'),SQL 数据集的创建请参考 添加SQL数据集 。${店性质}就是设置的参数变量,点击刷新,设置参数的默认值为自由店,也可以设置参数的文本类型,如下图所示:

    select * from new_dian where 店性质 in ('${店性质}')

    1.png

    2)点击右上角的确定按钮,该 SQL 数据集即创建成功。需要为该 SQL 数据集开启实时数据,如下图,点击开启门店数据表右侧的实时数据按钮。如下图所示:

    1.png

    注:若未开启实时数据直连数据库,则不能进行后续前端的参数传递实现指标过滤。

    2.2 使用参数

    2.2.1 制作组件

    新建一张仪表板,选择刚刚创建的带参数的 SQL 数据表,拖入店性质记录数字段,选择分组表,如下图所示:

    52.png

    在组件预览处可以看到,店性质字段显示为参数默认值自有店,如下图所示:

    1.png

    2.2.2 公共链接参数传递

    1)若要实现在 URL 中的参数传递过滤,首先需要获取该仪表板的 URL 。进入仪表板节点,对新建的仪表板选择创建公共链接,如下图:

    1.png

    2)点击开启公共链接并复制链接,如下图:

    1.png

    3)在获取的URL后添加&参数名称=参数值

    比如获取的链接为:http://120.27.40.246:37799/webroot/decision/v5/design/report/share/7352147fc403469596a2a61b1c6b111f?link=eyJhbGciOiJIUzI1NiJ9.eyJyZXBvcnRJZCI6IjczNTIxNDdmYzQwMzQ2OTU5NmEyYTYxYjFjNmIxMTFmIiwidXNlcklkIjoiYjVmMGMyZWUtNjQwZi00MDM5LWE0ZDQtOTE4YjU1MzU0ODk4IiwianRpIjoiand0In0.49ETHgp71zXVeosRoxVV-re77-6HPyM-mSUrsm4QVp8

    在最后添加&店性质=管理店

    http://120.27.40.246:37799/webroot/decision/v5/design/report/share/7352147fc403469596a2a61b1c6b111f?link=eyJhbGciOiJIUzI1NiJ9.eyJyZXBvcnRJZCI6IjczNTIxNDdmYzQwMzQ2OTU5NmEyYTYxYjFjNmIxMTFmIiwidXNlcklkIjoiYjVmMGMyZWUtNjQwZi00MDM5LWE0ZDQtOTE4YjU1MzU0ODk4IiwianRpIjoiand0In0.49ETHgp71zXVeosRoxVV-re77-6HPyM-mSUrsm4QVp8&店性质=管理店

    4)在地址栏输入添加参数后的 URL,可以看到通过 URL 中的参数传递,实现了管理店的过滤,如下图所示:

    222

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

    2.2.3 预览链接参数传递

    不光公共链接的 URL 可以添加参数传递,仪表板预览的 URL 加上?参数名称=参数值,也可以进行参数的传递。

    1)比如,点击预览仪表板后可以获取预览的 URL ,如下图所示:

    222

    2)直接在预览的URL后加入?店性质=管理店,如下图所示:

    222

    可以看到下方的分组表中过滤出了管理店的数据,实现了参数的传递功能。

    2.2.4 给参数传递多个值

    在参数值之间添',',即可传递多个值。

    以预览链接为例,在 URL 最后添加?店性质=管理店','自有店,如下图所示:

    image.png

    3. 传递多个参数

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

    3.1 添加多个参数

    添加 SQL 数据集,输入带包含多个参数的 SQL 语句,点击刷新,设置默认值为时尚感自由店,如下图所示:

    select *  from new_dian where 店性质 in ('${店性质}' ) and 店风格 in ('${店风格}' )

    222

    2)点击确定保存该SQL 数据集,同样为其开启实时数据按钮。

    3.2 参数传递使用

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

    222

    2)参考第三章节获取链接的方式,获取该仪表板的链接,在获取的 URL 之后加上多个参数及值

    • 公共链接为&参数名称1=参数值1&参数名称2=参数值2

    • 预览链接为?参数名称1=参数值1& 参数名称2=参数值2

    比如获取的预览URL为:

    http://120.27.40.246:37799/webroot/decision/v5/design/report/878c220611794e31abd9f705793ec3b0/view

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

    http://120.27.40.246:37799/webroot/decision/v5/design/report/878c220611794e31abd9f705793ec3b0/view?店性质=管理店&店风格=生活馆

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

    222

    附件列表


    主题: 制作可视化组件
    • 有帮助
    • 没帮助
    • 只是浏览
    • 评价文档,奖励 1 ~ 100 随机 F 豆!