如何连接字段的第一个和最后一个值并隐藏IReport中表组页脚中的特定记录

use*_*222 1 jasper-reports ireport tabular

我有一个表组件,它显示了像这样的一组年份中的一些记录

例如:

Year   Month    SumMonth //group header
2009   Jan      1000     //table details
       Feb      2000
       Mar      3000
2009   xxxx     6000     //group year footer
2010   Jan      1100     //table details
       Feb      1200
2010   xxxx     2300     //group year footer
Run Code Online (Sandbox Code Playgroud)

上表中的"xxxx"部分是我需要修改的部分.

我想显示如下格式:

" Jan-Mar "(2010年为" 1月至2月 ")

问题是如何获取第一个月上个月的值并将它们连接成一个变量(或者不需要?),以便我可以将它放入页脚?

另一个问题是如何隐藏特定年份的记录?

例如,最终修改后的显示可能是这样的:

Year   Month     SumMonth //group header
2009   Jan-Mar   6000     //group year footer
2010   Jan       1100     //table details
       Feb       1200
2010   Jan-Feb   2300     //group year footer
Run Code Online (Sandbox Code Playgroud)

您可以看到2009年的所有记录都隐藏在上表中.我应该设置哪些选项或表达式?

mda*_*man 5

创建一个名为FirstMonth的变量.它的表达式$F{month}和它的计算是First.创建一个名为LastMonth的变量.它的表达式$F{month}和它的计算是None.在你的情况下,两者都应该重置每年.然后在年份页脚中它就像这样简单:

$V{FirstMonth} + "-" + $V{LastMonth}
Run Code Online (Sandbox Code Playgroud)

如果您不想查看2009年的详细信息,请在详细信息区域中设置Print When Expression ${Year}.intValue() != 2009