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

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

与当前比较 查看页面历史

版本 1 当前 »

示例说明

在透视分析的参数后添加刷新按钮,当切换参数后不刷新数据,而是在点“刷新”按钮后才刷新数据,可以通过宏实现。效果图如下:

 
设置方法

  1. 在展现定制中,创建一张透视分析;
    取消透视分析的“切换参数后自动刷新报表”功能注意如下图:

  2. 切换到 定制 -> 宏管理 页面,双击此透视分析进入报表宏界面。
  3. 在报表宏界面新建客户端模块,在弹出的新建模块对话框中选择对象为INSIGHT;事件为onRender;并把下面宏代码复制到代码区域。
  4. 在报表宏新建客户端模块,在弹出的新建模块对话框中选择对象为INSIGHT;事件为onRenderTable;并把下面宏代码复制到代码区域。

         

注意:分别新建两个客户端宏,一个onRender触发,一个onRenderTable触发。

宏类型

类型对象事件
ClientSide

INSIGHT

onRender

ClientSide

INSIGHT

onRenderTable


宏代码

添加按钮
function main(insight) {
    //debugger;
    insight.origin_rebuildParamPanel = insight.rebuildParamPanel;
    insight.rebuildParamPanel = function() {
        this.origin_rebuildParamPanel();
        addBtns(this);
    }
    addBtns(insight);
}
function addBtns(insight) {
    var paramTable = insight.paramPanelObj.layoutTable;
    var i, cell, lastCell;
    for (i = 0; i < paramTable.rows.length; i++) {
        cell = paramTable.rows[i].insertCell( - 1);
        if (i == paramTable.rows.length - 1) lastCell = cell;
    }
    //新建button,并把这个button加到最后一个参数后面
    var btnElem = document.createElement("input");
    btnElem.type = "button";
    btnElem.value = "刷新";
    btnElem.className = "queryview-toolbar-button";
    btnElem.style.background = "url(./img/button/button_bgicon_add.gif) no-repeat top right";
    btnElem.style.border = "1px solid #A1ACB9";
    btnElem.style.width = "80px";
    btnElem.style.padding = "2px 0 0 0";
    btnElem.style.margin = "0 10px 0 10px";
    btnElem.onclick = doClick;
    if (lastCell) {
        lastCell.appendChild(btnElem);
    }
    //定义button的Click事件
    function doClick() {
        insight.doRefresh();
    }
}

关键对象总结

  • 获取透视分析参数区域:insight.paramPanelObj.layoutTable;
  • 创建按钮控件:document.createElement("input");
  • 添加按钮到参数区域:lastCell.appendChild(btnElem);
  • 透视分析刷新数据:insight.doRefresh();

 

 

 

  • 无标签