Dynamic JasperReports:如何动态更改子报表表达式

Dynamic JasperReports:如何动态更改子报表表达式,dynamic,jasper-reports,subreport,Dynamic,Jasper Reports,Subreport,我想做的似乎很简单 我有一个包含子报表元素的主报表。子报表是从一个包含0-n个子报表集合的JRastractBeanDataSource填充的 在主报告中,子报告包含: 这很好,SUBREPORT_DIR作为参数在代码中传递给数据源 不过,我需要做的是根据子报表属性选择不同的报表名称,例如: 也就是说,允许数据源上的子报表数据集合中的每个项指定.jasper文件名(也就是说,允许它选择要使用的子报表) 也许有更好的方法来考虑/处理这个问题。只是一个旁注-当你想在问题中包含代码时,请使用合

我想做的似乎很简单

我有一个包含子报表元素的主报表。子报表是从一个包含0-n个子报表集合的
JRastractBeanDataSource
填充的

在主报告中,子报告包含:


这很好,SUBREPORT_DIR作为参数在代码中传递给数据源

不过,我需要做的是根据子报表属性选择不同的报表名称,例如:


也就是说,允许数据源上的子报表数据集合中的每个项指定
.jasper
文件名(也就是说,允许它选择要使用的子报表)


也许有更好的方法来考虑/处理这个问题。

只是一个旁注-当你想在问题中包含代码时,请使用合成窗口上方的“代码”按钮。我们看不到你的例子。如果你点击构图窗口右上角的小橙色方框内的问号,它将带你进入一个标记编辑教程


我有点不清楚你想完成什么。从集合中,我不确定您是否希望在报表中包含所有子报表,并且需要一种方法在目录中遍历它们的名称,或者您是否希望子报表的选择是动态的。我不知道如何在主报表中包含多个子报表。如果要动态选择报表名称,为什么不将子报表名称设置为从代码传递到报表的参数呢。您可以根据自己选择的标准,按照自己的逻辑来决定要使用哪个报表名称。如果这不是您想要的,也许您的问题中更详细一点会有所帮助。

我试图找到一种方法,将报表名称设置为主报表在日期源项上迭代。相反,我只是使查询完全动态,作为参数传入。这就是我真正需要为每个子报告更改的内容。

Oops,忘记了代码标记:)谢谢。我试图找到一种方法,将报表名称设置为主报表在日期源项上迭代的名称。相反,我只是使查询完全动态,作为参数传入。这就是我真正需要为每个子报告更改的内容。无论如何,谢谢你抽出时间。