`
个人专属
  • 浏览: 66377 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

ireport $P{SUBREPORT_DIR}参数的使用【转】

 
阅读更多
ireport中提供了自带属性$P{SUBREPORT_DIR}当我们新建.jrxml文件时默认$P{SUBREPORT_DIR}="存放当前设计的.jrxml文件的文件夹绝对路径"
此时需注意应把$P{SUBREPORT_DIR}值设置为$P{SUBREPORT_DIR}="",这表示获得当前运行环境的.jrxml文件的上级文件绝对路径
如果不进行此设置则部署到运行环境时会以设计时的路径加载.jrxml文件,会报Could not load object from location:.jrxml错误
另外如果设计时用到多级子报表,则应当把顶级报表的$P{SUBREPORT_DIR}参数传给子报表,如果不进行此操作则第三级.jrxml文件不能被加载
Could not load object from location:.jrxml
在IReport中,主从报表完成制作后,在IReport中能够正常编译、运行及显示,但加入Java Web应该中时出现下列错误:
Could not load object from location : subunitlab.jasper,即主报表找不到子报表的模板(jasper)文件.
  主要原因:
  主报表找不到子报表的Jasper文件(深入分析)
  解决办法:
  在主报表中设置变量SUBREPORT_DIR(若不存在则新建),代表子报表模板文件的真识路径,设置子报表的属性Subreport Expression 的值为:$P{SUBREPORT_DIR}+"subreportname.jasper",通过程序动态设置SUBREPORT_DIR,使得主报表能够获得子报表模板文件的真识路径.
  步骤如下:
  1.设置主报表变量: SUBREPORT_DIR
   VeiwParameters选中SUBREPORT_DIR变量名Modify设置Default value Expression的值为:””;
     2.修改子报表属性
   在主报表中右击子报表,选择Subreport(other)选项,设置Subreport Expression的值为:$P{SUBREPORT_DIR}+"subreportname.jasper"
     3.在Action中动态获得子报表的真识路径,设置成SUBREPORT_DIR变量的值:param.setParameters("SUBREPORT_DIR",request.getRealPath("/Reports/")+"/");
另:对于多个子报表,做法类似,只需设置子报表属性即可(前提:所有子报表存放在同一路径下),若存放在不同的路径下, 需在主报表中建立多个表示子报表路径的变量,一一对应到各个子报表上,并通过程序一一设定其真识路径.
分享到:
评论
1 楼 java爱好者92 2015-01-23  
我参数使用一直搞不明白,后来实在用不了ireport就换帆软报表了

相关推荐

    ireport 多级报表 $P{SUBREPORT_DIR}参数的使用

    本文将深入探讨如何在iReport中利用$P{SUBREPORT_DIR}参数来实现多级报表的设计,并结合实际的jrxml文件示例,one.jrxml、two.jrxml和three.jrxml,进行详细讲解。 首先,了解$P{SUBREPORT_DIR}参数。在iReport中,...

    IREPORT中使用subreport实现单元格合并

    IREPORT中使用subreport实现单元格合并

    Ireport_platform9_lib.rar

    6. **Groovy和Beanshell**: iReport支持使用脚本语言进行动态计算和逻辑处理,Groovy和Beanshell库为此提供了支持。 7. **其他依赖**: 还包括了其他如JAXB、Log4j、Poi等库,分别用于XML绑定、日志记录和处理...

    ireport5.6+jasperreports_lib.zip

    标题中的"ireport5.6+jasperreports_lib.zip"指的是一个包含了iReport 5.6.0和JasperReports库的压缩文件。这个文件是为了帮助开发者进行报表设计和生成,特别是在进行版本升级时提供便利。iReport是一款强大的开源...

    Ireport 用子报表调用交叉报表

    在此例中,我们需要一个名为 `$P{SUBREPORT_DIR}` 的参数,用于指示子报表的位置。 - 在交叉报表中添加这个参数,即使它的值暂时未定义,以便后续步骤中删除。 3. **创建主报表**: - 创建一个新的主报表,添加所...

    iReport-User-Manual.rar_ireport_ireport user manual_ireport man

    7. **参数和变量**:解释如何定义和使用报表参数和变量,以及它们在动态数据处理中的作用。 8. **导出与打印**:手册会指导用户如何将设计好的报表导出为PDF、Excel、HTML等多种格式,以及如何设置打印选项。 9. *...

    JavaWeb_Ireport_Jasper_JavaBean_Mysql

    在本项目"JavaWeb_Ireport_Jasper_JavaBean_Mysql"中,开发者使用了这些技术来实现一个数据驱动的报表系统。 Ireport是一个流行的报表设计工具,它是JasperReports库的一部分,允许开发者通过直观的用户界面创建...

    Ireport3.0.rar_ireport

    ireport 3.0 中文教材,包含开源报表工具的使用,和开发指南

    iReport+Hibernate+SubReport

    【标题】"iReport+Hibernate+SubReport"的实践指南 在软件开发中,报表的生成是不可或缺的一部分,尤其在企业级应用中,数据分析和展示是业务决策的关键。本示例将详细介绍如何结合iReport、Hibernate和SubReport来...

    iReport+jasperReports制作WEB报表pdf

    2. **使用参数**: 在报表设计中,可以使用参数值进行条件判断、动态查询等操作。 ##### 三、子报表 在某些情况下,可能需要在一个主报表中嵌入多个子报表。这种情况下,可以使用 iReport 中的子报表功能。 1. **...

    Ireport实现金额大写.doc

    在本文中,我们将详细介绍如何使用 iReport 实现金额大写,并提供了一个完整的示例来演示实现金额大写的步骤。 第一步:打开 iReport,新建一个报表。在这个步骤中,我们需要选择“Scriptlet”选项卡,并选择“Use ...

    ceshi.rar_ireport_java 报表_java自定义报表_报表 java_自定义报表

    通常会使用`JasperCompileManager`来编译`.jrxml`为`.jasper`二进制文件,然后用`JasperFillManager`填充数据,最后通过`JasperExportManager`导出报表。以下是一个简单的Java代码示例: ```java import ...

    ireport使用 参数Parameter的用法和dataset的用法 table的用法

    《iReport中Parameter、Dataset和Table的使用详解》 在报表设计领域,iReport作为一款强大的JasperReports设计工具,提供了丰富的功能,包括参数(Parameter)、数据集(Dataset)和表格(Table)的灵活运用,使得复杂的...

    Ireport实现金额大写(自己实现的)

    本文将详细介绍如何使用Ireport内置的Scriptlet功能实现将金额转换为大写的汉字表示,这对于财务报表的制作尤为重要,因为在中国,金额通常需要以中文大写的形式出现,以增加数据的准确性,防止篡改。 首先,我们要...

    ireport_5_6.rar

    标题中的"ireport_5_6.rar"表明这是一个关于iReport 5.6版本的压缩文件,iReport是一款用于设计JasperReports报表的开源工具。它允许用户通过一个图形化界面来创建、编辑和预览复杂的报表设计,支持多种数据源和输出...

    IReport使用Javabean做为数据源导PDF

    - 示例代码中的 `$P{SUBREPORT01_LIST}` 参数用于传递子报表的数据源。 #### 2. 子报表的数据源配置 - **步骤**: - 在子报表属性中,添加数据源配置:`new ...

    iReport_5.6.0_windows 版本

    总的来说,iReport 5.6.0 Windows版本是开发人员和数据分析师的强大工具,尤其对于那些使用SpagoBI的项目,它简化了报表设计流程,提升了工作效率,帮助用户将复杂的数据转化为易于理解的可视化信息。通过安装并熟悉...

    java-ERP.rar_JAVA 源码_iReport iReport ja_java 财务_毕业设计管理系统_财务

    大型企业管理源码,JAVA类,包括销售,采购,财务,OA辅助办公处理,有学习JAVA的朋友,将是不错的参考资料!

    manual_ireport.1000_ireportjava_

    这个PDF文件是iReport的手册,用西班牙语编写,提供了全面的操作指南和教程,帮助西班牙语用户掌握iReport的使用。 总的来说,iReport是一款强大的JAVA报表设计工具,它的灵活性和扩展性使其在企业级应用中得到...

    ireport报表参数传到子表步骤

    在iReport设计报表时,有时候我们需要将主报表的数据传递给子报表,以便子报表能够根据这些参数进行定制化的数据查询和展示。这个过程涉及到的主要知识点是报表参数的传递,也就是所谓的"传参"。以下是对这个过程的...

Global site tag (gtag.js) - Google Analytics