2012-07-07 117 views
12

从观看2部YouTube视频,并仔细阅读BIRT的手册,我对它的理解是在worflow是这样的:配置和生成BIRT报表动态

  • 在Eclipse
  • 创建一个新的报告
  • 使用BIRT报表设计器(Eclipse插件)来设计报告
  • 填充与数据源的报告(JDBC驱动程序&数据库)和数据集(特定表)
  • 生成/导出/打印的报告

酷派为这个工具似乎是,我无法找到任何文件,导致我相信这是一个的Java工具,而不是一个Eclipse的唯一工具(意思是,它有一个Java API,并且可以与Java应用程序交互,而不是纯粹的Eclipe插件,它需要Eclipse IDE的手动/人工交互。

具体而言,我想确认BIRT或者可以或不可以执行以下操作:

  • 配置的报告(布局,UI插件放置,数据源/套等)编程;即与JasperReport API具有生成JRXML的iReport设计器相同的方式,对于BIRT也是如此?
  • 通过Java API启动报告“generation”,从而实时读取数据并填充报告并将报告发送出去或存储在文件系统中
  • 创建同一报告的HTML和PDF版本
+1

你看看这本书“集成和扩展BIRT”,特别是在4如何BIRT融入部分应用? – webpat 2012-07-10 03:58:41

+0

请参阅:http://www.vogella.com/tutorials/EclipseBIRT/article.html – kenorb 2015-02-27 13:41:05

+0

有一个API可以帮助直接从Java生成BIRT报告:https://mvnrepository.com/artifact/net.sf.automatic-report - 发电机/ BIRT发电机。 v1.0适用于Log4j,v1.1适用于Log4J2。另外,在这里检查sourceforge的页面:https://sourceforge.net/projects/automatic-report-generator/ – 2016-11-06 18:17:33

回答

16

问题的答案:

  1. 是。 BIRT可能不如JasperReports强大,但它可以实现大多数常见需求。 BIRT设计器在JasperReports中生成类似于JRXML的.rptdesign文件。

    关于您的问题:几乎所有事情都有可能在BIRT中以编程方式实现。 BIRT Report Engine APIs是您开始使用所有提及的功能的最佳来源。它为每个功能提供了很好的例子。

  2. 不确定。 BIRT通常从数据库中提取预先保存的数据并生成报告。虽然可以通过一些外部库(参见this线程和this示例帮助)看到实时数据表示形式(以闪存图表的形式显示)。但我不知道将实时数据转换为PDF/HTML报告的直接方式。你将不得不寻找一些黑客。

  3. 当然可以。参考API。具体来说,irendertask

源以获取更多信息/回答:

  1. 有在网站上给出了几个example reports。快速浏览它们可能会给你更多的见解。

  2. 有关讨论和疑难解答,请参阅eclipse community forumBIRTExchange(BIRT用户大量使用)。

  3. BIRT: A Field Guide to Reporting是一本很好的书。我不时自己使用它。

1

您可以使用报表引擎API来配置报告: http://www.eclipse.org/birt/phoenix/deploy/reportEngineAPI.php#ireportrunnable

您可以通过在URL中设置一个变量来生成报告,或者使用报表引擎创建报表的HTML或PDF版本以编程方式:

http://www.eclipse.org/birt/phoenix/deploy/reportEngineAPI.php#irendertask

我们使用Eclipse来构建和设计报表。报告引擎作为reports_war的一部分进行部署,战争与数据库有自己的连接。我们基于Java的Web应用程序使用URL与报告模板交互(变量在URL中设置)。

BIRT Exchange是获取更多信息的好地方

-1

BIRT是来回生成报告良好而简单的工具。

  • 您可以在BIRT中设计您的页面。 -
  • 创建数据集并使用jsp标签库将网页中的值传递给BIRT设计。 BIRT满足您的所有要求。它非常易于使用。首先我使用碧玉,然后尝试水晶atlast Birt gies的输出。 tag lib

我把这个链接引用到我的网页中查看BIRTVIEWVER。 BIRT中PDF的创建非常完美。您也可以生成PDF,DOC,HTML。

您可以将值传递给您的birt。在创建数据集时,可以选择传递参数。

做这一切,你必须安装BIRTREPORT inyour日食BIRT Report designer

4

我可以确认,你有兴趣使用两个BIRT组件(BIRT设计引擎和报表引擎)将在纯Java环境中工作和无需Eclipse即可部署。我部署了BIRT报告以运行独立Tomcat服务器以及Pentaho BI Server,并且已经使用shell脚本在命令行中执行了报告定义(不涉及Eclipse)。

问题的答案:

  1. 配置的报告程序:使用Design Engine API。我不熟悉Jasper Reports API,因此无法评论BIRT方法是否相似,但example code提供了一个很好的例子。特别要注意的是在报表中添加和操作小部件的lines 120-133,以及line 136如何调用saveAs来保存报表设计文件。

  2. 实时生成报告:使用Report Engine。开始时,IRunAndRenderTask的示例代码对您来说可能是最有用的,但引擎可以将报表的数据处理(提取和聚合)与渲染和分页分开。我相信这些示例重点关注从Servlet运行报表,但很容易从servlet容器逻辑中提取该逻辑。

  3. 同时创建HTML和PDF版本:通过IRenderTask轻松在报表引擎中处理。一旦完成了所有其他设置工作,将输出格式更改为生成PDF和HTML是令人高兴的事情。根据我的经验,这只是起作用。

我发现它有用,开始了一个非常简单的Java类(改编自very old code here)运行的测试报告,从命令行调用。

0

除了birt有eclipse插件之外,Birt和jasper之间没有太大的区别。

1)是的,你可以通过java程序或方法来配置它。

2)是的,这是可能的。

3)是再次导出不同格式的报告很容易被Java BIRT报表