1. 概述
1.1 预期效果
在设置超级链接时,会遇到链接到的模板是有参数。希望点击超级链接时,当前单元格的内容作为参数值传递给下一个报表的参数。如下图所示:
1.2 实现方法
通过网络报表或 JavaScript 脚本,实现超级链接到有参数的模板。
2. 示例一:网络报表
2.1 子模板
新建普通报表,另存为%FR_HOME%\webapps\webroot\WEB-INF\reportlets\doc\SpecialSubject\HyplinkReport\超级链接到有参数的模板-子模板.cpt
2.1.1 新建数据集
新增数据集 ds1:SELECT * FROM 销量 where 1=1 ${if(len(area) == 0,"","and 地区 = '" + area + "'")}
「area」为自定义参数名称,也就是对应地区的过滤名称(控件名)。判断控件值是否为空,如为空,默认查询全部。
如下图所示:
2.1.2 设计报表
1)报表页面设计如下图所示:
2)选中 C2 单元格,选择「单元格元素>基本」,数据设置为「汇总、求和」。如下图所示:
2.2 主模板
新建普通报表,另存为%FR_HOME%\webapps\webroot\WEB-INF\reportlets\doc\SpecialSubject\HyplinkReport\超级链接到有参数的模板-网络报表.cpt
2.2.1 新建数据集
新增数据集 ds1:SELECT * FROM 销量
如下图所示:
2.2.2 设计报表
1)报表页面设计如下图所示:
2)选中 C2 单元格,选择「单元格元素>基本」,数据设置为「汇总、求和」。如下图所示:
2.3 设置超级链接并传递参数
打开超级链接到有参数的模板-网络报表.cpt,选中 A2 单元格,点击「超级链接」,添加「网络报表」。
网络报表选择/doc/SpecialSubject/HyplinkReport/超级链接到有参数的模板-子模板.cpt,链接打开于「新窗口」,设置参数area=$$$
设置参数 area=$$$ 的目的:前端预览时点击哪个扩展出来的数据,就将这个数据作为参数area传递给子模板。设置界面如下图所示:
2.4 效果预览
2.4.1 PC 端
保存模板,点击「分页预览」。点击「华东」,跳转至子模板,且子模板只显示「华东」部分的数据。如下图所示:
2.4.2 移动端
App 及 HTML5 端预览效果如下图所示:
3. 示例二:JavaScript 脚本
3.1 模板设置
1)子模板设置与本文 2.1 节一致,另存为%FR_HOME%\webapps\webroot\WEB-INF\reportlets\doc\SpecialSubject\HyplinkReport\超级链接到有参数的模板-子模板.cpt
2)主模板设置与本文 2.2 节一致,另存为%FR_HOME%\webapps\webroot\WEB-INF\reportlets\doc\SpecialSubject\HyplinkReport\超级链接到有参数的模板-JavaScript 脚本.cpt
3.2 设置超级链接并传递参数
打开超级链接到有参数的模板-JavaScript 脚本.cpt,选中 A2 单元格,点击「超级链接」,添加 「JavaScript 脚本」。
设置参数A=A2,添加 JavaScript 代码,如下图所示:
JavaScript 代码如下:
window.open("${servletURL}?viewlet=doc/SpecialSubject/HyplinkReport/超级链接到有参数的模板-子模板.cpt&op=view&area="+A);
3.3 效果预览
保存模板,点击「分页预览」。点击「华东」,跳转至子模板,且子模板只显示「华东」部分的数据。如下图所示:
注:不支持移动端。
4. 已完成模板
4.1 示例一:网络报表
1)主模板
已完成模板请参见:%FR_HOME%\webapps\webroot\WEB-INF\reportlets\doc\SpecialSubject\HyplinkReport\超级链接到有参数的模板-网络报表.cpt
点击下载模板:超级链接到有参数的模板-网络报表.cpt
2)子模板
已完成模板请参见:%FR_HOME%\webapps\webroot\WEB-INF\reportlets\doc\SpecialSubject\HyplinkReport\超级链接到有参数的模板-子模板.cpt
点击下载模板:超级链接到有参数的模板-子模板.cpt
4.2 示例二:JavaScript 脚本
1)主模板
已完成模板请参见:%FR_HOME%\webapps\webroot\WEB-INF\reportlets\doc\SpecialSubject\HyplinkReport\超级链接到有参数的模板-JavaScript 脚本.cpt
点击下载模板:超级链接到有参数的模板-JavaScript 脚本.cpt
2)子模板
已完成模板请参见:%FR_HOME%\webapps\webroot\WEB-INF\reportlets\doc\SpecialSubject\HyplinkReport\超级链接到有参数的模板-子模板.cpt
点击下载模板:超级链接到有参数的模板-子模板.cpt