示例说明
在灵活分析(带参数)中,实现"参数值显示在网格上面"。
设置方法
- 在资源定制中,创建一张灵活分析(带参数);
- 选中灵活分析,右键选择 编辑宏 进入报表宏界面。
- 在报表宏界面新建客户端模块,在弹出的新建模块对话框中选择对象为simpleReport;事件为onRenderTable;并把下面宏代码复制到代码区域。
宏类型
类型 | 对象 | 事件 |
ClientSide | simpleReport | onRenderTable |
宏代码
function main(simpleReport, simpleReportContext) { var gridElem = simpleReport.gridLay; //网格节点 var parentElem = gridElem.parentNode; //父节点 //如果已经创建过,找到并且删除 var CustomTrDone = domutils.findElementByClassName(parentElem, "_movetitle"); if (CustomTrDone) parentElem.removeChild(CustomTrDone); var paramsValues = ""; //获取所有的参数值 for (var i = 0, len = simpleReport.params.length; i < len; i++) { var param = simpleReport.params[i]; paramsValues = paramsValues + param.name + ":" + simpleReport.getCurrentParamValue(param.name) + " "; } //新建一个节点,把参数的值写在一行 var btnElem = document.createElement("tr"); btnElem.height = "20"; btnElem.className = "_movetitle"; btnElem.bofid = "_movetitle"; btnElem.vAlign = "top"; var tdElem = document.createElement("td"); btnElem.appendChild(tdElem); //显示所有的参数值 tdElem.innerHTML = paramsValues; //把新建的节点放到网格的上面 parentElem.insertBefore(btnElem, gridElem); }
关键对象总结
- 获取网格节点:simpleReport.gridLay
- 获取网格父节点:gridElem.parentNode
- 根据名称查找元素是否已经存在:domutils.findElementByClassName(parentElem, "_movetitle")
- 获取参数值:simpleReport.params[i]