1 Actuate Corporation © 2007 Give Users a Web Portal for Creating Ad-hoc Reports Virgil Dodson Evangelist, Actuate / BIRT Exchange Blog: Skype: virgil_dodson Twitter: birtexchange YahooIM: virgil_at_actuate
2 Actuate Corporation © 2009 Simplicity that makes simple reports easy Power to create very complex report layouts BIRT Business Intelligence and Reporting Tools Makes all report 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 reporting solutions A New Generation of Reporting and Data Visualization Technology
3 Actuate Corporation © 2009 BIRT Deployment Options
4 Actuate Corporation © 2009 BIRT Runtime
5 Actuate Corporation © 2009 BIRT Report Engine The BIRT Report Engine allows you to write Java code to read in report designs, apply any parameters etc, and output a report. Used in standalone Java applications RCP applications Batch applications Used in web applications Sample code at BIRT Exchange
6 Actuate Corporation © 2009 Report Engine API Overview REAPI supports the following operations: Discover report parameters Get default parameter values Generate report documents. (rptdocument) Generate report output (PDF, HTML, DOC, XLS, PPT, PS) Fetch images and charts for a report Export report data as CSV Retrieve Table Of Contents, Bookmarks
7 Actuate Corporation © 2009 BIRT WebViewerExample The BIRT Web Viewer is an open source example implementation of a web application for running and viewing BIRT reports and uses the Report Engine API To view the report in the viewer complete with toolbar, navigation bar and table of contents features, use: To view the report without the toolbar, navigation bar and table of contents features, use: Other included Servlets are preview, document, output, extract
8 Actuate Corporation © 2009 BIRT WebViewerExample (cont.) To go directly to an output format like PDF, use: f To get only a chart or table displayed as a reportlet, use: ark=birtchart&__isreportlet=true
9 Actuate Corporation © 2009 without toolbar with toolbar
10 Actuate Corporation © 2009 as PDF as reportlet
11 Actuate Corporation © 2009 Evolution of an Application 1 “Just give me a list of customer sales and the best performing city and state.”
12 Actuate Corporation © 2009 Evolution of an Application “ We also need to dynamically link the customers’ to another report” 1 2
13 Actuate Corporation © 2009 Evolution of an Application “We’d like to slice this by sales rep, too, grouped alphabetically.” 1 2 3
14 Actuate Corporation © 2009 Evolution of an Application “Actually, we’d like to be able to produce a completely separate report for each rep.”
15 Actuate Corporation © 2009 Evolution of an Application “Maybe they should be able to change their view by themselves.”
16 Actuate Corporation © 2009 Evolution of an Application “We have quite a few users using this system now and there’s some fairly sensitive data in there...”
17 Actuate Corporation © 2009 Evolution of an Application “We need to schedule these reports to run every other week.”
18 Actuate Corporation © 2009 Evolution of an Application “We need to track which users have used the system.” 4
19 Actuate Corporation © 2009 “They need to set up their own reports with new data.” Evolution of an Application
20 Actuate Corporation © 2009 Evolution of an Application “We need these dashboards linked to our business process” “We need to be able to approve or reject the changes” “We need a single version of the truth” “We need to analyze the information in Excel” “We don’t want to be waiting around for the results” “We don’t want to be re-typing information from these dashboards into our other applications…can we export?” “We need to be able to see the underlying detail” “We need to print the dashboard out to take into meetings” “We need the output as Excel” “We need Flash charts” “We need to easily find stuff within the dashboard” “We need to know who’s looked at the information” “We need a simple way to see the entire contents of the detail report” “We need a view that looks like an existing flow chart” “We need these dashboards in multiple languages”
21 Actuate Corporation © 2009 Report Integration and Deployment User Requirements Report browsing and management Easily add additional reports Folder based storage and management of reports Search and filtering lists of reports Report versioning and automated deletion Report descriptions and “headlines” Report generation and scheduling On-demand, “run now and I’ll wait” report generation On-demand, “run now in background” report generation Scheduled report generation (one-time, recurring…) Event-based scheduled report generation Sequenced (daisy-chained) scheduled report generation Easy to use parameter collection Report sharing, distribution and notification Automatic notification when report is completed Attached report to notification Share reports in any folder with other users Notification subscriptions (channels)
22 Actuate Corporation © 2009 Report browsing, generation and scheduling User interface integrated into application experience Reports and integration are branded with application Parameter collection and management Security Secure reports individually or in folders User and role-based security support Integration with application single-signon Integration with application security model Scalability and high availability Scalable for large reports (many pages) Scalable for large numbers of reports Scalable for large numbers of users Clustering support High availability and failover Report Integration and Deployment Integration Requirements
23 Actuate Corporation © Actuate BIRT Product Line Actuate Java Components Components that provide end user interactivity, ad-hoc BIRT reporting, report browsing, etc. Actuate BIRT Designer Desktop tools for professional IT developers and power users Open Source BIRT plus Flash charts and gadgets, one-click installer and data adapters iServer Express Ready-to-go deployment servers for BIRT Reports Scheduling, security, notifications, report management, …
24 Actuate Corporation © Actuate BIRT Designer
25 Actuate Corporation © Actuate Java Components A Web Application (WAR file) that contains: 1. Actuate BIRT Viewer – enables end users to view BIRT reports (**included with Actuate BIRT Designer License) 2. Interactive Viewer – enables end users to view BIRT reports, as well as analyze and personalize a BIRT report to meet their own needs 3. BIRT Report Studio – empower business users to use a browser to design ad-hoc reports and view BIRT reports 4. Actuate BIRT Deployment Kit – enables end users to view BIRT reports and provides file/folder browsing, configurable caching
26 Actuate Corporation © Actuate BIRT Viewer Runtime support for BIRT reports with Flash content, Report documents as data sources Repository authorization integration, Authentication (IPSE based) integration, Client side scripting Progressive Viewing, Temp file/transient store management
27 Actuate Corporation © Actuate Interactive Viewer Hide/show elements Custom calculations Show/hide columns Formatting text and currencies Conditional formatting Modify labels Toolbar Table of contents Page navigation Printing Export data Save Grouping Sorting Simple and advanced filters
28 Actuate Corporation © Actuate BIRT Report Studio User-selected Information Object Calculated column Data styles Template objects Drag- and-drop palette Format text and currencies Toolbar Cut/Copy/Paste Delete Undo/Redo Chart Table Insert Group Filter Prompt Format Run Print Export Grouping and sorting Easy to use… end-users do not know SQL… iterative development
29 Actuate Corporation © Actuate iServer Express Deploy, Manage, Schedule, Run and Share BIRT Reports Quickly and Easily Web-based user interface to run, view and share reports On-demand, time and event based scheduling Automated distribution of reports User interface to collect report parameters Secure reports with User and Role security Report management, versioning and control Variety of application integration options Web Services Interface
30 Actuate Corporation © 2009 iServer Express iServer Express iServer Express Architecture Data Sources Data Sources RelationalFlat FilesERPLegacyEJBXML Metadata Services Web Services API Report Storage BIRT Report Engine Administration & Management User Privileges & Security Roles Document versioning Notification Job Scheduling iPortal Turn-key UI for end-users Based on JSP pages and servlets Customizable and personalizable via skins, functionality levels, modify JSPs iPortal Turn-key UI for end-users Based on JSP pages and servlets Customizable and personalizable via skins, functionality levels, modify JSPs Standard Viewer Interactive Viewer Business Report Studio Management Console Turn-key UI for administrators and advanced end-users Based on JSP pages & servlets Not customizable Management Console Turn-key UI for administrators and advanced end-users Based on JSP pages & servlets Not customizable Configuration Console JSP page for basic system configuration Configuration Console JSP page for basic system configuration *NEW* JavaScript API
31 Actuate Corporation © 2009 Integration Scenarios 1. Standalone Skins-based customization (colors, logos) Customizable JSP UI No integration needed iServer Express Report Server User 2. URL Access Hyperlinks from application pages to launch reports Easy integration with web pages User URL App Server (Java, PHP, …) 3. Web Services API to access services, get content Covers 100% of iServer Express functionality Used for more granular, controlled integration Complete WSDL for Java access iServer Express Report Service User Web Services App Server (Java, PHP, …) iServer Express Report Service 4. Web 2.0 JavaScript API API to include reporting into any web page iServer Express Report Service User Web Services App Server (Java, PHP, …)
32 Actuate Corporation © 2009 Integration: URLs Common All URLs listed are relative. Absolute URLs should be prefixed with: : / The following parameters should be added to all URLs serverURL= : volume=
33 Actuate Corporation © 2009 Integration: URLs (cont.) Execute Report Transient (does not save) /executereport.do __executablename={ }/ {; } __progressive=true __saveOutput=false __wait=wait invokesubmit=true =
34 Actuate Corporation © 2009 Integration: URLs (cont.) Execute Report & Save /executereport.do __executablename={ }/ {; } __progressive=true __saveOutput=true __wait=wait __outputName={ }/ __versionName= __replace= invokesubmit=true =
35 Actuate Corporation © 2009 Integration: URLs (cont.) View Report with Navigation Bar /iv __report={ }/ {; } View Report without Navigation Bar /iv __report={ }/ {; } __ivcmd=run
36 Actuate Corporation © 2009 Integration: Web Services API IDAPI - Actuate Information Delivery API Integrating and administering Actuate iServer Express SOAP messaging Supports: uploading and downloading files generating a report and scheduling report generation sending an notification when a job completes managing the users and security roles in an Encyclopedia volume …
37 Actuate Corporation © 2009 Integration – JavaScript API function acload() { actuate.load('viewer'); var reqOps = new actuate.RequestOptions( ); reqOps.setRepositoryType('Enterprise'); reqOps.setIServerUrl(' reqOps.setVolume('BIRT Exchange'); actuate.initialize( ' null,null,afterInit ); } …
38 Actuate Corporation © 2009 Integration – JavaScript API (cont) function afterInit() { salesByQtrChart = new actuate.Viewer("SummaryDiv"); salesByQtrChart.setReportName("/LinkedExamples/JsapiReports/SalesByYear2.rptdocu ment"); salesByQtrChart.setReportletBookmark("TotalSalesFlashChart"); salesByQtrChart.setWidth(650); salesByQtrChart.setHeight(300); var uiopts = new actuate.viewer.UIOptions(); uiopts.enableToolBar(false); uiopts.enableScrollControl(false); salesByQtrChart.setUIOptions(uiopts); salesByQtrChart.submit(); }
39 Actuate Corporation © 2009
40 Actuate Corporation © 2009 Demo
41 Actuate Corporation © 2009 BIRT Exchange Community Site Centralized Knowledge Hub for BIRT Developers Access Downloads, Demos, Tutorials, Tips & Techniques, Webinars Easy for users to contribute content, share knowledge Enables developers to be more productive and build applications faster Download Documentation Software Share Knowledge Reports, Code, Tips Forums Find Search, Sort Rate, Comment
42 Actuate Corporation © 2007 Give Users a Web Portal for Creating Ad-hoc Reports Virgil Dodson Evangelist, Actuate / BIRT Exchange Blog: Skype: virgil_dodson Twitter: birtexchange YahooIM: virgil_at_actuate