页面树结构
转至元数据结尾
转至元数据起始

正在查看旧版本。 查看 当前版本.

与当前比较 查看页面历史

« 前一个 版本 3 当前 »

(宏代码仅供参考,如和实际应用场景不匹配,需要自行调整相关代码)

问题描述:

目前仪表盘的自动刷新只会更新数据,对于报表定义修改不会进行更新,需要重新打开报表才会加载修改后的报表定义。即报表编辑修改了样式,已挂载的大屏,定时刷新不会及时改变。

处理方法:

若是远程做报表开发,无法操作大屏重新打开报表,则可考虑填写下面的宏,可以设置setTimeout定时执行reload方法去重载仪表盘报表修改后的设置,跟刷新浏览器一样效果;

建议:在报表修改后定时执行一次即可,后续如果不是频繁改变报表,可以禁用宏,避免频繁刷新带来的性能问题。

版本及客户端说明

smartbi版本:V11

设置方法

/******************************宏代码说明******************************
 * version:Smartbi V11
 * 类型:ClientSide
 * 对象:smartbix_page
 * 事件:onRender
 * 效果描述:定时刷新浏览器重载报表

 * 5000单位的ms,需要按实际情况修改。

 *********************************************************************/

function main(page: IPage) { 
    setTimeout(function () {
        location.reload(true);
    },5000);
}


注意:

若需区别编辑和打开查看类型,没有判断编辑还是浏览的,只能用获取工具栏判断下了,参考:

设置方法

/******************************宏代码说明******************************
 * version:Smartbi V11
 * 类型:ClientSide
 * 对象:smartbix_page
 * 事件:onRender
 * 效果描述:定时刷新浏览器重载报表

 * 5000单位的ms,需要按实际情况修改。

 *********************************************************************/

function main(page: IPage) { 
    debugger;
    let btns = page.getPageToolbar().getButtons();
    if (!btns || btns.length == 0return;
    setTimeout(function () {
        location.reload(true);
    },5000);
}


  • 无标签