填报监听类中获得报表名称
填报监听类对填报的多样需求有着很大的帮助,有客户曾经提到如何在监听类里获得报表的名称,下面介绍两种取报表名称的方法。
第一种方法,通过报表单元格进行报表名称的传递:
这个方法的思路是首先在jsp里把报表名称里取到,然后拼到传递给报表的param里,然后在报表里得到这个参数,显示在一个单元格里,然后在beforeSave()函数取到这个单元格里值,也就是报表名称,
第一步:
将报表名称作为参数传递给报表
String report = request.getParameter( “raq” );
第二步:
将参数传递给报表
StringBuffer param=new StringBuffer();
param.append(“raq=”+report+”;”);
第三步:
在报表中设置参数并在单元格中取到该参数。
第四步:
在监听类里取到该单元格。
INormalCell iCell = report.getCell(1,1);
System.out.println(“报表名称是:”+iCell.getValue());
以上便可以在监听类里取到报表名称,不过有点麻烦,下面的方法可能会简洁一些:
第二种方法,通过session在监听类里取到,
将报表名称通过session中的setAttribute()方法,将报表的名称设置到session里,然后在监听类里在用session取到。
第一步,取到报表名称并写到session中:
String report = request.getParameter( “raq” );
session.setAttribute(“report”,report);
第二步,在监听类中取到名称
String reportName=request.getSession().getAttribute(“report”).toString();
这样在监听类里就能用这个报表的名称了。