首先,我是使用 jasper ireport 的初学者,当用户在 jtextfield 中输入值,然后按下按钮时,我尝试生成 jasper ireport,它应该生成 PDF 格式的发票报告。这是我第一次将 java netbeans 与 jasper ireport 一起使用。
那么,当用户将其值放入 jtextfield 然后按下按钮时,如何生成 ireport,然后使用 java netbeans 生成 PDF 格式的发票报告?
我在 ireport 4.7.1 中创建了一张发票,并发布了下面与发票有关的打印按钮的代码,但是当我点击该按钮时,它会加载我的项目中的所有发票。
String invreport = "C:\\Users\\Silent Heart\\Documents\\NetBeansProjects\\SIS\\src\\reports\\invoice.jrxml";
JasperReport jpr = JasperCompileManager.compileReport(invreport);
JasperPrint jpp = JasperFillManager.fillReport(jpr, null,conn);
JasperViewer.viewReport(jpp);
这是正在发生的事情的快照:
最佳答案
我解决了我的问题。
首先在 jasper ireport 参数区域中添加 "testid "
等参数,然后在 jasper ireport 中的数据库查询中添加此参数,如
"select * from test where id = $P{testid}"
然后为按钮添加以下代码:
// parameter
String para = txt1.getText();
//load report location
FileInputStream fis = new FileInputStream("\\src\\test\\report1.jrxml");
BufferedInputStream bufferedInputStream = new BufferedInputStream(fis);
//set parameters
Map map = new HashMap();
map.put("testid", para);
//compile report
JasperReport jasperReport = (JasperReport) JasperCompileManager.compileReport(bufferedInputStream);
JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport, map, conn);
//view report to UI
JasperViewer.viewReport(jasperPrint, false);
对于 PDF 使用“JasperExportManager”
希望它对你有用。
谢谢..
关于java - 当输入值jtextfield然后点击按钮java时如何生成ireport,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13610890/