Skip to content

使用 appParam 传入参数信息

在仪表盘制作过程中会使用参数控制仪表盘内容的展示。在嵌入场景下,可以通过 appParam 将参数信息拼接到 URL 后面,系统在预览时会将 appParam 中的参数信息转发到最终执行的 SQL 代码中,查看不同参数值下的仪表盘数据信息。

appParam 是数组,可包含多个项目,每个项目是一个 object,为一个参数信息,由3个键值构成。参数可通过 id 或 name 来指定,所以 appParam 的 object 支持两种形式{"appId":1,"id":1,"value":"参数值"}{"appId":1,"name":"参数名称","value":"参数值"}]

每个键值代表的含义如下:

  • appId 是创建参数的数据包或应用的 ID。
  • id 是参数的id,可通过网络请求消息获取。
  • name 是参数名称。
  • value 是参数值,类型与参数类型保持一致。

嵌入的 URL 和 appParam 拼接后格式为嵌入 url?appParam=[{"appId":1,"name":"参数名称","value":"参数值"}]

提示

appParam 使用说明

  1. appParam 中可使用参数 id 或参数 name 来确定参数,二者选一个即可。
  2. appParam 的 appId 指的是参数创建时的应用 ID,不是参数使用中的应用 ID。如参数在数据集市中数据包 A(appId 为3)中创建,在应用创作中应用 A(appId 为5)中使用,那么在 appParam 中需要输入的 appId 为3。
  3. appParam 的 appId 和参数 id(或参数名称)一起确定参数,如果 appId 省略,可能会导致结果不正确。
  4. appParam 中支持传入多个参数。

appParam 举例

参数控制仪表盘内容展示的方式有很多种,可参照参数使用场景中介绍的方法。 下面以数据集制作图表过程中使用参数为例,介绍如何在嵌入场景下通过 appParam 传入参数。

如图所示,在某医院的就诊信息展示过程中,诊室和出诊医生信息使用科室参数进行内容控制,当改变科室参数时,图表的信息会跟随改变。

仪表盘的 URL 地址为https://develop.hengshi.org/app/127572/dashboard/93,展示内容如下:

使用 appParam 传入科室参数,仅展示消化内科、神经内科两个科室的信息,在 URL 后面拼接 appParam 为https://develop.hengshi.org/app/127572/dashboard/93?appParam=[{"appId":127572,"name":"科室参数","value":["消化内科","神经内科"]}],仪表盘展示如下。

当 appParam 中包含多个参数,如通过科室参数控制科室相关信息,通过地域参数控制就诊用户地域相关信息。 此时拼接后的 URL 为https://develop.hengshi.org/app/127572/dashboard/93?appParam=[{"appId":127572,"name":"科室参数","value":["消化内科","神经内科"]},{"appId":127572,"name":"地域参数","value":["北京","天津"]}],仪表盘展示如下。

衡石分析平台使用手册