Tag: jasper reports

JasperReport大小限制

有没有办法设置JasperReport的大小限制? 我们刚看了一下WebSphere 6.1 Heapdump,有人试图创建一个报告,堆中有1.5GB的内存。 它让我们的Websphere服务器瘫痪了。 谢谢,T

设置PDF导出器的输出文件名

我使用的是JasperReports 5.6 我使用PDFCreator生成pdf。 我的pdf生成成功,但我无法为该PDF文件设置名称。 PrintRequestAttributeSet printRequestAttributeSet = new HashPrintRequestAttributeSet(); printRequestAttributeSet.add(MediaSizeName.ISO_A4); PrintServiceAttributeSet printServiceAttributeSet = new HashPrintServiceAttributeSet(); printServiceAttributeSet.add(new PrinterName(“PDFCreator”, null)); JRPrintServiceExporter exporter = new JRPrintServiceExporter(); exporter.setExporterInput(new SimpleExporterInput(tempFileName)); SimplePrintServiceExporterConfiguration configuration = new SimplePrintServiceExporterConfiguration(); configuration.setPrintRequestAttributeSet(printRequestAttributeSet); configuration.setPrintServiceAttributeSet(printServiceAttributeSet); configuration.setDisplayPageDialog(false); configuration.setDisplayPrintDialog(false); exporter.setConfiguration(configuration); exporter.exportReport(); 我的pdf名称是使用该PDFCreator工具设置的 我想将名称传递给该pdf文件。 自exporter.setParameter(JRExporterParameter.OUTPUT_FILE_NAME, “d:/adc.pdf”); 方法现已弃用。 请告诉我如何设置该文件名的解决方案

如何删除iReport中某个类别上的空格?

我有一个图表,每个类别值有两个条形。 我们如何在类别值上删除bar之间的sapce。 不应删除具有不同类别值的条之间的空格。

JasperReports类路径

