+ All Categories
Home > Documents > Creating Data Driven Web Apps with BIRT

Creating Data Driven Web Apps with BIRT

Date post: 14-Feb-2016
Category:
Upload: myrna
View: 29 times
Download: 1 times
Share this document with a friend
Description:
- PowerPoint PPT Presentation
Popular Tags:
26
THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT
Transcript
Page 1: Creating Data Driven Web Apps with BIRT

1Actuate Corporation © 2010

THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY THE BIRT COMPANY

Page 2: Creating Data Driven Web Apps with BIRT

2Actuate Corporation © 2010

Michael WilliamsBIRT Evangelist, Actuate, BIRT Exchange

Creating Data Driven Web Apps with BIRT

Page 3: Creating Data Driven Web Apps with BIRT

3Actuate Corporation © 2009

Agenda

• Introduction• Designing Reports

• Designer• APIs

• What Now?• BIRT Viewer• Report Engine (Java)• iHub

• Plug In 2 BIRT – Spring 2013• Questions

Page 4: Creating Data Driven Web Apps with BIRT

4Actuate Corporation © 2009

Introduction

Page 5: Creating Data Driven Web Apps with BIRT

5Actuate Corporation © 2010

Actuate Launches the BIRT Project

AUGUST

2004

Actuate Joins Eclipse Foundation

as Strategic Developerand Board Member

Actuate proposed and started

BIRTBusiness Intelligence

and Reporting Tools Project

… a top-level Eclipse project Adds BI and Reportingas Open Source Project

Professional open sourcePrimary development resources

funded by Actuate

Contributions from many sourcesIBM, Innovent Solutions and community

Page 6: Creating Data Driven Web Apps with BIRT

6Actuate Corporation © 2010

Simplicitythat makes

simple layouts easy

Powerto create

very complexlayouts

BIRT

Business Intelligence and Reporting Tools

• Makes all data-driven content development easy• Modern, web-page design metaphor• Open and standards-based• Flexible with rich programmatic control• Full support for libraries and reuse• Foundation for a range of solutions

A New Generation of Data Visualization Technology

Page 7: Creating Data Driven Web Apps with BIRT

7Actuate Corporation © 2009

Designing Reports

Page 8: Creating Data Driven Web Apps with BIRT

8Actuate Corporation © 2009

Eclipse Based Designer

Page 9: Creating Data Driven Web Apps with BIRT

9Actuate Corporation © 2010

BIRT Example Key Capabilities

Very Simple to Very Complex Layouts• Listings, cross-tab, dashboard, pixel-

perfect, charts …• Grouping, advanced aggregations, sub-

totals, calculations• Multi-section and sub-reports• Conditional sections and logic• Full programmatic control/scripting• Embedded images…

Comprehensive Data Access• SQL databases, Web Services, Flat

Files, XML, scripted data sources …• Multiple data sources in one design…

Output Formats• HTML, PDF, Excel, Word, PowerPoint…• Internationalization of labels and text• Bi-Directional language display

Re-use and Developer Productivity• Library support for publishing and

sharing components• Leverages common standards (SQL,

HTML, JavaScript, Java, XML)• Cascading Style Sheets• Built-in debugger…

Interactivity and Linking• Data driven hyperlinks• Drill-through charts and graphics…

Multiple Usage and Productivity Aids• Graphical layout and design• Query & metadata editors• Formatting Builder • Grouping Builder• Customizable cheat sheets and

templates…

Page 10: Creating Data Driven Web Apps with BIRT

10Actuate Corporation © 2009

Designing Reports

Quick Designer Tour

Page 11: Creating Data Driven Web Apps with BIRT

11Actuate Corporation © 2009

APIs

Design Engine API (DE API):Used to create custom reports, create custom report designer tools, or to explore or modify BIRT report designs. It can also be called within BIRT script to modify the report at runtime. The BIRT Designer is built using this API.

Chart Engine API (CE API):Can be used to create and render charts separately from BIRT. It can also be called in the chart script to modify a chart at runtime.

Data Engine API:Used to define Data Sources and Data Sets, and to prepare an IQueryDefinition. It can also be used in script to process a Data Set’s data at runtime.

Page 12: Creating Data Driven Web Apps with BIRT

12Actuate Corporation © 2009

What Now?

Page 13: Creating Data Driven Web Apps with BIRT

