几乎每个人做项目时都会有做到报表的实现。可是在报表制作的过程中在web层显示的话,我们似乎有许多的选择,但网上最近用得比较多的报表制作开源有:JasperReport,ireport,birt等。
本人就对JasperReport来说明自己开发过程中碰到的问题?
?
1、对于报表来说几乎是用户可以自己生成报表,不过JasperReport里的noxmldesign可以实现自动生成,不用借住ireport来做,不过这样子开发出来的报表几乎不可以修改,也就是用户可以自己调整的方式来做。
?
2、如果用到ireport工具来开发报表的话,则开发者已为这些报表定好格式,用户所看到的这些报表也是不可变更的,因此这里也有这个不好的地方。
?
3、用JasperReport来开发报表,可以很好的来导出为用户自己想导出的格式,如:excel,rtf,word,jxl,pdf,csv等,但似乎里面对打印则不是一个很好的解决方法,实现打印时,用户只能调用服务器上的打印机来来打印而不可以用客户端的打印机来打印报表,而是要通过applet来实现打印的功能。
?
不过最重要的一点则是用户可以像在ireport来设计自己喜欢的格式报表的话,不知道这点可不可以整合到web方式上的实现。
?
如果有用户能解决上面的问题,并有好的方法和意见,在这共同和大家一起来讨论,共同学习!
1 楼
coolyzg
2006-12-11
引用
3、用JasperReport来开发报表,可以很好的来导出为用户自己想导出的格式,如:excel,rtf,word,jxl,pdf,csv等,但似乎里面对打印则不是一个很好的解决方法,实现打印时,用户只能调用服务器上的打印机来来打印而不可以用客户端的打印机来打印报表,而是要通过applet来实现打印的功能。
同感,但一直没找到好的实现方法,楼主可否share一下,谢了先
2 楼
ibmsoft
2007-01-09
我现在遇到一个问题
用Ireport设计好,预览是好的
但是打印的时候最左边的数据打印不出来!
用Ireport设计好,预览是好的
但是打印的时候最左边的数据打印不出来!
3 楼
aardvark
2007-01-10
<br/>
<strong>axiang_2898 写道:</strong><br/>
<div class='quote_div'>3、用<font><font color='#0000ff'><strong>JasperReport</strong></font>来开发报表,可以很好的来导出为用户自己想导出的格式,如:<font color='#0000ff'><strong>excel,rtf,word,jxl,pdf,csv</strong></font>等,但似乎里面对打印则不是一个很好的解决方法,实现打印时,用户只能调用服务器上的打印机来来打印而不可以用客户端的打印机来打印报表,而是要通过<font color='#0000ff'><strong>applet</strong></font>来实现打印的功能。</font>
<p>?</p>
</div>
not really. 可以生成pdf传给客户端打印<br/>
<br/>
<strong>axiang_2898 写道:</strong><br/>
<div class='quote_div'>3、用<font><font color='#0000ff'><strong>JasperReport</strong></font>来开发报表,可以很好的来导出为用户自己想导出的格式,如:<font color='#0000ff'><strong>excel,rtf,word,jxl,pdf,csv</strong></font>等,但似乎里面对打印则不是一个很好的解决方法,实现打印时,用户只能调用服务器上的打印机来来打印而不可以用客户端的打印机来打印报表,而是要通过<font color='#0000ff'><strong>applet</strong></font>来实现打印的功能。</font>
<p>?</p>
</div>
not really. 可以生成pdf传给客户端打印<br/>
<br/>
4 楼
giscat
2007-01-10
报表是个老大难问题
涉及到这方面需求时要慎重
尽量简化弱化需求,凡事都是有得商量
其他的需求如:自定义,流程等都要慎重,
考虑再考虑,商量再商量
如果是自己开发,上面这些需求都要慎重
涉及到这方面需求时要慎重
尽量简化弱化需求,凡事都是有得商量
其他的需求如:自定义,流程等都要慎重,
考虑再考虑,商量再商量
如果是自己开发,上面这些需求都要慎重
5 楼
axiang_2898
2007-01-10
ibmsoft 写道
我现在遇到一个问题
用Ireport设计好,预览是好的
但是打印的时候最左边的数据打印不出来!
用Ireport设计好,预览是好的
但是打印的时候最左边的数据打印不出来!
那是你设置的边界可能越界了,或许是你设置了打印机打印的设置!
6 楼
ibmsoft
2007-01-10
axiang_2898 写道
ibmsoft 写道
我现在遇到一个问题
用Ireport设计好,预览是好的
但是打印的时候最左边的数据打印不出来!
用Ireport设计好,预览是好的
但是打印的时候最左边的数据打印不出来!
那是你设置的边界可能越界了,或许是你设置了打印机打印的设置!
请问如何设置打印的边界。我导出成RTF,打印的时候提示
第一页的页边距设于可打印区域之外。不知道在JRxml文件中需要修改哪些地方
7 楼
axiang_2898
2007-01-10
ibmsoft 写道
axiang_2898 写道
ibmsoft 写道
我现在遇到一个问题
用Ireport设计好,预览是好的
但是打印的时候最左边的数据打印不出来!
用Ireport设计好,预览是好的
但是打印的时候最左边的数据打印不出来!
那是你设置的边界可能越界了,或许是你设置了打印机打印的设置!
请问如何设置打印的边界。我导出成RTF,打印的时候提示
第一页的页边距设于可打印区域之外。不知道在JRxml文件中需要修改哪些地方
jasperDesign.setLeftMargin(40);
jasperDesign.setRightMargin(40);
jasperDesign.setTopMargin(50);
jasperDesign.setBottomMargin(50);
上边四个方法是在设计报表时的页面边距!一般RTF的文件如上设置,我想打印出来的文件可以全部显示的!
8 楼
boogie
2007-01-10
通过applet来实现打印功能是在浏览器里实现直接打印的最佳方案,
难道你想让服务器端调用客户端打印机打印不成?!
只不过要在APPLET里调用客户端打印机会有个安全问题要解决,否则打印时会报错,可以采用对APPLET所在的包(jasperreports-1.2.8-applet.jar)进行数字签名解决!
难道你想让服务器端调用客户端打印机打印不成?!
只不过要在APPLET里调用客户端打印机会有个安全问题要解决,否则打印时会报错,可以采用对APPLET所在的包(jasperreports-1.2.8-applet.jar)进行数字签名解决!
9 楼
newman
2007-01-10
java开源的report工具都有诸多缺憾,以前用过crystal report,怎一个爽字了得,可惜就是收钱:(。国内也有一些报表控件,其实选择这些国内便宜的商业控件也是一个很好的选择,还可以支持国货,呵呵。另外一个选择就是成立一个国内开源的报表tool,以其受制于老外或者钱,不如自己动手,丰衣足食,问论坛间,谁可掌旗?
10 楼
ibmsoft
2007-01-10
axiang_2898 写道
ibmsoft 写道
axiang_2898 写道
ibmsoft 写道
我现在遇到一个问题
用Ireport设计好,预览是好的
但是打印的时候最左边的数据打印不出来!
用Ireport设计好,预览是好的
但是打印的时候最左边的数据打印不出来!
那是你设置的边界可能越界了,或许是你设置了打印机打印的设置!
请问如何设置打印的边界。我导出成RTF,打印的时候提示
第一页的页边距设于可打印区域之外。不知道在JRxml文件中需要修改哪些地方
jasperDesign.setLeftMargin(40);
jasperDesign.setRightMargin(40);
jasperDesign.setTopMargin(50);
jasperDesign.setBottomMargin(50);
上边四个方法是在设计报表时的页面边距!一般RTF的文件如上设置,我想打印出来的文件可以全部显示的!
上面的四个设置在xml中已经有了定义。
顺便说一下,我用的是V1.3
11 楼
axiang_2898
2007-01-10
newman 写道
java开源的report工具都有诸多缺憾,以前用过crystal report,怎一个爽字了得,可惜就是收钱:(。国内也有一些报表控件,其实选择这些国内便宜的商业控件也是一个很好的选择,还可以支持国货,呵呵。另外一个选择就是成立一个国内开源的报表tool,以其受制于老外或者钱,不如自己动手,丰衣足食,问论坛间,谁可掌旗?
这点当然可以,只是国内的开源还不是很完善,有待完善之时,我们便可用之!
12 楼
stamen
2007-01-10
我一直用华表,感觉不错。原来要钱,按Key卖,一个Key 1k,后来给破了,破解不难。
13 楼
boogie
2007-01-11
stamen 写道
我一直用华表,感觉不错。原来要钱,按Key卖,一个Key 1k,后来给破了,破解不难。
你不尊重别人的劳动,别人也不会尊重你的劳动!