davidwalker's picture
From davidwalker rss RSS  subscribe Subscribe

Birt Engine 



 

 
 
Views:  39090
Downloads:  450
Published:  November 16, 2007
 
14
download

Share plick with friends Share
save to favorite
Report Abuse Report Abuse
 
Related Plicks
Cell phone apps that can help you.

Cell phone apps that can help you.

From: bobbyboy
Views: 10 Comments: 0
Did you know you can watch tv anywhere with the right app? http://3057ewr0rlk95vbay4n8hn0-t1.hop.clickbank.net/?tid=CP
 
Exam1pass free dumps 000-018 exam braindumps

Exam1pass free dumps 000-018 exam braindumps

From: test4passfjh
Views: 190 Comments: 0
000-012 exam,IBM IBM certifications I 000-012 braindumps training materials - exam1pass
 
Open Source Business Intelligence

Open Source Business Intelligence

From: anon-540775
Views: 61 Comments: 0

 
Make the Best of BI Tools

Make the Best of BI Tools

From: GlobalLogic
Views: 21 Comments: 0
In this competitive era an important task that employees engage in is leveraging their enterprise’s operating data. This is helpful in gaining a competitive advantage. It also helps in enhancing efficiency.
 
ProductDossier India Pvt LTD

ProductDossier India Pvt LTD

From: productdossier
Views: 241 Comments: 0
ProductDossier pioneering 3PLM (Project, Process & Product Lifecycle Management) solutions are design and developed to provide rich functionality, rapid deployment and ease of use. ProductDossier combined the technology to suit platform independence (more)

 
See all 
 
More from this user
Solihull solar system

Solihull solar system

From: davidwalker
Views: 1808
Comments: 0

Client Puzzles

Client Puzzles

From: davidwalker
Views: 1797
Comments: 0

Role of Real Estate in Family Portfolio

Role of Real Estate in Family Portfolio

From: davidwalker
Views: 1731
Comments: 0

Corporate Strategy

Corporate Strategy

From: davidwalker
Views: 7534
Comments: 0

Barak Obama - Presidential Transition

Barak Obama - Presidential Transition

From: davidwalker
Views: 2260
Comments: 0

Social Media

Social Media

From: davidwalker
Views: 2651
Comments: 0

See all 
 
 
 URL:          AddThis Social Bookmark Button
Embed Thin Player: (fits in most blogs)
Embed Full Player :
 
 

Name

Email (will NOT be shown to other users)

 

 
 
Comments: (watch)
plicker narendra (9 months ago)
dfgsdfgsdfgdf
plicker riyaztak@gmail.com (4 years ago)
I am able to create report in /report folder using report api.

but when i am trying to display it it's giving me this error

"Apr 28, 2008 5:12:26 PM org.eclipse.birt.report.engine.api.impl.ReportDocumentWriter saveDesign

SEVERE: Failed to save design IR!"

but i am saving it using

designHandle.saveAs(rPath+"/sample.rptdesign");//need to un comment

designHandle.close( );

but still while displaying it's giving this error.

Actually when i m trying to display using run servlet it's working fine but using
frameset it's giving me above errors.
so will u plz let me know what exactly is going on there and how can i resolve it
 
 
Notes:
 
