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

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

示例说明

         在灵活分析报表中,用户要求根据一个参数中的值控制另一个参数是否显示。如示例中,根据报表中的“销售时间”参数中的值来控制 “产品类别”参数是否显示。当“销售时间”参数的值为“2013”时不显示“产品类别”参数;当“销售时间”参数的值为“2014”时显示“产品类别”参数;并报表初始化的时候默认不显示“产品类别”参数。

      当“销售时间”参数的值为“2013”时不显示“产品类别”参数,如下图:

       
       当“销售时间”参数的值为“2014”时显示“产品类别”参数,如下图:

         


设置方法

1、在“资源定制”界面中,创建一张灵活分析报表。

2、选中灵活分析,右键选择 编辑宏 进入报表宏界面。

3、在报表宏界面新建客户端模块,在弹出的新建模块对话框中,选择对象为simpleReport;事件为onRender;并把下面宏代码复制到代码区域。 目的是报表初始化的时候不显示“产品类别”参数。

4、在报表宏界面新建客户端模块,在弹出的新建模块对话框中,选择对象为simpleReport;事件为onParamValueChanged;并把下面宏代码复制到代码区域。目的是当参数发生改变时是否显示 “产品类别”参数。



宏类型

类型

对象

事件

ClientSide

simpleReport

onRender


宏代码

function main(simpleReport, simpleReportContext) {
    simpleReport.paramPanelObj.setParamDisplayStyle({
        name: "产品类别"
    },
    false); //隐藏参数 
    // simpleReport.setParamDisplayStyle("产品类别", false); //隐藏参数 
}

宏类型

类型

对象

事件

ClientSide

simpleReport

onParamValueChanged


宏代码


function main(simpleReport, simpleReportContext) {
    // debugger;
    var param = simpleReport.getCurrentParamValue("销售时间"); //获取参数值
    if (param == '2013') { //参数值为1997时 
        simpleReport.paramPanelObj.setParamDisplayStyle({
            name: "产品类别"
        },
        false); //隐藏参数 
        // simpleReport.setParamDisplayStyle("产品类别", false); //隐藏参数 
    } else {
        simpleReport.paramPanelObj.setParamDisplayStyle({
            name: "产品类别"
        },
        true); //显示参数 
        // simpleReport.setParamDisplayStyle("产品类别", true); //显示参数 
    }
}


关键对象总结

  • 设置参数是否显示:simpleReport.paramPanelObj.setParamDisplayStyle({name:paramName}, display);


  • 无标签