历史版本4 :钻取的数据显示在当前页面 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

1. 问题描述编辑

在使用数据钻取时,一般都是钻取到另外一个模板,但是有时为了查看数据的方便,希望点击数据钻取时,能够钻取到当前模板,如下图所示,此时要如何实现呢?

2. 实现思路编辑

在主表中设置个网页框,然后设置超级链接到网络报表,正确选择需要链接的模板,并在链接打开于中选择当前窗即可。
注:由于网页框相当于一个iframe,因此可以通过此方法实现。

3. 示例编辑

要实现如上功能,首先要定义两个模板,一个模板是带有网页框的,另一个是网页框中引用的模板。
3.1 网页框中引用的模板
1)打开模板
打开模板:%FR_HOME%\WebReport\WEB-INF\reportlets\doc\Advanced\数据钻取子报表.cpt
2)修改模板
将页面大小设置小点,让其与数据的大小差不多大小并将左边距和右边距都设置为0。
3)保存模板
保存模板,具体的模板可参考:%FR_HOME%\WebReport\WEB-INF\reportlets\doc\SpecialSubject\HyplinkReport\数据钻取到当前模板子报表.cpt
3.2 主模板设置
1)打开模板
打开模板:%FR_HOME%\WebReport\WEB-INF\reportlets\doc\Advanced\数据钻取主报表.cpt
2)修改数据集
为了方便查看数据,我们只取10条数据,因此将sql语句修改为:SELECT top 10 * FROM 订单
3)表样修改
选中一些单元格,点击合并单元格,设置此单元格的控件类型为网页框。
表样如下:
将网页框控件名定义为:orderdetail;
在地址中输入${servletURL}?,添加一个参数reportlet,值为:doc/SpecialSubject/HyplinkReport/数据钻取到当前模板子报表.cpt,这样就可以在网页框里打开3.1里的模板;
并定义一个参数ID把点击订单ID传到子模板中,第一次预览模板没有点击超级链接ID编号,传递到子模板参数为空,没有数据显示,所以这边通过判断默认显示10001的值,公式:if(len($ID)==0,10001,$ID),设置的网页框如下:
4)修改超级链接
点击A2单元格,将网络报表修改为当前模板的数据钻取到当前模板主报表.cpt,以&op=write的方式打开,并将链接打开于选择当前窗口,添加参数ID=$$$,如下图所示:
5)保存模板
保存模板,具体的模板可参考:%FR_HOME%\WebReport\WEB-INF\reportlets\doc\SpecialSubject\HyplinkReport\数据钻取到当前模板主报表.cpt
3.3 效果查看
点击填报预览 数据钻取到当前模板主报表.cpt,即可查看效果,效果如上图所示。
在线查看示例效果请点击数据钻取到当前模板主报表.cpt