13Actuate Corporation © 2009

Multiple Deployment Options

BIRT Design

BIRT Engine and APIsBIRT onDemand

BIRT iHub

Page 14: Creating Data Driven Web Apps with BIRT

14Actuate Corporation © 2009

BIRT Web Viewer

Copy WebViewerExample from the runtime download to the application server and rename it “birt”

Page 15: Creating Data Driven Web Apps with BIRT

15Actuate Corporation © 2009

BIRT Web Viewer URLs

With viewer toolbar, pagination, etc.:http://localhost:8080/birt/frameset?__report=reportName.rptdesign

As a straight HTML output:http://localhost:8080/birt/run?__report=reportName.rptdesign

Other servlet mappings:preview, document, output, extract

URL parameters include:

id title showtitle toolbar navigationbar locale

format report document parameterpage pagerange fittopage

svg isnull islocale masterpage resourceFolder bookmark

rtl page overwrite

Page 16: Creating Data Driven Web Apps with BIRT

16Actuate Corporation © 2009

BIRT Web Viewer URLs

Output to PDF:http://localhost:8080/birt/frameset?__report=reportName.rptdesign&__format=pdf

To display a single report item as a reportlet:http://localhost:8080/birt/run?__report=reportName.rptdesign&__bookmark=myTable&__isreportlet=true

Page 17: Creating Data Driven Web Apps with BIRT

17Actuate Corporation © 2009

BIRT Viewer Tag Library

Example JSP to embed viewer:<%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%><%@ taglib uri="/birt.tld" prefix="birt" %><!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html>

<head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>My Report - JSP</title>

</head><body>

<birt:viewer id="birtViewer" reportDesign=“reportNamerptdesign"pattern="frameset"height="450"width="700"format="html"></birt:viewer>

</body></html>

http://localhost:8080/birt/dashboard.jsp

Page 18: Creating Data Driven Web Apps with BIRT

18Actuate Corporation © 2009

BIRT Viewer Tag Library

<%@ page language="java" contentType="text/html; charset=ISO-8859-1"pageEncoding="ISO-8859-1"%><%@ taglib uri="/birt.tld" prefix="birt" %><!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html>

<head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">

</head><style type="text/css">

