如何添加JasperReports页面预览元素

时间:2013-11-25 10:22:40

标签: java jasper-reports

我希望你能帮助我。谷歌还没能帮到我。好吧,实际上我甚至不知道该搜索到底是什么。

我尝试通过JasperReports和Java创建一个文件(在本例中为.xls)。文件本身已填充,格式与.jasper文件相同。我现在的问题是将设计分为表格视图和印刷版本。在观看工作表时,我只想看到类似于CSV文件的数据和标题。

+--------+----------------------+-------+--------+
| Amount | Name                 | each  | total  |
+--------+----------------------+-------+--------+
| 2      | iPhone 5s            | $ 699 | $ 1398 |
| 1      | Samsung Galaxy S4    | $ 499 | $ 499  |
| 4      | USB Connection cable | $ 5   | $ 20   |
+--------+----------------------+-------+--------+

打印时(甚至打开页面预览时)我想添加页码和一些标题信息,比如报表名称或内容(我想自己定义)。

Date: 11/25/2013                                  reference Number: 0X6584A8BFC

                                DELIVERY

             +--------+----------------------+-------+--------+
             | Amount | Name                 | each  | total  |
             +--------+----------------------+-------+--------+
             | 2      | iPhone 5s            | $ 699 | $ 1398 |
             | 1      | Samsung Galaxy S4    | $ 499 | $ 499  |
             | 4      | USB Connection cable | $ 5   | $ 20   |
             +--------+----------------------+-------+--------+

                               PAGE 1/2

如何告诉jasper添加这些信息?你能给我一些关键词吗?反正有可能吗?

感谢您的帮助

Zota

- 编辑

我的任务是找到一种更稳定的创建文档的方法。目前我们正在使用Open Office服务器将数据转换为ods,odt等,然后再转换为pdf xls等。文档必须与之前完全相同。我之前搜索过它是如何解决的,并在文档的页眉和页脚区域内找到了数据。

在LibreOffice Calc中 - >打开文档 - >编辑 - >标题&页脚......

在那里,您可以添加在工作表上但在打印文档上不可见的数据。我知道,在Jasper中你有乐队但是在向页面带添加数据时,它仍然会在页面内打印。如何告诉jasper将这些信息放入标题部分而不是表单内?

2 个答案:

答案 0 :(得分:0)

要将数据添加到我(您的)文件的页眉/页脚部分,您可以使用

net.sf.jasperreports.export.xls.sheet.footer.center
net.sf.jasperreports.export.xls.sheet.footer.left
net.sf.jasperreports.export.xls.sheet.footer.right
net.sf.jasperreports.export.xls.sheet.header.center
net.sf.jasperreports.export.xls.sheet.header.left
net.sf.jasperreports.export.xls.sheet.header.right

作为属性键。列出了here可用的属性。通过这些属性,我能够将数据添加到打印版本上显示的文档中,但在查看工作表时却无法。

感谢所有试图帮助的人=)

答案 1 :(得分:0)

只是为上面的答案添加更多细节: 如果要为这些参数分配动态内容,只需使用java代码中的以下内容:

jasperPrint.getPropertiesMap().setProperty("net.sf.jasperreports.export.xls.sheet.footer.left", "the dynamic text");

从这里提到:http://community.jaspersoft.com/jasperreports-library/issues/5193

我花了很长时间才发现这一点。可能对别人有帮助。