最新消息:

利用JS脚本控制StyleReport报表行列合并

编程相关 观测者 1399浏览

红色部分根据报表实际情况做调整。

//纵向合并第1列
var m=1;
for(var i=2;i<data.length+1;i++){
 if(table[i][0]!=table[m][0]){
  cellSpan[m][0]=[1,i-m];
  m=i;
 }
 else if(i==data.length+1-1&&table[i][0]==table[m][0]){
  cellSpan[m][0]=[1,i-m+1];
 }
}

//纵向合并第2列
var m=1;
for(var i=2;i<data.length+1;i++){
 if(table[i][1]!=table[m][1]||table[i][0]!=table[i-1][0]){
  cellSpan[m][1]=[1,i-m];
  m=i;
 }
 else if(table[i][1]==table[m][1]&&table[i][0]==table[i-1][0]){
  cellSpan[m][1]=[1,i-m+1];
 }
}

//横向合并
var k=3;
for(;k<data.length+3;k++){
 if(table[k][0]==table[k][1]){
  cellSpan[k][0]=[2,1];
 }
}

//记录日志
log("长度="+data.length);

//控制表格是否可见
if(trim(parameter.ORG_CODE)!='BSTA'){
 Table1.visible=false;
}

//隐藏某一列/某一行
colWidth[0]=0;
colWidth[1]=0;
rowHeight[3]=0;

列合并后的显示效果:

转载请注明:观测者 » 利用JS脚本控制StyleReport报表行列合并