一个新手的问题,我不能找到答案。

我有一份报告,其中载有一个表格保持多个项目,有一个"时间"一栏。我要集团的项目的时间使所有项目的一个月里将被归在一起。

要做到这一点,我要提取的每月/每年的"时间"String(格式是"17:22 19/07/09")和使用,为分组。我知道如何做的这一切,在爪哇和我认为BIRT提供了几种方法来这样做,但我不能找到一个简单的方法来做到这一点。

如果有一个很好的教程上这个我喜欢检查出来。

谢谢!

有帮助吗?

解决方案

我们已经做了如下。在我们SQL查询数据集合,我们选择(例如) "char(my_date,iso)""left(char(date,iso),7)" (对 2009-01-052009-01 分别),是这样的:

select
    left(char(my_date,iso),7) as isoyyyymm,
    char(my_date,iso) as isodate,
    otherfield as value
from tbl
order by my_date

然后,当你创造你表在报告中,第1栏应该分组列基于isoyyyymm和空白的那个列表中:

  • 这标题,
  • 该组数据线;和
  • 详细数据线。

所以你结束了,在设计师:

+--------------------------------+-----------+-----------------+
| <Header row>                   | Date      | Value           |
+--------------------------------+-----------+-----------------+
| <Group header row (isoyyyymm)> |           |                 |
+--------------------------------+-----------+-----------------+
| <Detail row>                   | [isodate] | [value]         |
+--------------------------------+-----------+-----------------+
| <Group footer row (isoyyyymm)> |           | Total.sum(      |
|                                |           |   row["value"], |
|                                |           |   null,         |
|                                |           |  "Grp1")        |
+--------------------------------+-----------+-----------------+

该报告表仍将组上个月,但所显示的详细线将所有含有全日期:

Date         Value
----------   -----

2009-01-01       7
2009-01-08       2
2009-01-15       1
2009-01-22       4
             -----
                14

2009-02-05       2
2009-02-12       0
2009-02-19       0
2009-02-26       1
             -----
                 5

你的 可以 小组的时间间隔如果你想那样做,但我们选择了简单的方法对于那些情况下,我们可以使用简单的字符串。显然,如果你的间隔一个星期(或别的东西不适合简单的文字分析),则需要使用间隔分组建成BIRT.

最好的教程对于此(在我的意见),第187页(第12章)的 BIRT,一个领域指南的报告.那, 积分和延伸BIRT 有必备的任何严重的BIRT用户。

这首先是绝对至关重要的任何报告的设计师。第二涵盖更多的高级课题,如嵌入爪哇和Javascript,该报告对象模型和基础结构的BIRT.这是必需的,如果你希望你的报告要真正的壮观。

其他提示

不会的报告参数位在这里,其中包括datetime分析帮助你吗?

http://www.eclipse.org/birt/phoenix/deploy/viewerUsage.php#parameters

我有一个样本报告BIRT交换DevShare,这是否确切的事情。你提供一个经常的表达(为简单的还是复杂的,因为你需要),它将使用的配RegEx创建的群体。

http://www.birt-exchange.org/devshare/designing-birt-reports/746-create-a-dynamic-group-by-extracting-a-substring/#description

祝你好运!

这可以与该小组设在该表本身。如何创建团体的描述 http://www.eclipse.org/birt/phoenix/tutorial/basic/basic06.php (顺便说一句., 寻找'birt表团在谷歌gices此作为第一个打).在这种情况下你可以做这样的:

  • 右击的行头 国家组头和一个上下文的菜单 会显示出来。
  • 从上下文的菜单选择插入 组→如下。本集团详细信息对话 出现。
  • 选择了"时代"列在本组 在领域和类型时,在名称 领域。
  • 选择'month'在间隔 组合框
  • 点击"确定"。

这将创建一个分组的表格没有任何SQL或JS摆弄.

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top