我想在我的NetBeans swing项目中包含.jrxml文件。 我使用NetBeans 7.0.1 。 我在源代码包中创建了一个名为“rep”的包,并创建了一个名为“rp.jrxml”的简单.jrxml文件。 我在NetBeans中安装了iReport插件。 当我设置外部.jrxml文件时,会显示(“D:/MyReports/firstreport.jrxml”),但是当我设置NetBeans包路径时,它没有显示。 这是我的代码。 try { String reportSource=”/rep/rp.jrxml”; //and also “rep/rp.jrxml” is used.no result. Map params = new HashMap(); JasperReport jasperReport = JasperCompileManager.compileReport(reportSource); JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport, params, new JREmptyDataSource()); JasperViewer.viewReport(jasperPrint, false); } catch (Exception e) {e.printStackTrace(); } 然后给出以下错误; net.sf.jasperreports.engine.JRException: java.io.FileNotFoundException: rep\rp.jrxml (The system cannot find the path specified) 如何在我的NetBeans项目中保留jrxml文件并在项目中使用jrxml文件?

使用Jasper和.xlsx的内容消息不可读

我有以下代码将xlsx导出到流。 它工作,我得到xlsx文件,但它说excel在“…”中发现不可读的内容,并询问我是否要恢复工作簿的内容。 当我这样做时,我会在正确的位置使用正确的数据获取xlsx文件,如我所愿。 如何避免或抑制此错误? try { ServletOutputStream servletOutputStream = resp.getOutputStream(); JasperReport jasperReport = JasperCompileManager .compileReport(path + “Template/Instructions_with_CHGFOX_Template/testeXlsx2.jrxml”); JasperPrint print = JasperFillManager.fillReport(jasperReport, parameters, new JRBeanCollectionDataSource(list)); JRXlsxExporter xlsxExporter = new JRXlsxExporter(); ByteArrayOutputStream outStream = new ByteArrayOutputStream(); xlsxExporter.setParameter(JRExporterParameter.JASPER_PRINT, print); xlsxExporter.setParameter(JRExporterParameter.OUTPUT_FILE_NAME, title + “.xlsx”); xlsxExporter.setParameter(JRExporterParameter.OUTPUT_STREAM, servletOutputStream); xlsxExporter.setParameter(JRExporterParameter.OUTPUT_STREAM, outStream); xlsxExporter.exportReport(); resp.setContentType(“application/vnd.openxmlformats-officedocument.spreadsheetml.sheet”); resp.setHeader(“Content-Disposition”, “attachment; filename=” + title + “.xlsx”); servletOutputStream.write(outStream.toByteArray()); resp.getOutputStream().write(outStream.toByteArray()); […]

JasperReports:根据组计算页数

问题是这样的。 页面上显示的报告页码不应取决于当前,而应取决于组页面。 让我解释: 我有一个包含2个组的报告,每组有4页,每组有两页,我需要做的是以下内容: group 1 page 1: should be: 1/2 -> current: 1/4 group 1 page 2: should be: 2/2 -> current: 2/4 group 1 page 1: should be: 1/2 -> current: 3/4 group 1 page 2: should be: 2/2 -> current: 4/4 有什么办法可以做到这一点…… PS。 不允许使用黑魔法,我查看了JasperReports中定义的变量,但它们都不适合配置文件:)

无法在JasperReports中使用子报表

我创建Jasper报告的java代码是 JasperReport report = JasperCompileManager.compileReport(jrxml); JasperPrint print = JasperFillManager.fillReport(report,parameters, conn); JasperExportManager.exportReportToPdfFile(print,filename); 当我在不使用子报告的情况下创建报告时,它成功运行。 当我插入任何子报表时,我的代码失败,exception说 原因:null MESSAGEnull LOCAL MESSAGEnull 请告诉我如果需要更改我的Java代码? 我已经在某个地方读过这条线来使用子报告。 JasperReport subreport = (JasperReport)JRLoader.loadObjectFromLocation(“ProductReport.jasper”); 我是否还需要使用此代码? 我是一名PHP开发人员。 不太了解Java。 我使用了Jasper报告,因为我们需要创建大型PDF。 这个工具给了我们很多帮助。 但现在我遇到了一个新报告,我需要使用子报表。

如何使用PHP中的参数实例化/调用java类?

例如,我有java类JRXlsExporter,如果我从java实例化java我的代码是: JRXlsExporter myObject= new JRXlsExporter(); 从PHP成为: $myObject = new Java(“net.sf.jasperreports.engine.export.JRXlsExporter”); 它工作,但如果我有带参数的java类,例如: JRXlsExporter myObject= new JRXlsExporter(param1,param2); 如何从PHP实例化/调用该java类?

在iReport中将Double格式化为字符串

我正在做一个报告,我需要将4个变量合二为一。 如果我单独处理变量,我可以毫无问题地格式化它们。 但是当我将它们合并为一个String时,double值为0.0而不是0.00 我怎么能把它作为原件,0.00? 现在的代码如下所示: $F{someDoubleField} + “a string” + $F{anotherDoubleField} + “another string” 它打印: 0.0 a string 0.0 another string 代替: 0.00 a string 0.00 another string 请记住,iReport使用Java,所以也许,Java代码可以帮助我。

Jasper Print – Java堆空间存储器

我使用Jasper Reports生成报告。 但是我从数据库获得了大量数据。 在执行Jasper打印以填充报表数据时,它会占用大量内存并导致Java堆空间内存问题。 JasperPrint jasperPrint = JasperFillManager.fillReport( jasperReport, params, dataSource); 这条线需要花费很多时间并且会出错。 请帮帮我,如何摆脱这个问题。 Stackrace : java.lang.OutOfMemoryError: Java heap space at net.sf.jasperreports.engine.fill.JRFillTextField.fill(JRFillTextField.java:691) at net.sf.jasperreports.engine.fill.JRFillElementContainer.fillElements(JRFillElementContainer.java:570) at net.sf.jasperreports.engine.fill.JRFillBand.fill(JRFillBand.java:390) at net.sf.jasperreports.engine.fill.JRFillBand.fill(JRFillBand.java:351) at net.sf.jasperreports.engine.fill.JRVerticalFiller.fillColumnBand(JRVerticalFiller.java:2039) at net.sf.jasperreports.engine.fill.JRVerticalFiller.fillDetail(JRVerticalFiller.java:771) at net.sf.jasperreports.engine.fill.JRVerticalFiller.fillReportContent(JRVerticalFiller.java:301) at net.sf.jasperreports.engine.fill.JRVerticalFiller.fillReport(JRVerticalFiller.java:148) at net.sf.jasperreports.engine.fill.JRBaseFiller.fill(JRBaseFiller.java:909) at net.sf.jasperreports.engine.fill.JRBaseFiller.fill(JRBaseFiller.java:841) at net.sf.jasperreports.engine.fill.JRFiller.fill(JRFiller.java:88) at net.sf.jasperreports.engine.JasperFillManager.fill(JasperFillManager.java:653) at net.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java:969) at com.jci.eprt.web.controller.report.ReportController.previewEngineeringReport(ReportController.java:250) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown […]