帆软报表-超链接
基础设置
1. 超级链接设置
选中要设置的单元格,右击选择超级链接,弹出超级链接窗口,可以对单元格添加超级链接,如下图:
1.1 设置超级链接的效果
如某个单元格设置了超级链接,点击链接会跳转到对应的页面中:
1.2 一个单元格设置多个超级链接效果
如某个单元格设置了两个超级链接,并分别命名为‘江苏地区’和‘浙江地区’,在BS端,点击该单元格会让你进行选择,如下图:
注:超级链接可以设置为无限层数,只需在被链接的页面或报表再设置超级链接即可以完成无限层超级链接。
超级链接到报表及填报表设置
1. 超级链接到报表
选中要设置的单元格,右击选择超级链接,弹出超级链接窗口,选择网络报表:
在弹出的网络报表对话框中选择好对应的报表,点击确定即可。
2. 超级链接到填报表等其他模式
设置超级链接到报表,若直接点击选择按钮选择报表,是以分页预览访问报表的,但是有些需要在其他模式下预览报表如填报预览,只要在选择的报表后增加相应的参数如&op=write即可:
此时再点击超级链接时,就是以填报的方式访问报表了。
超级链接目标打开位置
1. 描述
超级链接目标可以显示在当前浏览器窗口、也可以在新窗口中显示、或者是对话框中等等,如下图:
2. 示例
2.1 新窗口
打开模板%FR_HOME%\webapps\webroot\WEB-INF\reportlets\doc\SpecialSubject\HyplinkReport\HyperLink5.cpt, 选中内容单元格,设置超级链接。
我们选择以"新窗口"打开,网络报表地址:/doc/SpecialSubject/HyplinkReport/HyperLink6.cpt。
效果预览:(新增加一个页签)
2.2 对框框
打开模板%FR_HOME%\webapps\webroot\WEB-INF\reportlets\doc\SpecialSubject\HyplinkReport\HyperLink5.cpt, 选中内容单元格,设置超级链接。
我们选择以"对话框"打开,宽度与高度分别设置:800和150,网络报表地址:/doc/SpecialSubject/HyplinkReport/HyperLink6.cpt。
注:自2018.12.27及之后版本,对话框还可以自定义标题及位置。如下图所示:
效果预览:(当前页直接弹出)
2.3 当前窗口
打开模板%FR_HOME%\webapps\webroot\WEB-INF\reportlets\doc\SpecialSubject\HyplinkReport\HyperLink5.cpt, 选中内容单元格,设置超级链接。
我们选择以"当前窗口"打开,网络报表地址:/doc/SpecialSubject/HyplinkReport/HyperLink6.cpt。
效果预览:(当前窗口模式会对原窗口进行覆)
超级链接参数传递
1. 原理
参数在超级链接中是起到一个钥匙的作用,而目标表的参数就相当于是一个房门的门牌号。因此在定义超级链接时,定义的参数名就相当于这个房间的钥匙,只有钥匙配对了门牌号,才能打开房门拿到想拿的东西。所以我们在设置超级链接时,设置的参数名一定要和目标表的参数名一致,才能对应的链接到目标表,查看到其中的内容。
2. 设置参数传递
3. 继承报表参数
若当前模板的参数与目标模板中的参数相同,此时可以直接勾选继承报表参数,不用一个个再重新定义。
4. 参数的传递方式
传递方式可以选择get或post,如下图:
5. 是否显示报表参数界面
勾选:若被连接的报表,设置有参数界面,此时超级链接至该模板时,参数界面会显示出来。
不勾选:若被连接的报表,设置有参数界面,此时超级链接至该模板时,参数界面就不会显示出来,而是直接将数据展示出来。
超级链接使用js并传参
1. 描述
点击超级链接时,也可以调用一段JS脚本,并且可以给JS脚本传递参数,如下图:
2. 示例
以超级链接到百度并传值为例。
在单元格添加超级链接,然后选择JavaScript,增加参数id,id值选择公式:$$$,并添加js如下:
js代码:
- window.open("https://www.baidu.com/s?&wd="+id); //弹出对话框
具体应用请参考:词云图点击关键字进行百度搜索
超链典型应用
超级链接到有参数的模板
1. 描述
在进行超级链接时,经常会遇到超级链接到的模板是有参数,希望点击超级链接时,当前单元格的内容作为参数值传递给下一个报表的参数。
2. 思路
在超级链接网络报表中设置参数,参数名为被链接模板中参数的名字,参数值为=$$$(当前值)即可。
3. 示例
3.1 打开模板
打开模板:%FR_HOME%\webapps\webroot\WEB-INF\reportlets\doc\Primary\GroupReport\分组报表.cpt。
3.2 超级链接设置
右击A2单元格,选择超级链接,点击增加网络报表,然后点击选择按钮,选择/doc/Primary/Parameter/模板参数.cpt,然后取消勾选“展示网络报表参数界面”,然后点击网络报表参数按钮
,将模板参数.cpt模板中的地区参数加载过来,然后值选择公式,在公式处填写:=$$$,具体设置如下图:
3.3 效果查看
点击分页预览,在BS端点击华东,就能链接到模板参数.cpt并且只查询了华东地区的数据,如下图:
具体的模板设置可参考:%FR_HOME%\webapps\webroot\WEB-INF\reportlets\doc\SpecialSubject\HyplinkReport\超级链接到有参数的模板.cpt
注:如果超级链接的设置可以无限层次的设置下去。
在线查看示例效果请点击超级链接到有参数的模板.cpt
超级链接-传递多个值
1. 描述
在设置超级链接实现数据钻取时,可能有的单元格中有多个值,此时在子报表中如何查询出所有值的数据呢?如下图:
2. 示例
2.1 主表设置
1)打开模板
打开模板:%FR_HOME%\webapps\webroot\WEB-INF\reportlets\doc\Advanced\数据钻取主报表.cpt。
2)修改数据集
修改数据集让其查询少一点的数据,如将数据集修改为:SELECT * FROM 订单 where 订单ID<10004,只查询订单ID<10004的数据。
3)修改扩展属性
将所有包含数据列的单元格的扩展属性设置为不扩展。
2.2 子表设置
1)打开模板
打开模板:%FR_HOME%\webapps\webroot\WEB-INF\reportlets\doc\Advanced\数据钻取子报表.cpt。
2)修改过滤条件
将原来的订单ID等于参数ID修改为订单ID包含于split($ID,","),如下图:
2.3 效果查看
分页预览主表,点击订单ID就可以看到子表中显示了该单元格所有订单ID的信息,如上效果图。
数据钻取到当前模板
1. 描述
在使用数据钻取时,一般都是钻取到另外一个模板,但是有时为了查看数据的方便,希望点击数据钻取时,能够钻取到当前模板,如下图所示,此时要如何实现呢?
2. 思路
在主表中设置个网页框,然后设置超级链接到网络报表,正确选择需要链接的模板,并在链接打开于中选择当前窗即可。
注:由于网页框相当于一个iframe,因此可以通过此方法实现。
3. 示例
要实现如上功能,首先要定义两个模板,一个模板是带有网页框的,另一个是网页框中引用的模板。
3.1 网页框中引用的模板
1)打开模板
打开模板:%FR_HOME%\webapps\webroot\WEB-INF\reportlets\doc\Advanced\数据钻取子报表.cpt。
2)修改模板
选择模板>页面设置,将页面大小设置小点,让其与数据的大小差不多大小并将左边距和右边距都设置为0.05。
3)保存模板
保存模板,具体的模板可参考:%FR_HOME%\webapps\webroot\WEB-INF\reportlets\doc\SpecialSubject\HyplinkReport\数据钻取到当前模板子报表.cpt。