. class1 { background-color:#ff0000; color: #ffffff; }</style><body>

Parameter Page 1<br><birt:parameterPage

id="report1" name="page1"reportDesign="cascade_report.rptdesign"isCustom="true"pattern="frameset">

Cascading Parameter1: <birt:paramDef id="5" name="Country" /><br><br> Cascading Parameter2: <birt:paramDef id="6" name="City"/><br><br> Cascading Parameter3: <birt:paramDef id="7" name="Customer" cssClass="class1"/><br><br> <input type="submit" name="submit" value="Sumbit form"/><br><br>

</birt:parameterPage><br>

</body></html>http://localhost:8080/birt/cascade_report.jsp

Page 19: Creating Data Driven Web Apps with BIRT

19Actuate Corporation © 2009

Report Engine API (RE API)

static void executeReport() throws EngineException{ IReportEngine engine=null; EngineConfig config = null;try{ config = new EngineConfig( ); config.setLogConfig("C:\\BIRT_231\\logs", java.util.logging.Level. FINEST); Platform.startup( config ); IReportEngineFactory factory = (IReportEngineFactory) Platform .createFactoryObject( IReportEngineFactory.EXTENSION_REPORT_ ENGINE_FACTORY ); engine = factory.createReportEngine( config ); IReportRunnable design = null; design = engine.openReportDesign("C:\\BIRT_231\\designs\\param .rptdesign"); IRunAndRenderTask task = engine.createRunAndRenderTask(design); task.setParameterValue("ordParam", (new Integer(10101))); task.validateParameters(); PDFRenderOption options = new PDFRenderOption(); options.setOutputFileName("my_report.pdf"); options.setOutputFormat("pdf"); task.setRenderOption(options); task.run(); task.close(); engine.destroy();}catch( Exception ex){

ex.printStackTrace();}finally{ Platform.shutdown( );}

Page 20: Creating Data Driven Web Apps with BIRT

20Actuate Corporation © 2009

RE API with JSF

public class birt2jsf {String executeReport(String param) throws EngineException{IReportEngine engine=null;EngineConfig config = null;

try{config = new EngineConfig( );config.setLogConfig("/logs", java.util.logging.Level.FINEST);Platform.startup( config );IReportEngineFactory factory = (IReportEngineFactory) Platform.createFactoryObject( IReportEngineFactory.EXTENSION_REPORT_ENGINE_FACTORY );engine = factory.createReportEngine( config );IReportRunnable design = null;design = engine.openReportDesign("E:/apache-tomcat-6.0.36/webapps/JSF_2/test.rptdesign"); IRunAndRenderTask task = engine.createRunAndRenderTask(design); task.setParameterValue("Country", param);task.validateParameters();HTMLRenderOption options = new HTMLRenderOption();ByteArrayOutputStream outs = new ByteArrayOutputStream();options.setOutputStream(outs);options.setImageHandler(new HTMLServerImageHandler());options.setBaseImageURL("images");options.setImageDirectory("E:/apache-tomcat-6.0.36/webapps/JSF_2/images");options.setEmbeddable(true);options.setOutputFormat("html");task.setRenderOption(options);String output;task.run();output = outs.toString();task.close();engine.destroy();return output;

}catch( Exception ex){ex.printStackTrace();return "Error";

}finally{ Platform.shutdown( ); RegistryProviderFactory.releaseDefault();}}

}

Page 21: Creating Data Driven Web Apps with BIRT

21Actuate Corporation © 2009

RE API with JSF

@ManagedBean(name="birtBean")@SessionScopedpublic class BirtBean implements Serializable { private static final long serialVersionUID = 1L;private String name;

public String getReport() {birt2jsf report = new birt2jsf( );String reportHTML = null;try {reportHTML = report.executeReport(name);

} catch (EngineException e) {e.printStackTrace();}

return reportHTML;} public String getName() {return name;}

public void setName(String name) {this.name = name;}}

Page 22: Creating Data Driven Web Apps with BIRT

22Actuate Corporation © 2009

RE API with JSF

<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml" xmlns:f="http://java.sun.com/jsf/core" xmlns:h="http://java.sun.com/jsf/html">

<h:head><title>BIRT JSF 2.0 Example</title>

</h:head><h:body>

<h3>Enter Country</h3><h:form><h:inputText

value="#{birtBean.name}"></h:inputText><h:commandButton value="View Report" action="page-a">

</h:commandButton><h:outputText value="#{birtBean.report}" escape="false"/></h:form>

</h:body></html>http://localhost:8080/JSF_2/page-a.jsf

http://localhost:8080/JSF_2/page-a.jsf

Page 23: Creating Data Driven Web Apps with BIRT

23Actuate Corporation © 2009

iHub and JSAPI

<html><head><script type="text/javascript" language="JavaScript" src="http://localhost:8900/ActuateJavaComponent/jsapi"></script></head><body onload="init();">

<h1>Simple Viewer</h1><div id="myDivContainer" style="border-width: 1px; border-style: solid;"></div><script type="text/javascript" language="JavaScript">

var myViewer;function init(){

actuate.load("viewer");actuate.initialize( "http://localhost:8900/iportal/", null, null, null, createViewer );

}function createViewer(){

myViewer = new actuate.Viewer( "myDivContainer" );myViewer.setReportName("/Mashup/QuickReport.rptdesign" );myViewer.submit();

}</script>

</body></html>

Page 24: Creating Data Driven Web Apps with BIRT

24Actuate Corporation © 2009

Plug In 2 BIRT – Spring 2013

Contest runs from March 28, 2013 to April 30, 2013

Plug-In CategoriesOpen Data Access (ODA) DriversOutput EmittersReport Item ExtensionsChart Extensions

New iPad for Top 3 Plug-Ins!

Visit BIRT Exchange for full contest details

Page 25: Creating Data Driven Web Apps with BIRT

25Actuate Corporation © 2009

Questions?

Page 26: Creating Data Driven Web Apps with BIRT

26Actuate Corporation © 2010

Downloads and Getting StartedBIRT Exchange Community Site

Centralized hub for BIRT developers• Access demos, tutorials, tips and techniques, documentation…• Enables developers to be more productive and build applications faster• Marketplace for applications

Explore• Search/sort• Rate, comment• Forums

Download• Documentation• Software• Examples

Contribute• BIRT designs, code• Technical tips• Applicationswww.birt-exchange.org


Recommended