日期:2014-05-16 浏览次数:20411 次
1,
String?printer_name=null;//定义一个全局参数
//以下代码是检测这个报表是否有相应的参数模板
String?paramFile?=?report.substring(0,iTmp)+"_arg.raq";
File?f=new?File(application.getRealPath(reportFileHome+?File.separator?+paramFile));
///
try?{
String?reportPath?=?request.getRealPath(reportFileHome+"/"+report);
ReportDefine?rd?=?(ReportDefine)ReportUtils.read(reportPath);
request.setAttribute("reportDefine",rd);
System.out.println(rd.getPrintSetup().getPaper());//当前报表纸张类型
System.out.println(rd.getPrintSetup().getPaperHeight());
System.out.println(rd.getPrintSetup().getPaperWidth());
?????System.out.println(reportPath);
if(rd.getPrintSetup().getPaperHeight()==279?&&?rd.getPrintSetup().getPaperWidth()==216){
?????printer_name="Microsoft?XPS?Document?Writer";?//当报表的高宽符合时指定打印机名称
}
}?catch?(Throwable?e)?{
?????e.printStackTrace();
}
----------------------------------------
2,
<report:html?name="report1"?reportFileName="<%=report%>"
funcBarLocation="both"
needPageMark="yes"
needImportExcel="yes,0"
printerName="<%=printer_name%>"//指定printerName的值
generateParamForm="no"
params="<%=param.toString()%>"
exceptionPage="/reportJsp/myError2.jsp"
appletJarName="runqianReport4Applet.jar,dmGraphApplet.jar,applet.jar"
/>