JS实现决策报表内报表块局部刷新/翻页

编辑
文档创建者:文档助手1 (67727 )     浏览次数:9084次     编辑次数:16次     最近更新:susie 于 2018-01-25     

目录:

1. 问题描述编辑

有的时候我们不想刷新整个决策报表决策报表定时刷新JS,而只想刷新报表里的报表块。
报表里的报表块如何实现局部刷新?
同时报表里的报表块如何实现跳转到指定页?
222

2. 解决方案编辑

通过js来实现局部刷新和跳转到指定页。
this.options.form.getWidgetByName("repotname").gotoPage(pn, para, noCache)
参数  类型   说明 
  pn  Number  页序号,序号从1开始
  para  JSON  选填,跳转报表块页面时携带的参数
  noCache  Boolean  选填,true时跳转报表块不使用缓存,强制取新的数据
this.options.form.getWidgetByName("report0").gotoPage(2,"{month:12, name:'FR'}",true);
可以通过这段js实现。其中“report0",就是报表块的名称,这里指跳转到第2页,并传递参数$month的值为12,$name的值为FR,并且不使用缓存。

3. 示例编辑

3.1 打开报表
%FR_HOME%\WebReport\WEB-INF\reportlets\doc\Advanced\mobile-client\FormGetReport.frm
在button0按钮添加点击事件,JS代码如下:
this.options.form.getWidgetByName("report0").gotoPage(2,"{month:12, name:'FR'}",true);
点击button0按钮后,report0报表块跳转到第2页;并且报表中通过公式$month,$name正常获取到了参数值;
在button1按钮添加点击事件,JS代码如下:
var form = this.options.form; setInterval(function() { form.getWidgetByName('report1').gotoPage(1,"{}",true); }, 1000);

点击button1按钮后,report1报表块一秒刷新一次;

注:此方案移动端同样适用,移动端如何添加模板请查看添加服务器报表查看

附件列表


主题: 二次开发
如果您认为本文档还有待完善,请编辑

文档内容仅供参考,如果你需要获取更多帮助,请咨询帆软技术支持
关于技术问题,您还可以通过帆软论坛获取帮助,论坛上有非常多的大神,有些水平比帆软工程师还要高哦。
若您还有其他非技术类问题,可以联系帆软传说哥(qq:1745114201

本文档是否有用?
谢谢! 我们非常感谢您的反馈。
提交反馈: