`
azrael6619
  • 浏览: 579960 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

ireport 的一些技巧

F# 
阅读更多

首先ireport中大小写问题:

1、parameter中如果小写,引用也小写

2、$F{},一般都大写

3、子报表中引用父报表中查询出来的值时,只需要小写即可,即在子报表的parameter中只需要小写

一、iReport 中获取系统当前时间

1、选择 TextField 类型为 java.util.Date,选择TextField的Expression Class(类型)为 java.util.Date

2、在 pattern 中选择时间格式

3、在 TextField Expression 中写 java.util.Calendar.getInstance().getTime()


二、避免为空

方法一、在属性选项中找到 blank when null 即可

方法二、$F{ABB614}?$F{ABB614}:""

 

三、设置时间格式

方法一、可以使用内嵌函数截取字符串来显示

1、利用substring来截取 (针对String类型)

$F{AAE036}?(($F{AAE036}.toString()).substring(0,4)+"年"+($F{AAE036}.toString()).substring(4,6)+"月"+($F{AAE036}.toString()).substring(6,8)+"日"):""

2、利用内置的函数来取 (针对date类型)

"日期"+($F{ABB017}?String.valueOf($F{ABB017}.getYear()+1900)+"年"+String.valueOf($F{ABB017}.getMonth()+1)+"月"+$F{ABB017}.getDate():"")+"日

方法二、设置 Exception class 为date类型,然后 pattern 中设置时间格式,可以自己写,例如××××年××月××日,但是要注意,如果为空无法用 $F{ABB614}?$F{ABB614}:"",只能使用 blank when null 这种方法


四、在ireport中使用html中的标签

例如:<br> 

1、找到属性面板中的 markup 选择为html

2、在需要的地方加入<br>


五、使某个字段中的数据在特定条件下才打印出来

    通过设置字段的 PrintWhenExpression ,我们可以限定只有在某些特定的条件下字段值才会被打印出来,在PrintWhenExpression 中需要设置Boolean 型的表达式,如:new java.lang.Boolean($F{type}.trim().equals("mod_cook"))


六、嵌套子报表

1、在面板属性中找到 Subreport ,然后拖进你要放入的地方,放开鼠标后,会有一个新建报表。新建完报表之后会有个名为SUBREPORT_DIR 的Parameter,string类型,他会有个默认路径,指的是子报表的路径。由于子报表往往有多条数据,故最好单独放在一个detail中(例如:查询出来有多条数据,那么会循环显示在detail中)。

2、如果子报表中需要传入数据,那么就先点中子报表,然后在属性栏(不是参数里)中找到“ parameters ”,新建一个,例如:

     name为abz050  , Expression 为$F{ABZ050},因为这里的值是父报表查询的出来之后的值,所以不是用Parameter,而是Field。

3、在子报表中引用值,首先在子报表中定义一个变量 Parameter ,然后引用即可。

那为什么能找到呢?

因为:你在创建子报表的时候,也会自动创建一个 Parameter ,名称默认为 SUBREPORT_DIR ,它里面有个默认路径(新传入的路径会覆盖该默认路径)。

同时,可以点中子报表查看他的属性,里面有个 Subreport Exception 的值为 $P{SUBREPORT_DIR} + "子报表名称.jasper" ,这样系统就能找到了。当然系统还会自动配置一些其他子报表属性,具体的自己新建一个看看吧。


七、自动换行

    如果不处理一下,有些字段的内容太长了就会显示不全。选中该字段,右击 -> 属性,在 Text Field Stretch with overflow 勾上。

    同时把该行所有的字段选上,右击 -> 属性,在 Common Stretch Type 选择 Relative to tallest object。


八、内嵌函数的使用

举例:($F{ABB617}).toString()).substring(0,4)+"年"          把ABB617(Date类型)先转化成String然后截取年

ireport中使用内嵌函数只要在字段上看看他有哪些方法,然后直接使用即可。


九、高度根据内容自动变高

1、选中主键,在属性中找到 Stretch With Overflow 并选中。并把他单独放在一个 Detial或者其他 里面即可。
2、还有一个属性叫
Stretch type ,默认的值是No Stretch,可以改成Relative To Band Height。

第二个步骤我个人认为可做可不做。

     当然第二个步骤的功能在做表格的时候很有用,例如:表格是2列,那么两边的数据肯定不一样,或者是左边就是静态的,那么如果不选择这个属性,你就会发现,右边的数据很多的时候会扩充,但是左边不会,这个时候,我们就可以设置该属性,并把它们放到一个单独Detial或者其他容器中,那样 左右两边 就会等高了

 


十、设置共几页,第几页

$V{PAGE_NUMBER} 表示当前是第几页 ,在text field 的 选项evaluation time选report是共几页,now表是当前页。页码可在ireport里直接设置。  “共几页 第几页”

我是写在page footer 中。

 


分享到:
评论
5 楼 Santer.Zhang 2015-05-08  
你好,我用的是ireport4.5.1,子表一直无法显示
4 楼 Ginger90 2015-01-26  
ireport实用性上没有帆软报表好用
3 楼 hancunyufornet 2014-02-27  
学习中  
2 楼 mj 2013-09-18  
1 楼 weiliang 2013-08-15  
非常感谢,帮了我大忙

相关推荐

    ireport固定表头隐藏列

    在IT行业中,报表设计是数据分析和...熟练掌握这些技巧,将有助于提升报表的用户体验,使数据展示更加直观和高效。通过提供的示例代码和ireport项目,可以进一步学习并实践这些高级用法,从而优化报表设计和呈现效果。

    ireport安装包,需事先安装好jdk

    5. **使用技巧**:IReport提供了丰富的报表设计元素,包括文本、图片、图表、表格等。熟练掌握这些元素的使用,以及如何通过查询语句从数据源获取数据,是设计复杂报表的关键。 6. **版本兼容性**:确保IReport版本...

    ireport源代码 iReport-3.0.0-src.zip

    通过分析和学习iReport-3.0.0的源代码,开发者可以提升Java GUI编程技巧,了解报表设计工具的实现原理,同时也可以深入理解JasperReports的工作方式。这对于定制报表系统或者开发类似的工具具有极大的帮助。此外,...

    iReport 1.2.5免安装版本下载

    5. **使用技巧**:在使用iReport时,用户可以利用其强大的预览功能实时查看报表效果,调整设计。同时,版本控制和备份也很重要,因为源文件(jrxml)的修改可能导致需要重新编译.jasper文件。对于复杂的报表,合理...

    IReport报表制作详解

    本文将深入探讨IReport的使用方法和技巧,帮助你快速上手并精通报表设计。 一、IReport简介 IReport是基于Java的,它支持XML格式的JRXML报表定义,这种格式可以被JasperReports引擎解析并生成各种输出格式,如PDF...

    ireport导出pdf和word文档实例

    通过以上的步骤和技巧,你可以使用`iReport`有效地创建和导出PDF及Word文档,满足不同场景的需求。尽管过程中可能遇到一些挑战,但只要掌握了基本操作和解决方法,就能够高效地完成任务。在实际工作中,不断实践和...

    ireport中文帮助文档

    通过深入学习《iReport中文帮助文档》,开发者能够掌握报表设计的基本技巧,从而在实际项目中灵活运用iReport创建出满足需求的复杂报表。文档通常会包含详细的操作步骤、示例和常见问题解答,对于初学者尤其具有指导...

    IREPORT配置与学习

    - 提供的文件"Jasperreport+ireport学习笔记(1-4).pdf"是逐步教程,覆盖了IREPORT的基础知识和高级技巧,建议逐个阅读,加深理解。 - "Ireport配置说明.pdf"详细解释了IREPORT的配置过程,对初学者尤其有帮助。 ...

    iReport报表开发指南

    本指南将深入探讨如何利用iReport进行报表开发,旨在帮助初学者和有经验的开发者更好地理解和掌握报表设计技巧。 首先,我们需要了解iReport的基本界面和布局。iReport的界面分为多个区域,包括设计区、预览区、...

    Ireport教程(共三个)

    通过这个教程,初学者可以快速理解Ireport的基本工作流程,并熟练掌握报表设计的基本技巧。 最后,《jasperreport+ireport开发java报表入门级教程》将深入到JasperReport的使用,JasperReport是一个强大的报表引擎...

    iReport-1.1.0.zip

    《IReport 1.1.0:老版本报表设计的经典回顾》 ...对于那些还在使用老版本软件的企业,或者需要处理遗留项目的开发者来说,深入理解和掌握IReport 1.1.0的使用技巧,将极大地提升工作效率,保证项目的顺利进行。

    JasperReport + IReport 开发文档

    2. **这几天在弄ireport.doc**:可能是个人的学习笔记,记录了作者使用IReport时的经验和技巧。 3. **JasperReport初级教程(2_0_3)图文详解_绝对原创 - 川江号子_cn - CSDN博客.mht**:针对JasperReport的基础教程,...

    ireport交叉报表自定义排序

    在编写SQL查询时,可以利用一些技巧来控制数据的返回顺序。例如,如果希望将“合计”行放在最后,则可以在查询语句中添加一个额外的列,用于表示原始行的显示顺序,并且对这个新增的列进行排序。具体操作步骤如下: ...

    iReport-5.1.0-windows-installer.exe

    通过上述内容,我们对iReport 5.1版本有了较为全面的了解,无论是从基本概念、安装配置还是具体使用技巧方面,都有所涉猎。这对于初学者来说是一个很好的起点,而对于有一定基础的用户而言,则可以在这些基础上...

    ireport帮助文档

    根据提供的信息,我们可以...通过以上介绍,我们不仅了解了IReport的基本概念和功能,还掌握了学习和使用IReport的一些方法和技巧。对于希望利用IReport提升报表设计能力的技术人员来说,这些知识点都是非常有价值的。

    ireport5 实例开发

    同时,理解SQLServer2005的特性和优化技巧也非常重要,比如索引的创建、性能调优等,这对于高效地获取和处理数据至关重要。 总之,ireport5结合SQLServer2005的实例开发涉及到报表设计、数据库连接、数据查询、结果...

    IReport中文文档说明

    这部分内容深入解析了这些关键元素的工作原理和使用技巧,帮助用户更有效地利用它们来构建复杂的报表逻辑。 总的来说,IReport中文文档是一份全面且实用的指南,无论是初学者还是经验丰富的开发者,都能从中找到所...

    iReport与JasperReport简介

    "iReport中文详细教程.pdf"是一个很好的起点,它涵盖了iReport的基础知识和进阶技巧,可以帮助读者快速上手。 总的来说,iReport和JasperReport是Java开发者在报表领域的得力助手。通过熟练掌握这两个工具,可以...

    iReport 3.6.7 学习笔记

    本学习笔记主要围绕iReport 3.6.7版本展开,探讨其核心功能与使用技巧。 一、iReport简介 iReport是一款基于JasperReports的开源报表设计工具,支持创建复杂的报告布局,包括表格、图表、文本、图像等多种元素。...

Global site tag (gtag.js) - Google Analytics