我正在使用BIRT运行时引擎4.2.1
1.我已将以下jar移动到birt-runtime-4_2_1\ReportEngine\lib文件夹uk.co.spudsoft.birt.emitters.excel_0.8.0.20130230652 commons-codec-1.5 dom4j-1.6.1 poi-3.9-20121203 poi-oxml-3.9-20121203 poi-oxml-schemas-3.9-20112103 slf4j-api-1.6.2 stax-api-1.0.1 xmlbeans-2.3.0
2.更改代码以使用spudsoft发射器`公共类RunReport{
public static void runReport() throws Exception {
IReportEngine engine = null;
EngineConfig config = new EngineConfig();
config.setEngineHome("C:/BIRT/BIRT_2_6_1/birt-runtime-4_2_1/birt-runtime-4_2_1/ReportEngine");
Platform.startup(config);
IReportEngineFactory factory = (IReportEngineFactory) Platform
.createFactoryObject(IReportEngineFactory.EXTENSION_REPORT_ENGINE_FACTORY);
engine = factory.createReportEngine(config);
IReportRunnable design = engine.openReportDesign("C:/reports/csvReport2.rptdesign");
IRunAndRenderTask task = engine.createRunAndRenderTask(design);
IRenderOption options = new RenderOption();
options.setOutputFormat("xls");
options.setOutputFileName("C:/reports/native.xls");
options.setEmitterID( "uk.co.spudsoft.birt.emitters.excel.XlsEmitter" );
task.setRenderOption(options);
task.run();
task.close();
Platform.shutdown();
System.out.println("Report Generated Sucessfully!!");
}`
执行报表时收到以下错误。
Jun 05, 2017 9:32:33 AM org.eclipse.birt.report.engine.api.impl.EngineTask setupRenderOption
SEVERE: Error.InvalidEmitterID
org.eclipse.birt.report.engine.api.EngineException: EmitterID uk.co.spudsoft.birt.emitters.excel.XlsEmitter for render option is invalid.
at org.eclipse.birt.report.engine.api.impl.EngineTask.setupRenderOption(EngineTask.java:2022)
at org.eclipse.birt.report.engine.api.impl.RunAndRenderTask.doRun(RunAndRenderTask.java:96)
at org.eclipse.birt.report.engine.api.impl.RunAndRenderTask.run(RunAndRenderTask.java:77)
at RunReport.runReport(RunReport.java:49)
at RunReport.main(RunReport.java:58)
Picked up _JAVA_OPTIONS: -Xmx512M
我错过了任何步骤或配置吗!
注意:我正在尝试使用spudsoft发射器作为默认发射器,打开excel时出现以下错误提示。
订单的文件格式和扩展名。xls不匹配。文件可能已损坏或不安全。除非你信任它的来源,否则不要打开它。是否仍要打开它
在我看来,你需要4.4.2版本的spudsoft发射器;
excelOptions.setOutputFormat("xls_spudsoft");
我已经做了一些改变来使它工作!
步骤一 更改了代码 - 将默认的“更改位置”替换为“EXCEL”更改“选项
import org.eclipse.birt.core.framework.Platform;
import org.eclipse.birt.report.engine.api.*;
public class RunReport {
public static void runReport() throws Exception {
IReportEngine engine = null;
EngineConfig config = new EngineConfig();
config.setEngineHome("C:/Projects/My Works Related/BIRT/BIRT_2_6_1/birt-runtime-4_2_1/birt-runtime-4_2_1/ReportEngine");
Platform.startup(config);
IReportEngineFactory factory = (IReportEngineFactory) Platform
.createFactoryObject(IReportEngineFactory.EXTENSION_REPORT_ENGINE_FACTORY);
engine = factory.createReportEngine(config);
IReportRunnable design = engine.openReportDesign("C:/Projects/My Works Related/Backup From My System and Proton/Backup from Proton/SEM/rk/rk/birt-runtime-Eclipse _workspace2_6_2/eclipse-reporting-helios-SR2-win32/workSpace/ExecuteCSVReport/reports/csvReport2.rptdesign");
IRunAndRenderTask task = engine.createRunAndRenderTask(design);
EXCELRenderOption excelOptions = new EXCELRenderOption();
excelOptions.setOutputFormat("xls");
excelOptions.setOutputFileName("C:/Projects/My Works Related/Backup From My System and Proton/Backup from Proton/SEM/rk/rk/birt-runtime-Eclipse _workspace2_6_2/eclipse-reporting-helios-SR2-win32/workSpace/ExecuteCSVReport/reports/native.xls");
excelOptions.setEmitterID( "uk.co.spudsoft.birt.emitters.excel.XlsEmitter" );
task.setRenderOption(excelOptions);
task.run();
task.close();
Platform.shutdown();
System.out.println("Report Generated Sucessfully!!");
}
public static void main(String[] args) {
try {
runReport();
} catch (Exception e) {
e.printStackTrace();
}
}
}
第二步删除org.eclipse.birt.runtime_4.2.1.v20120918-1113.jar中的poi目录,该目录位于路径
birt-runtime-4_2_1\ReportEngine\lib
中,以解决poi冲突问题。
我是BIRT的新手,今天已经为Java和报表开发人员下载了Eclipse IDE。 在完成了一个教程之后,当我准备好预览我的报告时,我点击了“在Web Viewer上查看报告”和许多其他选项,但它总是为我启动Notepad+。 我的IDE有问题吗? 请指教。谢谢你抽出时间。 注意到错误日志中有一些错误,不确定这是否会影响报表的预览: java.lang.NullPointerException
目前,我正在使用Birt Report从我的系统生成报告。我正在使用输入参数将参数从系统发送到Birt Report。问题是当我试图从系统发送多个参数时。 示例:Birt报表中一个参数的SQL语句 当我将此查询用于一个参数时,它起作用了。 我现在努力实现的是, 我试过这样SQL 我已经在数据集和报表参数上创建了参数,但它仍然无法工作
有什么想法吗?
我能看到周围有什么工作示例吗?我从这里下载了这个http://www.it-jw.com/grails/birt-report-test_0.5.ziphttp://grails.org/plugin/birt-report 却一直给我错误 "错误无法解析依赖项" .当我浏览http://repo1.maven.org/maven2/org/它说: 已禁用浏览此目录。改为在 http://sear
我正在使用Birt web报表查看器4.2.1,以及如何将报表查看器语言本地化为俄语,eclipse站点仅为某些IDE提供本地化,
BIRT是一个Eclipse-based开放源代码报表系统。它主要是用在基于Java与J2EE的Web应用程序上。BIRT主要由两部分组成:一个是基于Eclipse的报表设计和一个可以加到你应用服务的运行期组件。BIRT同时也提供一个图形报表制作引擎。