钻取地图最后层级点击跳转&传参
1. 概述
1.1 应用场景
前段时间,和工作上的小伙伴处理一个问题,如何根据钻取地图的最后一层级点击后跳转到新的页面并且进行区域名传参,我们找了各种接口和获取钻取地图层级接口的文档都是没有解决这个问题,到后面经过不断地交流、讨论终于解决掉了这个问题,现在分享给大家。
1.2 实现思路
首先使用value()函数获取数据集中最后一层级的字段,然后根据点击的时候传出的AREA_NAME 区域名参数进行indexOf的匹配
2. 示例
2.1 准备数据
新建决策报表,新建数据集 ds2,SQL 查询语句为:select * from 地图 where pid is not null (因为没有实际数据,我就用FRdemo的数据,过滤pid字段是为了去除第一列字段中的省份,不影响实际使用),如下图所示:
2.2 设计报表
(1)将钻取地图和报表块分别拖拽到 body 里面,如下图所示:
(2)绑定钻取地图的数据,共两层,如图:
(3)在特效中选择交互属性,在超级链接中添加代码和入参
代码:
if (c.indexOf(b) != -1) {
window.location = encodeURI(encodeURI("${servletURL}?viewlet=WorkBook2.cpt&a="+b+""));
}
上图中参数b是点击钻取地图的时候传输的区域名
参数c是到数据集中获取最后一层级所在的字段,如下如
(4)创新workbook2.cpt,并用来接受参数。
2.3 效果预览
3. 模板下载
点击下载模板:钻取地图最后层级点击跳转&传参.rar (5.67 K)