Jasper reports JasperReports分组可由用户更改

Jasper reports JasperReports分组可由用户更改,jasper-reports,ireport,Jasper Reports,Ireport,我不知道这是否可行,但我正在尝试找出是否可以使用iReport Designer创建报告,其中查看报告的用户可以控制分组 例如,我希望用户能够对分组进行重新排序,并更改报告的分组程度(仅在一个字段或多个字段上) 顺便说一句,我不是指SQL分组,我是指例如,按帐户分组,然后按代理分组: | Account | Agent | Invoice | Total | +----------+---------+----------+-------+ | Account1 | |

我不知道这是否可行,但我正在尝试找出是否可以使用iReport Designer创建报告,其中查看报告的用户可以控制分组

例如,我希望用户能够对分组进行重新排序,并更改报告的分组程度(仅在一个字段或多个字段上)

顺便说一句,我不是指SQL分组,我是指例如,按帐户分组,然后按代理分组:

| Account  |  Agent  | Invoice  | Total |
+----------+---------+----------+-------+
| Account1 |         |          |       |
|          |   Joe   |          |       |
|          |         | Invoice2 | $600  |
|          |         | Invoice1 | $300  |
| Account2 |         |          |       |
|          |   Sam   |          |       |
|          |         | Invoice4 | $120  |
|          |         | Invoice7 | $230  |
|          |   Joe   |          |       |
|          |         | Invoice3 | $200  |
+----------+-- ------+----------+-------+

我想弄明白的是,你能用iReport使分组动态吗?也就是说,用户可能希望首先按代理分组,然后按帐户分组,而不是每个分组都有一个报告。如果有一种方法可以通过iReport实现这一点,那就更好了。

是的,应该可以创建这样的报告。但根据你的具体需求,这可能并不实际(正如Alex K所指出的)

如果您仅以按帐户然后按代理分组或按代理然后按帐户分组为例,那么就很简单了。有一个参数,让用户指定此选项。这可能是一个下拉列表。然后在报告中,您将有如下字段:

今天的版本:
$F{Account}
$F{Agent}

动态版本:
$p{AcctFirst}$F{Account}:$F{Agent}
$P{AcctFirst}$F{Agent}:$F{Account}

同样,组定义需要包含新的AcctFirst参数

但它不会很好地扩展。如果这两个字段是不同的数据类型怎么办?如果您想让用户从3、4或N个字段中进行选择,该怎么办?这些都是可以解决的。。。但报告变得越来越复杂


顺便说一下,这是一个比较常见的请求。你会看到像这样的功能进入JasperReports。但目前这是一个棘手的问题。

您可以使用or来满足这一需求。或者你可以使用几个模板,例如,是的,我知道这些,但希望有一种方法可以将这种数据嵌入到一个报告中,你可以导入JasperReports服务器。但我开始怀疑不是这样。您可以尝试在
groupExpression
中使用参数。示例:
。我认为很难支持这样的报告。