当前位置: 首页 > 知识库问答 >
问题:

JasperReports:将列表列表作为数据源传递

慕凡
2023-03-14

我需要用不同对象的列表填充几个子报表。基本上,假设我有以下内容:< br >二手车子报表< br >新车子报表< br >

我用字符串形式的变量创建了一个vehicle bean类,并为其创建了getter和setter方法。然后在我的数据源中,我传入一个< code >列表

我在主报表中创建了一个字段详细信息行作为类型列表。然后,我将以下内容传递给子报表数据源表达式,new net.sf.jasperreports.engine.data.JRBeanCollectionDataSource($F{detailRows} 有什么方法可以将 newVehiclesList 从 detailRows 传递到子报表?

谢谢!

共有3个答案

谭献
2023-03-14

我和你一样的问题,我用 jasper 列表标签解决了它,我在我的类 java 中使用了数据源,例如:parameter.put(“MyList”,new JRBeanCollectionDataSource(ListObjects));在 JRXML 中

在Jasper的苍白中,选择标签LIST,并在选择后拖放到你的相关故事中

  • 创建新数据集
  • 从连接创建新数据集...
  • ... 在“数据适配器
  • ”中,选择“新建数据适配器 - Java Beans 集合
  • 使用 JRDatasource 表达式
  • 进入参数的 LIS 并选择列出 op 对象 (MyList)

现在转到jasper和-dataset属性的大纲-编辑和查询过滤器……-javabian-搜索你的类(我使用eclipse,所以很容易搜索我的类)-添加要使用的字段

裴展
2023-03-14

好的,那么您需要创建两个字段,字段类为java.util。列表,每个列表一个(新车辆列表和已用车辆列表)。

将两个子报表放在所需的任何位置,然后单击每个子报表,执行以下步骤:

将“连接类型”更改为“使用数据源表达式”,然后将“数据源表达式”更改为新的net.sf.jasperreports.engine.data.JRBeanCollectionDataSource($F{yourField})

成交。

ps:为了使用newVehiclesList和usedVehiclesList中的字段,您必须在它们自己的子报表中创建它们。

红砚文
2023-03-14

选择您的子报告,您可以将属性“连接类型”设置为“使用数据源表达式”,并在属性“数据源表达式”中设置以下内容:

new net.sf.jasperreports.engine.data.JRBeanCollectionDataSource($F{yourFieldHere})

其中“yourFieldHere”是一个列表(不要忘记将字段属性中的“字段类”设置为java.util.List)

 类似资料:
  • 我对JasperReports相当陌生,在从MongoDB中正确显示列表数据时遇到了挑战。 我当时正在写一篇文章,但似乎无法使它生效。 我在MongoDB中有以下集合: “行”是一个集合。 在iReport中,它显示为一个列表,这很好。然而,当我按照文章的建议将子数据源更改为

  • 问题内容: 大家好,我在使用某些代码时遇到了麻烦。我正在实施包裹。基本上我有一个全局启动的项目列表 我希望将其作为一个可传递的实例传递,以在旋转时保存实例状态。我实现了saveOnInstanceState方法和onCreate 唯一的问题是它将引发错误,并且错误指向outstate.putParcelableArrayList行。 有人知道解决方法或解决方法吗?我尝试使用Google搜索,并查看

  • 问题内容: 我有一个,我想将其传递给声明的方法。有没有办法做到这一点? 代码看起来 事情 是这样的: 该代码显然是行不通的,因为需要不。 有没有一种方法可以将列表作为变量传递? 这是在Android App中,但我不明白为什么该解决方案不适用于Java 问题答案: 刚过去。

  • 我正在从 JRBeanCollectionDataSource 生成报告。此报告是关于客户的订单的。 这是我的代码 当客户时,需要生成包含客户详细信息和客户订单列表的报告。由于接受一个集合,这就是我所做的。 如何提取< code>Customer中的< code>CustomerOrder列表并将其作为子报表传递?

  • 问题内容: 我需要借助主报表参数将 数据源 传递给子报表 。我不知道什么是正确的 dataSource 类型以及如何在子报表中获取值。 我的主报告的摘录: 我的子报表的摘录: 请告诉我如何通过主报表的 类型参数将数据源传递到子报表。 编辑:08.14 14:20将标签添加到Java 编辑:08.14 15:30与有关如何在iReport中打印另一个列表中包含的字符串列表?并适用于4.5.0和 问题

  • 我正在尝试用join在多个表中创建查询,并将列表作为参数传递。我将null&empty检查放在查询字符串中。但是,我在QueryNode.GetDataType上获得了NullPointerException。下面是查询和异常。 用户、角色和shopNames是列表,而customer是字符串。我创建的查询通常只使用带有null检查的字符串,它起作用了。然而,对于列表,它错误地使用了下面的列表。任