Ireport 子报表找不到路径? 朋友们帮忙看看.!
我在JavaProject项目的com.rs.report目录下有4个报表文件,1个主的,3个子报表.然后。我分别在Ireport工具中分别测试了4个报表都能正常运行。我...
我在JavaProject项目的com.rs.report目录下有4个报表文件,1个主的,3个子报表.
然后。我分别在Ireport工具中分别测试了4个报表都能正常运行。
我也设置了report的 subreport expression 属性,如:$P{SUBREPORT_DIR} + "sub.jasper",$P{SUBREPORT_DIR} + "test.jasper" ,SUBREPORT_DIR是一个参数,这里用的是相对路径,在代码中实现子报表时。
在Java代码中。怎么传值:
public Resource getPdfResource() {
HashMap map = new HashMap();
map.put("FormID", String.valueOf(this.selectedAppraisalForm.getId()));
Connection connection = this.getConnections();
try {
ReportGenerated report=new generatedImpl();
//请问path: 这里是传什么值。是主报表和子报表的报表的路径吗?,
还是传主报表的名称。 这里有点疑问.?
JasperPrint print = JasperFillManager.fillReport(path, map, connection);
JasperExportManager.exportReportToPdfStream(print, out);
} catch (Exception e1) {
// TODO Auto-generated catch block
logger.debug("report.AppraisalFormReportControllerImpl:",e1);
}
}
我还是第一次做这种报表。
希望各位朋友给点帮助。 请说的详细点。谢谢.!
现在公司要做用过Ireport工具生成PDF报表。
~~~~~~~~~~~~~~~~~~~~~~~~很急啊!!!!!!!!!!!!!!!!! 展开
然后。我分别在Ireport工具中分别测试了4个报表都能正常运行。
我也设置了report的 subreport expression 属性,如:$P{SUBREPORT_DIR} + "sub.jasper",$P{SUBREPORT_DIR} + "test.jasper" ,SUBREPORT_DIR是一个参数,这里用的是相对路径,在代码中实现子报表时。
在Java代码中。怎么传值:
public Resource getPdfResource() {
HashMap map = new HashMap();
map.put("FormID", String.valueOf(this.selectedAppraisalForm.getId()));
Connection connection = this.getConnections();
try {
ReportGenerated report=new generatedImpl();
//请问path: 这里是传什么值。是主报表和子报表的报表的路径吗?,
还是传主报表的名称。 这里有点疑问.?
JasperPrint print = JasperFillManager.fillReport(path, map, connection);
JasperExportManager.exportReportToPdfStream(print, out);
} catch (Exception e1) {
// TODO Auto-generated catch block
logger.debug("report.AppraisalFormReportControllerImpl:",e1);
}
}
我还是第一次做这种报表。
希望各位朋友给点帮助。 请说的详细点。谢谢.!
现在公司要做用过Ireport工具生成PDF报表。
~~~~~~~~~~~~~~~~~~~~~~~~很急啊!!!!!!!!!!!!!!!!! 展开
展开全部
你的主报表肯定需要一些其他的参数把?例如Id
需要在主报表添加一个像Id这样的参数,名字就叫SUBREPORT_DIR,在你的JAVA程序通过HashMap向报表传值的时候,map.put("SUBREPORT_DIR",子报表目录);
path是主报表绝对路径,程序这样写你会更明白
File sourceFile = new File(sourceFileName);
JasperReport jasperReport = (JasperReport)JRLoader.loadObject(sourceFile);
JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport, map, connection);
需要在主报表添加一个像Id这样的参数,名字就叫SUBREPORT_DIR,在你的JAVA程序通过HashMap向报表传值的时候,map.put("SUBREPORT_DIR",子报表目录);
path是主报表绝对路径,程序这样写你会更明白
File sourceFile = new File(sourceFileName);
JasperReport jasperReport = (JasperReport)JRLoader.loadObject(sourceFile);
JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport, map, connection);
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询