页面树结构
转至元数据结尾
转至元数据起始

示例说明

在一个电子表格中,存在多个元素,比如下面的报表中,左侧的表格是产品类别的汇总数据,右侧的柱图是具体的产品类别明细数据。在同一个电子表格中,可以设置点击左侧的表格,使右侧的图形数据随之变化。

版本及客户端要求

1.版本:Smartbi V7 及以上

2.客户端:PC

3.浏览器:IE8-IE11、Chrome、Firefox、360急速浏览器

 

注:如果使用V7.0.1及以上版本,可参考以下示例实现:

 

设置步骤

1.创建数据集

创建两个数据集,第一个是产品类别汇总数据。如下:

 

第二个数据集,是产品明细数据,并且该数据集中有“产品类别”参数,切换参数,可以切换具体的类别明细数据,如下:

 

2.创建电子表格

使用数据集1和数据集2创建电子表格报表,其中左侧表格使用的是第一个数据集的字段,右侧柱图使用的是第二个数据集的字段

 

电子表格展示如下:

 

3.设置跳转规则

在此电子表格上右键-》编辑宏,进入报表宏编辑界面

在宏编辑界面选择新建跳转规则向导

 

4.设置链接条件

输入跳转规则名称,“源资源链接字段”选择“Sheet1”,在“模板单元格或者名称”中输入“B6”

  • 模板单元格或者名称:表示指定单元格及其扩展出来的单元格都支持做为链接源。
  • 结果单元格:表示只支持指定单元格做为链接源。

      指定单元格的方式可以是单元格的位置,如“B6”;也可以通过单元格的名字,单元格名字在EXCEL中通过如下方式设置:

      

由于我们需要点击产品类别数据进行跳转,而产品类别字段在sheet1的B6单元格中,因此在模板单元格或者名称中输入“B6”

 

5.选择目标报表

点击下一步,目标资源选择此电子表格自身,并且不勾选“在新窗口打开”

 

6.设置参数传递

“产品类别参数”的参数来源选择“单元格数据”,参数值输入“B6”,由于需要将所点击的位置的产品类别数据传递,所以需要将“B6”单元格的数据传递到参数“产品类别”中

 

7.修改宏代码实现布局刷新

(1)打开保存后生成的客户端宏代码,在以下位置增加红框中的代码

增加的代码如下:

  if (spreadsheetReport.refreshing) {
        return;
    }

 

(2)将下面红框中的代码修改为绿框中的代码

 

具体的代码如下:

 var report = spreadsheetReport;
    if (paramsInfo.length > 0) report.setParamsInfo(paramsInfo);
    report.doAjaxRefresh();


最终的代码如下:

 

8.查看效果

在浏览器中打开源报表,点击链接条件查看下钻效果。

 

注:报表联动刷新前后,电子表格中行数和列数不能发生变化。由于使用局部刷新,电子表格不会重新计算单元格位置。所以如果数据行列发生了变化,可能导致错误