示例说明
...
设置方法
- 在资源定制中,创建一张灵活分析(带合计行)。
- 选中灵活分析,右键选择 编辑宏 进入报表宏界面。
- 在报表宏界面新建跳转规则。
- 修改所创建跳转规则的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;
} |
关键对象总结
...
显示子页面 |
---|