页面树结构

版本比较

标识

  • 该行被添加。
  • 该行被删除。
  • 格式已经改变。


目录

Smartbi 中支持下拉树参数和树对话框参数,在某些情况下我们可能想做一个"子ID"与"真实值"不是同一个字段的树参数,下面就说明如何实现该需求。

需求描述

假设需要通过 Smartbi 知识库中的资源表(t_restree)做一个下拉树参数,参数的真实值为资源名称(c_resname),参数的显示值为资源别名(c_resalias),父子树结构则由资源ID(c_resid)与父ID(c_pid)构建。

实现步骤

1、制作如下下拉树参数。

备选值SQL:

代码块
languagesql
linenumberstrue
select  t.c_resname as RName,  t.c_resalias as RAlias, t.c_pid as RPid from t_restree t,  t_restree pt  
where pt.c_resname = ? and t.c_pid = pt.c_resid 

默认值SQL:

代码块
languagesql
linenumberstrue
select t.c_resname as RName, t.c_resalias as RAlias, t.c_pid as RPid from t_restree t where t.c_resid = 'DEFAULT_TREENODE' 

根节点SQL:

代码块
languagesql
linenumberstrue
select t.c_resname as RName, t.c_resalias as RAlias from t_restree t where t.c_pid is null 

相应界面:



 
2、创建可视化数据集界面如下:

Image RemovedImage Added

3、预览数据可看到效果如下:

Image RemovedImage Added

注意

当选择自定义父子节点的时候,如果没有选择自动加载子节点,则注意备选中的sql不能包含问号。