在透视分析的参数后添加刷新按钮,当切换参数后不刷新数据,而是在点“刷新”按钮后才刷新数据,可以通过宏实现。
实现效果图如下:
在“分析展现”节点中,创建一张透视分析;
取消透视分析的“切换参数后自动刷新报表”功能(注意),如下图:
类型 | 对象 | 事件 |
---|---|---|
ClientSide | INSIGHT | onRender |
function main(insight) { if (typeof(insight.old_rebuildParamPanel) == "undefined") { insight.old_rebuildParamPanel = insight.rebuildParamPanel; insight.rebuildParamPanel = function() { this.old_rebuildParamPanel(); addBtns(this); }; } } //添加刷新按钮 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 = "70px"; btnElem.style.height = "23px"; btnElem.style.padding = "2px 0 0 0"; btnElem.style.margin = "0 10px 0 10px"; insight.addListener(btnElem, "click", function() { insight.doRefresh(); }, this); lastCell.appendChild(btnElem); } |
资源:migrate.xml