使用SpudSoft的Birt Multi Sheet报告

时间:2014-05-27 15:42:12

标签: eclipse birt birt-emitter

我在服务器中创建报告时遇到一些问题而没有默认导出引擎。 我正在使用SpudSoft来创建它。我有以下配置:

  • Tomcat 7
  • Birt 4.2.2
  • uk.co.spudsoft.birt.emitters.excel_0.8.0.201310230652.jar

我遵循了本教程:

spudsoft-BIRT-Excel的发射器

我没有包含此文件

lib/slf4j-api-1.6.2.jar

因为它不包含在* .jar文件中

并且写了这段代码:

'if( "XLS".equalsIgnoreCase( outputFileFormat ) ) {
     renderOption.setEmitterID( "uk.co.spudsoft.birt.emitters.excel.XlsEmitter" );
 } else if( "XLSX".equalsIgnoreCase( outputFileFormat ) ) {
     renderOption.setEmitterID( "uk.co.spudsoft.birt.emitters.excel.XlsxEmitter" );
 }'

因为我真的不知道在哪里使用它。

运行我的报告我使用以下网址

http://127.0.0.1:8090/birt-viewer/frameset?__format=xls&__report=informes/myReport.rptdesign&__emitterid=uk.co.spudsoft.birt.emitters.excel.XlsEmitter

我收到以下消息:

org.eclipse.birt.report.service.api.ReportServiceException:渲染选项的EmitterID uk.co.spudsoft.birt.emitters.excel无效。

如何运行SpudSoft报告?我已经阅读了一个星期,我还没找到任何解决方案!

非常感谢所有人!

2 个答案:

答案 0 :(得分:1)

@Dominique, 我建议从BIRT 4.3附带的发射器进行升级(鉴于BIRT团队缺乏响应,我很遗憾让他们把它放在那里)。 此外,您不需要使用特定的IRenderOption类型 - 无论如何它们都是相同的。

@Jota, 如果你得到那个错误,这意味着BIRT没有正确地拾取发射器(你有正确的发射器ID)。

我不使用BIRT war文件,因此我的说明并非针对该方法(我只是在自己的服务中使用报告引擎)。

代码片段对您没有用,它只是一种指定您在查询字符串上执行的发射器ID的方法。

使用你拥有的发射器版本不应该使用slf4j - 它使用JUL代替(我讨厌JUL,但它的依赖性更少)。

你可以在战争中发布一个完整的jar文件列表吗?

答案 1 :(得分:0)

似乎是因为你使用了一般的IRenderOption。使用spudsoft发射器,您应该实例化渲染选项,如下所示:

EXCELRenderOption excelOptions = new EXCELRenderOption();

请注意,如果您升级到BIRT 4.3,则不必再设置发射器,它是嵌入式的