2014-10-22 50 views
2

序言:我有类似下面的交叉表:如何动态地去除交叉柱

  • 行组:月,今年1月做的;
  • 列组:name;
  • 列总数和行总数。

它实际上显示了参数年中花费在数据库中的每个人的总金额。 我的数据源是Postgres数据库,我用查询检索数据。

在我的数据库中,我使用了一些“空白”记录,用于部分提取:因为我需要显示所有的月份,并且我在5月份运行这个例子,无论如何,我需要从1月份到十二月。

我的DB是这样的:

ID | NAME | MONTH  | YEAR | MONEY 
    1 | Marco | January | 2014 | 150.0 
    2 | Marco | February | 2014 | 80.0 
    3 | Marco | March  | 2014 | 135.5 
    4 | Marco | April  | 2014 | 50.0 
    5 | Marco | May  | 2014 | 200.0 
    6 |  | June  | 2014 | 0.0 
    7 |  | July  | 2014 | 0.0 
    8 |  | August | 2014 | 0.0 
    9 |  | September | 2014 | 0.0 
    10 |  | October | 2014 | 0.0 
    11 |  | November | 2014 | 0.0 
    12 |  | December | 2014 | 0.0 

第5行,是一个“正规”的记录的一个例子,关于“黑客”的人,我需要12个月的交叉表上的其他人我的报告。

问题:如果我从1月到11月运行此报告,此解决方案会将我带入一个空列的交叉表。如果12月填入,则不显示任何空白栏。

由于是:

  |   | Marco | Mario | Luigi | Total 
    January | 0.0 | 150.0 | 150.0 | 150.0 | 450.0 
    February | 0.0 | 80.0 | 80.0 | 80.0 | 240.0 
    March  | 0.0 | 135.5 | 135.5 | 135.5 | 406.5 
    April  | 0.0 | 50.0 | 50.0 | 50.0 | 150.0 
    May  | 0.0 | 200.0 | 200.0 | 200.0 | 600.0 
    June  | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 
    July  | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 
    August | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 
    September | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 
    October | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 
    November | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 
    December | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 
    TOTAL  | 0.0 | 615.5 | 615.5 | 615.5 | 1846.5 

后市展望:

  | Marco | Mario | Luigi | Total 
    January | 150.0 | 150.0 | 150.0 | 450.0 
    February | 80.0 | 80.0 | 80.0 | 240.0 
    March  | 135.5 | 135.5 | 135.5 | 406.5 
    April  | 50.0 | 50.0 | 50.0 | 150.0 
    May  | 200.0 | 200.0 | 200.0 | 600.0 
    June  | 0.0 | 0.0 | 0.0 | 0.0 
    July  | 0.0 | 0.0 | 0.0 | 0.0 
    August | 0.0 | 0.0 | 0.0 | 0.0 
    September | 0.0 | 0.0 | 0.0 | 0.0 
    October | 0.0 | 0.0 | 0.0 | 0.0 
    November | 0.0 | 0.0 | 0.0 | 0.0 
    December | 0.0 | 0.0 | 0.0 | 0.0 
    TOTAL  | 615.5 | 615.5 | 615.5 | 1846.5 

问:如何隐藏 “空白” 列?有没有办法让它崩溃?

编辑︰我试图使“空白”列完全空白,如果名称列组也是“空白”编辑将显示“空白”的措施的表达式。然后在列,测量和总单元格中,我已经检查了“如果空白除去”选项,但没有结果。几个月和交叉表的其余部分之间仍有空间。 这是我现在得到:

  |   | Marco | Mario | Luigi | Total 
    January |   | 150.0 | 150.0 | 150.0 | 450.0 
    February |   | 80.0 | 80.0 | 80.0 | 240.0 
    March  |   | 135.5 | 135.5 | 135.5 | 406.5 
    April  |   | 50.0 | 50.0 | 50.0 | 150.0 
    May  |   | 200.0 | 200.0 | 200.0 | 600.0 
    June  |   | 0.0 | 0.0 | 0.0 | 0.0 
    July  |   | 0.0 | 0.0 | 0.0 | 0.0 
    August |   | 0.0 | 0.0 | 0.0 | 0.0 
    September |   | 0.0 | 0.0 | 0.0 | 0.0 
    October |   | 0.0 | 0.0 | 0.0 | 0.0 
    November |   | 0.0 | 0.0 | 0.0 | 0.0 
    December |   | 0.0 | 0.0 | 0.0 | 0.0 
    TOTAL  |   | 615.5 | 615.5 | 615.5 | 1846.5 
+0

您能否请您显示您当前的查询? – Houari 2014-11-15 14:54:55

回答

0

这是不可能的使用iReport的交叉表删除列。