Slide 1: Deploying the BIRT Engine Jason Weathersby BIRT Evangelist Actuate Corporation 1 2007 Actuate International User Conference ©
Slide 2: Agenda • • • • • • • • BIRT Overview BIRT Report Engine API BIRT Design Engine API Deploying BIRT BIRT Deployment Wizard and the BIRT Viewer BIRT Tag Library Custom Servlet RCP Deployment 2 2007 Actuate International User Conference ©
Slide 3: High Level BIRT Architecture Report Designer Eclipse Report Designer 1 Chart Designer Eclipse WTP Report Engine Data Transform. Services Generation Services Charting Engine Eclipse DTP ODA 2 5 HTML PDF DOC XLS Print PS CSV PPT 5 3 Report Design Engine 4 Presentation Services XML Report Design Data Data Report Document 3 3 2007 Actuate International User Conference ©
Slide 4: Agenda BIRT Project = Business Intelligence and Reporting Tools Project BIRT APIs 4 2007 Actuate International User Conference ©
Slide 5: BIRT Pipeline with respect to the APIs Report Designer Chart Builder Design Engine Chart Engine Report Engine Optional Java Events JavaScript Events Paginated HTML PDF RptDesign XML Design File Generation Phase Report Engine Presentation Phase CSV WORD XLS PostScript optional RptDocument Report Document PPT Example Web Viewer Contains 5 2007 Actuate International User Conference ©
Slide 6: Platform Startup Platform Used to startup OSGi and create Factory Objects. Static methods. Startup Start the Platform Shutdown Stop the Platform createFactoryObject Launch a plugin that implements the FactoryService Extension DesignEngineFactory Design Engine API ReportEngineFactory Report Engine API OSGILauncher Startup Optionally implement your own IPlatformContext IPlatformContext setPlatformContext String Location=getPlatform() PlatformFileContext PlaformConfig: EngineConfig/DesignConfig PlatformServletContext •Default PlatformContext •Looks for Plugins in BIRT_HOME •Looks for javax.servlet.context.tempdir •Creates platform directory in tempdir •Uses getResourcePaths for /WEB-INF/platform to locate plugins •Copies plugins and configuration to the tempdir/platform directory 6 2007 Actuate International User Conference ©
Slide 7: Platform Startup Code for DE and RE API Design Engine Sample Report Engine Sample IDesignEngine engine = null; DesignConfig config = new DesignConfig( ); config.setBIRTHome("C:/birt/birtruntime-2.2.0m5rc/birtruntime-2_2_0/ReportEngine"); try{ IReportEngine engine=null; EngineConfig config = new EngineConfig; config.setBIRTHome("C:/birt/birtruntime-2.2.0m5rc/birtruntime-2_2_0/ReportEngine"); try{ Platform.startup( config ); IDesignEngineFactory factory = (IDesignEngineFactory) Platform .createFactoryObject( IDesignEngineFactory.EXT ENSION_DESIGN_ENGINE_FACTORY ); engine = factory.createDesignEngine( config ); }catch( Exception ex){ ex.printStackTrace(); } 7 2007 Actuate International User Conference © Platform.startup( config ); IReportEngineFactory factory = (IReportEngineFactory) Platform .createFactoryObject( IReportEngineFactory.EXT ENSION_REPORT_ENGINE_FACTORY ); engine = factory.createReportEngine( config ); }catch( Exception ex){ ex.printStackTrace(); }
Slide 8: Report Engine API • Used to Generate Report Documents. • Used to Generate Report Output (PDF, HTML, Paginated HTML,WORD, XLS, Postscript) • Engine Creates task to implement operations. • One or Two Phase operation (Run Task then Render Task or RunAndRenderTask) • DataExtraction Task for retrieving Data from a report document. • ParameterDetails Task for retrieving Parameter information, including dynamic and cascading information. 8 2007 Actuate International User Conference ©
Slide 9: Report Engine Task EngineConfig Set configuration variables such as Engine Home and Log configuration Open Report Design and Documents. Create Engine Task. ReportEngine Generate one or more tasks GetParameterDefinitionTask Retrieve Parameters and their properties Does not support Pagination, TOC, Bookmarks. DataExtractionTask Extract Data from Report Document Generate Paginated HTML, XLS, PDF Document, Postscript, XLS Retrieve TOC and Bookmarks RunAndRenderTask RunTask RenderTask RptDesign RptDesign XML RptDesign XML Design File XML Design File Design File RptDocument RptDocument Report RptDocument Report Document Report Document Document 9 2007 Actuate International User Conference ©
Slide 10: Simple RE API Process EngineConfig config = new EngineConfig( ); config.setBIRTHome("C:/birt-runtime/ReportEngine"); IReportEngine engine = null; try{ ReportEngine Create the report engine. openReportDesign(report) Open Design createRunAndRenderTask(design) Create an Engine Task. HTMLRenderOptions() Set rendering options. setRenderOptions(options) Set the task render options. run() Run and Render the report. Platform.startup( config ); IReportEngineFactory factory = (IReportEngineFactory) Platform .createFactoryObject( IReportEngineFactory.EXTENSI ON_REPORT_ENGINE_FACTORY ); engine = factory.createReportEngine( config ); }catch( Exception ex){ } IReportRunnable design = null; design = engine.openReportDesign(“TopNPercent.rptdesign"); IRunAndRenderTask task = engine.createRunAndRenderTask(design); HTMLRenderOption options = new HTMLRenderOption(); options.setOutputFileName("output/resample/TopNPer cent.html"); options.setOutputFormat("html"); task.setRenderOption(options); 10 2007 Actuate International User Conference © task.run();
Slide 11: REAPI examples • REAPI Examples 11 2007 Actuate International User Conference ©
Slide 12: Design Engine API • Used to Generate/Modify Report Designs, Templates and Libraries. • Can be used in conjunction with the RE API to modify designs on the fly. • Can be used within BIRT Script to modify designs on the fly. • Create and delete report elements. • Put report elements into slots. • Get and set parameter values. • Retrieve metadata from report elements, properties and slots. • Undo/Redo • Semantic Checks on report designs. 12 2007 Actuate International User Conference ©
Slide 13: BIRT Elements • Elements – Report Objects such as Table, Label, Style etc. • Properties – Modify the Element state and often support inheritance. Discussed in ROM specification. Simple and Complex properties. • Slots – Describes element container relationships. For example a Report element contains slots for Data Sources, Data Sets, Report Body, etc. Represented by SlotHandle. 13 2007 Actuate International User Conference ©
Slide 14: Simple DE API Process DesignConfig config = new DesignConfig( ); config.setBIRTHome("C:/birt-runtime/ReportEngine"); IDesignEngine engine = null; try{ Platform.startup( config ); IDesignEngineFactory factory = (IDesignEngineFactory) Platform .createFactoryObject( IDesignEngineFactory.EXTENSI ON_DESIGN_ENGINE_FACTORY ); engine = factory.createDesignEngine( config ); }catch( Exception ex){ } SessionHandle session = engine.newSessionHandle( ULocale.ENGLISH ) ; ReportDesignHandle design = session.createDesign( ); ElementFactory factory = design.getElementFactory( ); GridHandle grid = factory.newGridItem( “mygrid”, 2 , 1 ); design.getBody( ).add( grid ); design.saveAs( "output/desample/sample.rptdesign" ); DesignEngine Create the design engine. newSessionHandle(Locale) DesignSession used to create reports, libs, etc createDesign() Returns a ReportDesignHandle. getElementFactory() Returns ElementFactory to Create Report Elements. getBody() Returns SlotHandle use add to add new report element. DessignSession.saveAs() Save Report Design. 14 2007 Actuate International User Conference ©
Slide 15: ElementFactory Used to create new Report Elements. Use container SlotHandle.add. Produces LabelHandle label1 = elementFactory.newLabel("Label1" ); SlotHandle label1.setText("Customer"); CellHandle cell = (CellHandle) tableheader.getCells( ).get( 0 ); cell.getContent( ).add( label1 ); SlotHandle DesignElementHandle. <cell id="6"> <label name="Label1" id="7"> Cast to specific handle <text-property name="text">Customer</textproperty> </label> </cell> 15 2007 Actuate International User Conference ©
Slide 16: StructureFactory Used to create new structures (complex xml). Use PropertyHandle on container to add. Produces HighlightRule hr = structFactory.createHighlightRule(); hr.setOperator(DesignChoiceConstants. MAP_OPERATOR_GT); hr.setTestExpression("row[\"CustomerCreditLimit\"]"); hr.setValue1("100000"); hr.setProperty(HighlightRule. BACKGROUND_COLOR_MEMBER, "blue"); PropertyHandle ph = th.getPropertyHandle(StyleHandle. HIGHLIGHT_RULES_PROP); ph.addItem(hr); 16 2007 Actuate International User Conference © <list-property name="highlightRules"> <structure> <property name="operator">gt</property> <property name="backgroundColor">blue</property> <expression name="testExpr">row["CustomerCreditLimit"]</expression > <expression name="value1">100000</expression> </structure> </list-property>
Slide 17: Calling the DE API from the RE API/Report Script RE API Code IReportRunnable design = null; //Open the report design design = engine.openReportDesign("Reports/Top NPercent.rptdesign"); ReportDesignHandle report = (ReportDesignHandle) design.getDesignHandle( ); report.findElement(“table1”).drop(); beforeFactory Script reportContext.getReportRunnable(). designHandle.getDesignHandle(). findElement("table1").drop(); Simple DE API exist for use in script as well. See example. 17 2007 Actuate International User Conference ©
Slide 18: DEAPI examples • DEAPI Examples 18 2007 Actuate International User Conference ©
Slide 19: Agenda BIRT Project = Business Intelligence and Reporting Tools Project BIRT Deployment 19 2007 Actuate International User Conference ©
Slide 20: BIRT Deployment Scenarios APIs (DE API, CE API, RE API) BIRT Tag Libs Chart Tag Libs Custom Servlet Web Viewer Web Viewer Plugin J2EE AS RCP Application Standalone Application Paginated HTML, PDF, XLS, WORD, PostScript, TOC, Bookmarks, CSV 20 2007 Actuate International User Conference ©
Slide 21: BIRT Web Project 21 2007 Actuate International User Conference ©
Slide 22: Web Viewer Servlet Mappings Web Viewer Servlet Mappings frameset Use this mapping to launch the complete AJAX based report viewer. Contains toolbar, navbar and table of contents features. Run and Render task are separated. This option will also create a rptdocument file. Use this mapping to launch the viewer without the navbar, toolbar or table of contents. This mapping uses the RunAndRender task to create the output and does not support pagination and does not create a rptdocument. This mapping does use the AJAX framework to allow cancelling a report. This mapping is used to RunAndRender a report directly to an output format, or to render an existing rptdocument directly to an output format. It does not use the AJAX framework, but will launch a parameter entry dialog. This mapping is used by the designer to create a rptconfig file, when selecting the preview tab for a report that contains parameters and should not be used externally. Used internally by the viewer (frameset) when extracting the results in csv format. Should not be used externally. Hidden form created in BirtSimpleExportDataDialog.js and submitted to Servlet to process. run preview parameter download 22 2007 Actuate International User Conference ©
Slide 23: BIRT WebViewer Structure WebViewerExample logs scriptlib report webcontent birt ajax pages images styles WEB-INF lib platform plugins 23 2007 Actuate International User Conference © The default location for BIRT logs. Location for class files used in a Scripted Data Source. Default location of Report Designs JavaScript files used with the Viewer JSP Fragments used to build the Viewer Images used by the Viewer CSS files used by the Viewer Location for BIRT required Jars. BIRT required runtime plug-ins. Location for OSGi configuration files. configuration
Slide 24: Web Project Demo • Example using the Web Project 24 2007 Actuate International User Conference ©
Slide 25: WebViewer Tag Libraries Birt.tld viewer Use this tag to display the complete Viewer inside an IFRAME. This tag allows you to use /frameset and /run mappings. report Use this tag to display the report inside an IFRAME or DIV tag. This tag allows you to use /preview mapping and does not create a rptdocument. The AJAX Framework is not used. param Use this tag to set parameter values when using the viewer or report tags. This tag must be nested within the viewer or report tag. parameterPage Use this tag to launch the BIRT Parameter dialog or to create a customized parameter entry page. This tag can be used with the /frameset, /run, or /preview mappings to launch the viewer after the parameters are entered. Use this Tag within a parameterPage tag to retrieve pre-generated HTML for specific parameter control types such as radio, checkbox, dynamic or cascaded parameters. paramDef 25 2007 Actuate International User Conference ©
Slide 26: BIRT Tag Library Deployment • Automatically deployed if using a Web Project or by deploying the Web Viewer Example • Can Deploy Tag Library in separate context by: • Copy birt.tld to your /WEB-INF/tlds directory. • Copy com.ibm.icu_3.6.1v20070417.jar, viewerservlets.jar, modelapi.jar, coreapi.jar to your web-inf/lib directory. Add the following to the web.xml of your application. • • • • • • <jsp-config> <taglib> <taglib-uri>/birt.tld</taglib-uri> <taglib-location>/WEB-INF/tlds/birt.tld</taglib-location> </taglib> </jsp-config> • Use baseURL attribute to point to BIRT Context: • <birt:report id="1" baseURL="/BirtWTP" isHostPage="false" reportDesign="test.rptdesign"></birt:report> 26 2007 Actuate International User Conference ©
Slide 27: Tag Library Demo • Example Tag Library Usage Demo 27 2007 Actuate International User Conference ©
Slide 28: Custom Servlet Deployment Use Singleton to launch Design or Report Engine. Start Platform on Servlet Startup and shutdown Platform on Servlet destroy. YourServletExample logs report images WEB-INF lib platform plugins configuration The default location for BIRT logs. Default location of Report Designs Use Default location for report images PlatformServletContext See example Location for BIRT required Jars. Copy from Runtime. BIRT required runtime plug-ins. Copy from runtime. Location for OSGi configuration files. Copy from runtime. 28 2007 Actuate International User Conference ©
Slide 29: Custom Servlet Demo • Example Servlet using the Report Engine 29 2007 Actuate International User Conference ©
Slide 30: RCP Deployment • Using the BIRT Plugins in Eclipse based applications 30 2007 Actuate International User Conference ©
Slide 31: WebViewer Utility Class see RCPViewer Example • WebViewer.display() • See Example for Options. • Used with external browser or SWT Browser Widget. 31 2007 Actuate International User Conference ©
Slide 32: Using the RE/DE API Plugins in an RCP application • Do not set BIRT Home and use engines as normal. • See RCPEngine Example. • Uses SWT Browser Widget. 32 2007 Actuate International User Conference ©
Slide 33: Questions? • Resources • BIRT-Exchange.com (Examples shown in this ppt). • BirtWorld.blogspot.com • Eclipse.org/birt • Eclipse Birt News Group 33 2007 Actuate International User Conference ©

   
Time on Slide Time on Plick
Slides per Visit Slide Views Views by Location