设置方法
- 创建电子表格报表。
- 在浏览器的“分析展现”节点下,选中电子表格,右键选择 编辑宏 进入报表宏界面。
- 在报表宏界面新建客户端模块。在弹出的新建模块对话框中选择对象为 spreadsheetReport;事件为 onRenderReport;并把下面宏代码复制到代码区域。
宏类型
类型 | 对象 | 事件 |
---|---|---|
ClientSide | spreadsheetReport | onRenderReport |
宏代码
代码块 | ||||
---|---|---|---|---|
| ||||
function main(spreadsheetReport) {
spreadsheetReport.buildParamsInfo = function(fromButton) {
if (!this.params) return null;
var ps = [];
for (var i = 0; i < this.params.length; i++) {
if (this.hiddenParamValues && this.hiddenParamValues[this.params[i].id]) continue;
var value;
var displayValue;
if (this.paramPanelObj) {
value = this.paramPanelObj.getParamValue(this.params[i].id);
if (value == "") value = this.paramPanelObj.getParamTagByParamId(this.params[i].id).param.value;
if (value == "") {
var noNull = lang.parseJSON(this.params[i].componentDefine).noNull;
if (!noNull) {
this.refreshing = false;
this.showMaskDiv(false);
if (fromButton) {
alert("${Thereportparametercannotbenull}${Colon}" + (this.params[i].alias || this.params[i].name));
}
return;
}
}
displayValue = this.paramPanelObj.getParamDisplayValue(this.params[i].id);
} else {
value = this.params[i].value;
displayValue = this.params[i].displayValue;
}
var disValue = value;
if (value != "" && value != null) {
var valueArray = value.split(","); //逗号分割
//处理参数实际的部分
if (valueArray.length > 1) {
value = valueArray[0] + "%' or product_name like";
for (var ii = 1; ii < valueArray.length - 1; ii++) {
value = value + "'%" + valueArray[ii] + "%' or product_name like";
}
value = value + "'%" + valueArray[valueArray.length - 1];
}
}
//将所有参数分别放进参数数组中
ps.push({
id: this.params[i].id,
name: this.params[i].name,
value: value,
displayValue: displayValue
});
}
if (this.hiddenParamValues) {
for (var id in this.hiddenParamValues) {
var v = this.hiddenParamValues[id];
ps.push({
id: id,
name: id.substring(id.lastIndexOf('.') + 1),
value: v[0],
displayValue: v[1]
});
}
}
return ps;
};
} |
注意 |
---|
作为多选模糊查询的参数的数据类型要选择“其他类型”,并且在宏代码中,要将下方红色框的字段改成自己使用的参数字段,可在查询SQL中查看对应字段。 |
borderColor | #BBBBBB |
---|---|
bgColor | #F0F0F0 |
borderWidth | 1 |
borderStyle | solid |