BIRT在交叉表中插入没有数据的行/列的数据

时间:2015-11-23 09:07:05

标签: birt maximo

交叉表插值数据,因此图形'连接点'

我的交叉表或图表无法正确插入数据。我认为这可以解决,但我不确定。让我解释一下我做了什么。

我有一个datacube,其中的行按周数分组数据,每个记录类型的cols分组数据。我将flagbits添加到数据集中,以便查看记录是新的还是旧的。在datacube中,我添加了一个度量来对每行/每组的这些位求和。从而有效地计算每个coltype每周的新旧记录。我还添加了每种coltype的记录总和。

在交叉表中,我为新旧记录总和添加了两个runsums。在交叉表中,我添加了一个datacell来计算每行/ colgroup的实际记录。因此实际记录= totalcoltype - runningsum(旧)+ runningsum(新)

因此,假设此集合中有20条记录用于coltype。

  • 在第1周:3个旧记录,2个新记录。然后运行总和变为3和-2。实际= 20 - 3 + 2 = 19(正确)
  • 第2周:没有数据。 runsums不可见。实际= 20 - null + null = 20(错误)
  • 第3周:没有数据。 runsums不可见。实际= 20 - null + null = 20(错误)
  • 在第4周:2个旧记录,1个新记录。 runsums变为5和3. Actual = 20 - 5 + 3 = 18(正确)
  • 第5周:没有数据。 runsums不可见。实际= 20 - null + null = 20(错误)
  • 在第6周:6个旧记录,2个新记录。 runsums变为11和5. Actual = 20 - 11 + 5 = 14(正确)
  • 第7周:没有数据。 runsums不可见。实际= 20 - null + null = 20(错误)

因此图表将显示:

  1. 19
  2. 20
  3. 20
  4. 18
  5. 20
  6. 14
  7. 20
  8. 如果我在实际计算中添加条件,它将变为:

    1. 19
    2. 18
    3. 14
    4. 图表不会忽略空值,但认为它们是0.图表是错误的。

      有没有办法让图形真正忽略空值? 另一个解决方案是runsums显示最后的已知值,或者如果没有数据则只添加0。知道怎么做吗?

      显然,正确的图表如下:

      1. 19
      2. 19
      3. 19
      4. 18
      5. 18
      6. 14
      7. 14

0 个答案:

没有答案