历史版本17 :JS实现普通报表自动轮播 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

1. 概述编辑

1.1 应用场景

在实际工作中,需要实现在一个屏上实现多张报表自动轮播,区别于 自动切换分页效果 及 图表手动切换。如下图所示:

2020-06-24_12-22-36 (1).gif

1.2 实现思路

使用 FineReport 自带的 JavaScript 延时函数,页面加载完成后停留一定时间自动跳转到另一页面来实现自动轮播特效。

2. 示例编辑

2.1 打开报表

依次打开设计器内置模板:%FR_HOME%\webapps\webroot\WEB-INF\reportlets\ doc\Advanced\Chart\3Darea_1.cpt
%FR_HOME%\webapps\webroot\WEB-INF\reportlets\ doc\Advanced\Chart\3Darea_2.cpt
 %FR_HOME%\webapps\webroot\WEB-INF\reportlets\ doc\Advanced\Chart\3Darea_3.cpt

2.2 添加事件

在报表 3Darea_1.cpt 设计器菜单栏点击模板>模板Web属性>分页预览设置 ,选择为该模板单独设置 ,添加 加载结束 事件,如下图所示:

2020-06-24_11-27-29.png 

3Darea_1.cpt 报表的 JavaScript 代码如下:

setTimeout(function(){
    window.location="${servletURL}?viewlet=doc/Advanced/Chart/3Darea_2.cpt";
},3000)

按照上述步骤,继续为 3Darea_2.cpt 报表的添加 加载结束 事件及 JavaScript 代码,代码如下:

setTimeout(function(){
    window.location="${servletURL}?viewlet=doc/Advanced/Chart/3Darea_3.cpt";
},3000)

按照上述步骤,继续为 3Darea_3.cpt 报表的添加 加载结束 事件及 JavaScript 代码,代码如下:

setTimeout(function(){
    window.location="${servletURL}?viewlet=doc/Advanced/Chart/3Darea_1.cpt";
},3000)

注:如果是决策报表文件(.frm),可参考类似文档:暂停和继续轮播报表

2.2 效果预览

保存模板,点击 分页预览 ,效果如应用场景中所示。

注:不支持移动端。

3. 模板下载编辑

已完成的模板参见:

点击下载模板: 自动轮播cpt报表.zip