Jasper reports Jasper iReport复杂交叉表列和行
我想用Jasper iReport创建一个具有如下布局的交叉表报告Jasper reports Jasper iReport复杂交叉表列和行,jasper-reports,ireport,crosstab,Jasper Reports,Ireport,Crosstab,我想用Jasper iReport创建一个具有如下布局的交叉表报告 **Date: 1 January 2012** Num Transaction Blue Red Total 1 | Bank Wire | 2 | 5 | 7 2 | Credit Card | 1 | 2 | 3 3 | Cheque | 1
**Date: 1 January 2012**
Num Transaction Blue Red Total
1 | Bank Wire | 2 | 5 | 7
2 | Credit Card | 1 | 2 | 3
3 | Cheque | 1 | 1 | 2
------------------------------------------------
Total
Bank Wire & Credit | 3 | 7 | 10
------------------------------------------------
Total All | 4 | 8 | 12
**Date: 2 January 2012**
Num Transaction Blue Red Total
1 | Bank Wire | 0 | 1 | 1
2 | Credit Card | 2 | 2 | 4
3 | Cheque | 1 | 1 | 2
------------------------------------------------
Total
Bank Wire & Credit | 2 | 3 | 5
------------------------------------------------
Total All | 3 | 4 | 7
--------------------------xx-----------------------
--------------------------xx-----------------------
Total
All Bank Wire
& Credit | 5 | 10 | 15
----------------------------------------------------
Total
All Transaction | 7 | 12 | 19
--------------------------xx-----------------------
--------------------------xx-----------------------
SELECT Date FROM Table WHERE Date BETWEEN $P{FromDate} AND $P{ToDate}
SELECT columnName FROM Table WHERE Date = $P{PDate}
这是非常复杂的,在我自己的逻辑思维中,我觉得它就像子报表中的交叉表?而且交叉表不允许添加单个列或行,只允许添加行组,所以这有点困难
现在我只能创建一个带有事务的交叉表,蓝色、红色和Total列,
以及所有银行电汇和信贷总额和所有交易总额
不过,我还是不能做Num列
此外,我只能对整个日期范围(1月1日至2日)进行交叉表计数,而不是对每个日期进行交叉表计数。。所以,我仍然无法根据每个日期计算银行电汇和信用总额
Jasper iReport论坛似乎也不活跃 “Num”列可以通过添加行组和计数变量作为其表达式来创建。另外,为了进行正确的计数,请创建一个“日期”组,并将交叉表放在该组的页脚中。我正在使用SQL。我通过将交叉表放在细节栏中解决了日期问题,并为该交叉表使用了一个子数据集 -我的主数据集有参数FromDate和ToDate,其查询如下
**Date: 1 January 2012**
Num Transaction Blue Red Total
1 | Bank Wire | 2 | 5 | 7
2 | Credit Card | 1 | 2 | 3
3 | Cheque | 1 | 1 | 2
------------------------------------------------
Total
Bank Wire & Credit | 3 | 7 | 10
------------------------------------------------
Total All | 4 | 8 | 12
**Date: 2 January 2012**
Num Transaction Blue Red Total
1 | Bank Wire | 0 | 1 | 1
2 | Credit Card | 2 | 2 | 4
3 | Cheque | 1 | 1 | 2
------------------------------------------------
Total
Bank Wire & Credit | 2 | 3 | 5
------------------------------------------------
Total All | 3 | 4 | 7
--------------------------xx-----------------------
--------------------------xx-----------------------
Total
All Bank Wire
& Credit | 5 | 10 | 15
----------------------------------------------------
Total
All Transaction | 7 | 12 | 19
--------------------------xx-----------------------
--------------------------xx-----------------------
SELECT Date FROM Table WHERE Date BETWEEN $P{FromDate} AND $P{ToDate}
SELECT columnName FROM Table WHERE Date = $P{PDate}
所以现在我的主数据集有字段Date
-然后我用参数PDate创建了新的子数据集,它的查询有点像这样
**Date: 1 January 2012**
Num Transaction Blue Red Total
1 | Bank Wire | 2 | 5 | 7
2 | Credit Card | 1 | 2 | 3
3 | Cheque | 1 | 1 | 2
------------------------------------------------
Total
Bank Wire & Credit | 3 | 7 | 10
------------------------------------------------
Total All | 4 | 8 | 12
**Date: 2 January 2012**
Num Transaction Blue Red Total
1 | Bank Wire | 0 | 1 | 1
2 | Credit Card | 2 | 2 | 4
3 | Cheque | 1 | 1 | 2
------------------------------------------------
Total
Bank Wire & Credit | 2 | 3 | 5
------------------------------------------------
Total All | 3 | 4 | 7
--------------------------xx-----------------------
--------------------------xx-----------------------
Total
All Bank Wire
& Credit | 5 | 10 | 15
----------------------------------------------------
Total
All Transaction | 7 | 12 | 19
--------------------------xx-----------------------
--------------------------xx-----------------------
SELECT Date FROM Table WHERE Date BETWEEN $P{FromDate} AND $P{ToDate}
SELECT columnName FROM Table WHERE Date = $P{PDate}
-然后在交叉表数据的参数中,我从主数据集中添加带有表达式F{Date}
的参数PDate
,以便将它们链接在一起
希望这对任何人都有帮助。我认为您可能需要将问题分成几个部分,以获得一个好的答案。“Num column”问题与将多个交叉表放到一个复杂的报告中没有密切关系。关于iReport论坛不活跃的评论对我来说似乎很奇怪。每天都有很多问题和答案发布。(这与StackOverflow的总容量完全不同……但它是稳定的。)为什么您认为Num列与交叉表不密切相关?这两个问题都与交叉表相关。我的意思是这两个问题之间没有密切的联系。