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

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

与当前比较 查看页面历史

版本 1 当前 »

示例说明


    在灵活分析中对于合计、小计等对应的指标值不加链接,如下图:

   
设置方法

  1. 在资源定制中,创建一张灵活分析(带合计行)。
  2. 选中灵活分析,右键选择 编辑宏 进入报表宏界面。
  3. 在报表宏界面新建跳转规则。
  4. 修改所创建跳转规则的action,如修改示例中的跳转规则的action,如下图:

宏类型

类型

对象

事件

ClientSide

simpleReport

onRenderTable

宏代码

function main(simpleReport, simpleReportContext) {
    /*需要修改的内容*/
    var col = simpleReport.getFieldIndexByName("CategoryName"); //获取字段名称列
    var col1 = simpleReport.getFieldIndexByName("销售额"); //获取字段名称列
    var col2 = simpleReport.getFieldIndexByName("Quantity"); //获取字段名称列
    var count = simpleReport.grid.getRowCount(); //获天表格行
    for (var i = simpleReport.grid.getHeaderRows(); i < count; i++) {
        var cell = simpleReport.grid.getCell(i, col);
        if (cell.innerHTML == "合计") {
            break; //退出循环
        } else {
            simpleReport.addCellLink(i, col1, me); //给单元格添加链接
            simpleReport.addCellLink(i, col2, me); //给单元格添加链接
        }
    }
}
/*以下内容为创建跳转规则时自动生成的代码,不需要修改*/
var menuItem = {
    alias: "下钻",
    callback: function(simpleReport, simpleReportContext, page, pageContext) {
        simpleReport.writeParamsToContext();
        var targetResId = "I4028818a0ba9cdff014e9a8816f5372b";
        var newReport = false;
        //找到对应的dashlet对象,并刷新它。
        var dashlet = page.findDashletByReportId(targetResId);
        //dashlet不存在
        if (!dashlet) return;
        var portlet = dashlet.currentPortlet;
        if (!portlet) {
            return;
        }
        //设置或收集参数值。
        var realValue = simpleReport.getCurrentFieldRealValue("产品类别");
        var dispValue = simpleReport.getCurrentFieldValue("产品类别");
        var pObj = {
            "value": realValue,
            "displayValue": dispValue
        };
        if (pObj) {
            portlet.fillParamValueFromObj("产品类别", pObj);
        }
        //设置参数值到报表对象
        portlet.commitParamValue();
        portlet.refreshData();
    }
}
var me = menuItem;
//创建参数信息
function createParamInfo(name, value, disValue, mergeType) {
    var paramInfo = new Object();
    paramInfo.name = name;
    paramInfo.value = value;
    paramInfo.displayValue = disValue;
    if (mergeType) paramInfo.groupType = mergeType;
    return paramInfo;
}

关键对象总结

  • 通过参数名获取参数对象:simpleReport.addCellLink(i, col, me)
  • 打开灵活分析:simpleReportContext.openReport("I2c949eaf1a942102011a9561f7e7015d");
  • 无标签