集智平台API获取报表更新属性的单元格
一些客户使用API开发的报表,在一些单元格设置了一些更新属性,而客户在一些业务处理中可能要针对不同的报表动态的取得哪些单元格有更新属性,取得有更新属性的单元格,然后做一些资深的业务处理,下面就介绍一些如何使用api来动态的获取报表中哪个单元格有更新属性。
实现思路:
API遍历报表的所有单元格,依次判断单元格是否存在InputProperty,如果不存在则说明该单元格没有更新属性,那么循环继续进行,如果存在则说明该单元格存在更新属性,在确定报表只有一个更新属性的时候可以终止循环,如果不确定则可以记录下这个单元格的坐标,然后继续循环。
实现代码:
实现上面思路的具体代码如下所示:
import com.runqian.report4.model.ReportDefine;
import com.runqian.report4.usermodel.Context;
import com.runqian.report4.usermodel.INormalCell;
import com.runqian.report4.util.ReportUtils;
public class UpdateCell {
/**
@param args
@throws Exception
*/
public static void main(String[] args) throws Exception {
// TODO Auto-generated method stub
Context cxt = new Context();
ReportDefine rd = null;
int mainRowNum = 0;
rd = (ReportDefine) ReportUtils.read(“F:/update.raq”);
for(int i=1;i<=rd.getRowCount();i++){
for(int j=1; j<=rd.getColCount();j++){
INormalCell ic = rd.getCell(i, (short)j);
if(ic.getInputProperty()!=null){
mainRowNum = i;
System.out.println(“Cell(“+String.valueOf(i)+”,”+String.valueOf(j)+”)”);
}
else continue;
}
}
}
}
制作报表:
制作一张测试的报表,将上面的报表命名为update.raq,保存到F盘的根目录下。
查看效果:
运行上面写好的类,在后台可以看见打印的信息,有更新属性的单元格坐标都被打印了出来。