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

该宏示例在 V10.5上 验证通过

提示:本文档的示例代码仅适用于本文档中的示例报表/场景。若实际报表/场景与示例代码无法完全适配(如使用功能不一致,或多个宏代码冲突等),需根据实际需求开发代码。

示例说明

在即席查询中对排序列添加告警效果,可以通过宏代码来实现。

宏代码实现效果如下:



设置方法

  1. 在“分析展现”节点下,创建一张即席查询。

  2. 选中即席查询,右键选择 编辑宏 进入报表宏界面。

  3. 在报表宏界面新建客户端模块,在弹出的新建模块对话框中选择对象为simpleReport;事件为onRenderTable;并把下面宏代码复制到代码区域。

宏类型

类型

对象

事件

ClientSide

simpleReport

onRenderTable

宏代码

function main(simpleReport, simpleReportContext) {
    var row = 1; //数据开始行,可根据实际情况修改实际数据开始的行
    var cellIndex = 0; //显示告警图片信息的列序号,序号从0开始,可根据实际情况修改显示的列序号
    sortTips(simpleReport, row, cellIndex);
}
function sortTips(simpleReport, row, cellIndex) {
    var grid = simpleReport.grid;
    var maxRow = grid.getRowCount(); //总行数
    for (var m = row; m < maxRow; m++) {
        var cell = grid.getCell(m, cellIndex); //获取列
        cell.align = "center";
        var value = cell.innerText;
        if (value == 1) { //根据值不同,显示不同的图片
            cell.innerHTML = '<img src="./img/mapflag/square-star.png" />';
        } else if (value == 2) {
            cell.innerHTML = '<img src="./img/mapflag/star.png" />';
        } else if (value == 3) {
            cell.innerHTML = '<img src="./img/mapflag/triangle.png" />';
        } else {
            cell.style.background = 'url(img/mapflag/none.png) no-repeat center center';
            cell.style.fontWeight = 'bold';
            cell.style.fontSize = '16';
            cell.style.height = '28';
            cell.style.backgroundColor = '';
        }
    }
}

关键对象总结

  • 读取表内容总行数:simpleReport.grid.getRowCount();
  • 读取单元格内容:simpleReport.grid.getCell(m, cellIndex);

资源下载

资源:migrate.xml