上两周,客户需要给系统中的几个模块添加excel文件导出功能。头让用ireport做。刚开始没有一点头绪,后来,头绪理出来了。但是这个过程中没人带,所以自己发现了一些问题。大家可以借鉴,以后的我也得记住:

1、使用Javabean做数据源时,不需要一个一个输入属性的。我和我一个同事分工做的,他做几张,我做几张。后来他有事情,测试出来的bug都是我改的,改bug的时候,我发现他的属性栏里就只有他页面上出现的那几个。问了一下,才知道他是一个一个敲进去的。额的神呢,我觉得他比我耐心强大太多了。这少了还好,要是弄上几十个,上百个字段还不死人的呀。

2、在拖那个textfield的时候,一定要细心,header和details之间有一条线的,上下的textfield都和这条线要对齐。在拖得时候,到了位置后,会出现一条蓝色的细线,告诉你已经脱好了。后面的继续对着前面这个就好了。否则,会出现的问题很扯淡的,就像我第一次提交的代码,数据全部正确,但是,有的数据占了两行,有的占了三行,最后导致本来只有50条数据,导出来excel文件中的行数提示竟然有170多行。很悲剧的。

3、打开ireport的模版后,那个白色的画布(暂且称之为画布,我不知道那个专业点应该叫什么),上下是可以直接用鼠标拖动改变大小的,可是左右使劲拖也不会动。有时候会因为字段过多,需要把那个白色的东西放宽点。虽然ireport提供了自动折行的功能,但是,试想下,一行数字(譬如说商户代码之类的,可能会有20个字符的长度),折成两行,很难看的。所以,把那个宽度放宽,还是很有必要的。这个时候可以选中整个报表,然后在属性面板中对width属性的值进行编辑,不过得自己多试试的。

PS:公司的电脑是xp系统的,我周末的时候用我的ubuntu系统去做的时候,那个ireport打开后,所有的textfield都是空的,看不到值,非常奔溃的,而且,在我自认为对齐了之后,到了公司发现,比我以前的还乱。。。

by ice