我在ireport中创建了jasper报告。我试图使用jasper服务器执行它。我想通过单个输入控件传递两个输入参数来报告。此输入控件是下拉列表。它有文字和Id。我想传递id和文本来报告。有什么方法可以实现这个吗?
答案 0 :(得分:0)
为了使用输入参数创建报表,您必须通过HashMap传递它们。这是您放置任意数量的值并将其传递给JasperReport的地方:
HashMap<String, Object> map = new HashMap<String, Object>();
map.put("shopName", shopName);
map.put("month", Integer.parseInt(jComboBox2.getSelectedItem().toString()));
map.put("Value2", jComboBox2.getSelectedIndex());
URL reportFileURL = getClass().getResource("../ireports/MyReport.jrxml");
File reportFile = new File(reportFileURL.toURI());
JasperDesign jasperDesign = JRXmlLoader.load(reportFile);
JasperReport jasperReport = JasperCompileManager.compileReport(jasperDesign);
JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport, map, con);