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

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

与当前比较 查看页面历史

版本 1 下一个 »

示例说明

在一个电子表格报表内,有多个Sheet页,有时候用户希望点击某个Sheet中的对应单元格,可以跳转到另一个Sheet 页。对于这样的需求通过电子表格的跳转规则向导生成宏代码,然后再手动调整即可。

实例效果如下:

设置方法

  1. 在电子表格报表上新建“跳转规则向导”。
  2. 在向导的“第二步:目标资源参数设置”界面上,选择“目标资源”为原报表,同时将“在新窗口打开”选择去掉。
  3. 然后修改生成的“客户端模块”宏代码,将最后的几行代码替换掉。

 

宏代码

将向导自动生成的宏代码:

    var command = spreadsheetReport.command;
    command.close();
    //@smartbi.openOtherPage:"I402881e4015a73137313d61e015a733a27a807b1"
    command.execute('OPENWITHNOREFRESH', 'I402881e4015a73137313d61e015a733a27a807b1');
    var report = command.spreadsheetReport;
    if (paramsInfo.length > 0) report.setParamsInfo(paramsInfo);
    report.doRefresh();

 

替换为如下代码:

    var report = spreadsheetReport;
    if (paramsInfo.length > 0) report.setParamsInfo(paramsInfo);
    report.doAjaxRefresh();
 
    setTimeout(function() {
        report.changeSheet(1);
    }, 200);
替换宏代码后若无法正常刷新数据,可以在report.changeSheet(1)代码后面加上report.doRefresh(true);这句代码尝试解决,另在页面设置中设置为切换参数不自动刷新(如下图)

关键对象总结

  1. report.doAjaxRefresh():让报表局部刷新,避免报表闪烁。
  2. report.changeSheet(1):把报表切换到对应的Sheet页。

 

  • 无标签