BIRT Evangelist Blog

If you will be in or around the Mannheim, Germany area on November 21, I encourage you to take some time to attend the next Mannheim BIRT User Group meeting (BUG Mannheim). It should be a great experience for all participants where you'll be able to connect with other BIRT users in the area as well as share and learn some cool things about BIRT!

The meeting will take place on November 21, 2013 starting at 6pm German time at OIO http://www.oio.de in Mannheim, Weinheimer Strasse 68. Food and drink will be available and attendance is free.For directions see: http://goo.gl/hTVYK

By joining our TechTalk community you will be kept abreast of all the latest happenings in the world of BIRT. We’ll have experts reveal tips and tricks, share best practices, give you a sneak peek into new product features, and more.

Can’t make it? No problem. All recordings will be posted to our site so you don’t have to miss a single episode!

In our first 30 minute TechTalk - Introducing the Free BIRT Viewer Toolkit - Enhance the Way Your Users View BIRT Designs - on Wednesday, November 13, 2013 at 11am PT we’ll cover how the newly launched BIRT Viewer Toolkit renders BIRT-based data visualizations and reports in a more powerful and user-friendly way, enhancing the experience for your internal users or in your externally-facing application.Attend this TechTalk to learn:

What is the BIRT Viewer Toolkit?

How does the Viewer Toolkit enhance the viewing experience of your application?

How can you easily integrate the Viewer Toolkit into your existing application?

Have you ever wondered just how much time and effort BIRT can save you in developing information driven, customer facing web and mobile applications? This "docu-drama" compares the experience of two enterprise developers creating a mission critical application, one who uses BIRT, and one who insists on hand coding in Java.

Soon after the MongoDB noSQL-style database system started becoming popular, the BIRT community started asking for ways to get at that data. The good news for developers using BIRT, is that BIRT was designed with data source extensibility in mind. There are several ways to connect to MongoDB as a data source within BIRT. This post will show how to connect to MongoDB with your existing BIRT version, plus several screenshots from the new MongoDB ODA driver being added to the next major release of BIRT due out this summer.

BIRT Scripted Data Source Connection to MongoDBThe BIRT Scripted Data Source is like the ?silver-bullet? into any data source. If you cannot connect to your data with one of the built-in BIRT data sources, then the Scripted Data Source may be the answer. It uses the server-side RHINO JavaScript engine allowing you to write a bit of Java or JavaScript as a simple wrapper to your data. As long as you can get to your data in your application, then it?s likely the Scripted Data Source can get that data into BIRT.

To create a connection to MongoDB, you first need to add the MongoDB JAR to your project classpath. Now, you just add a bit of JavaScript to the following methods to make it work.

Community Created BIRT Plug-Ins for MongoDBPart of BIRT?s extensibility allows for external plug-ins to be dropped into existing versions of BIRT. There have been several community developed BIRT plug-ins to access MongoDB data created over the years. At the time of this post, a quick search in the BIRT Exchange DevShare shows 3 different MongoDB ODA Driver plug-ins to choose from.

New MongoDB ODA Driver for BIRTThe next major release of BIRT will include a new data driver for accessing MongoDB. This means, instead of creating your own connection to MongoDB in a scripted data set, you can now simply select MongoDB from a list of available choices.

Next, fill out the database credentials and connection information. This information can be hard-coded in each specific field or the connection information can be dynamically generated at runtime using BIRT?s Property Binding feature.

Once you have created a connection, you can now create a new Data Set to query for specific data. BIRT supports the MongoDB operations that return data. This includes the Query commands, the Aggregate command, MapReduce, and select Database Commands that return data.

Creating a MongoDB Data Set in BIRTThe new MongoDB Data Set dialog allows you to choose the data Collection and fields you want returned from the query. Java Objects can be flatted out to bring in just the data elements, or the entire object can be brought back for further processing. Select Finish and we can now preview the results of the MongoDB query.

Using a MongoDB MapReduce Command in BIRT

Using a MongoDB Aggregate Command in BIRT

Using a MongoDB Database Command in BIRT

BIRT supports a subset of the MongoDB Database Commands that return data. The following is a list of the supported database commands from within BIRT.

According to Wikipedia, Big data is a collection of data sets so large and complex that they are difficult to process using on-hand database management tools or traditional data processing applications. Big data usually includes data sets with sizes beyond the ability of commonly used software tools.

It?s a good thing BIRT is not your traditional data processing application!

Eclipse BIRT was built with data source extensibility in mind. BIRT does this by leveraging the Eclipse Data Tools Project (DTP) and more specifically, the Open Data Access (ODA) framework. This framework allows new data sources, like recent big data sources, to be easily added to BIRT as needed. This post walks through creating a connection to Hadoop in order to visualize the data within BIRT.

Using HQL to query Hadoop dataBIRT provides an out-of-the-box driver that allows access to Hadoop Data through Hive using Hive Query Language (HQL). Hive is a data warehouse infrastructure built on top of Hadoop for providing data summarization, query, and analysis. To retrieve data from Hadoop, you write a query in HiveQuery Language (HQL). HQL supports many of the same keywords as SQL, for exampleSELECT, WHERE, GROUP BY, ORDER BY, JOIN, and UNION.

A Hive query is executed by a series of automatically generated MapReduce jobs.Alternatively, you can use the TRANSFORM statement to specify scripts that translate intoMapReduce functions in Hadoop. These scripts can be written in virtually any programming language. For example, the following HQL query specifies the script file mytest.py, written in the Python programming language.

Now, you can create a data set by writing an HQL query. If your query uses TRANSFORMstatements that reference script files, use the Add File Statement property to add files to theHadoop distributed cache. Type a semicolon-separated list of Add File commands. This property can be overridden by the data source or data set, using property binding or script. Type the HQL query in the query text area of the data set editor as shown below.

Complex HQL Subquery Example

Get JSON Object Example

Regular Expression Example

HQL Hints Example

Getting the Important Data to Stand OutYou can create multiple data sets using the same steps above, even joining data sets within BIRT. Once you have your big data connections and queries defined, you can start using the data to define your report within BIRT. At this point, you can simply drag your data sets onto the report canvas and start formatting.

But, being able to store more data brings its own new sets of challenges. The more data collected typically means more data that needs to be analyzed and displayed. This means, the important data really needs to stand out. BIRT supports this with several out-of-the-box features.

HighlightingWith the Highlighting feature in BIRT, you can set up formatting rules that are based on expressions. You can create simple to quite complex expressions in order to highlight the data. Highlighting can be added to grids, tables, columns, rows, data elements, labels, charts, and images.

VisibilityThe Visibility feature allows you to use expressions to decide which areas of BIRT are visible. This is quite useful for allowing certain groups of people to see only their data but can also be used to hide whole areas based on the data discovered. Visibility can also be applied to grids, tables, columns, rows, data elements, labels, charts, and images, but you can also have seperate visibility rules based on the final output, like PDF, HTML, etc.

Try it YourselfThe Hive/Hadoop data source has been available since BIRT 3.7 and can be downloaded as part of the Eclipse BIRT Designer from eclipse.org/birt or BIRT Exchange.

The popular Getting Started with BIRT DZone Refcard has been updated. The BIRT DZone Refcard is the 50,000 view of the BIRT project from a developers perspective. It briefly explains the BIRT project in terms of components, select capabilities and features. It's just enough information to get you interested in BIRT and just enough detail to get you started.

The latest version has been updated to support BIRT 3.7 and includes additional information on BIRT Syles, Expressions and Scripting.

BIRT Exchange will once again be sponsoring the EclipseCon 2012 Developer Conference. This year the conference will be held in Reston, VA (Washington DC area) from March 26th-29th.

There are 3 BIRT Sessions in this years EclipseCon conference program:

What is BIRT? Quick Jumpstart (presented by Virgil Dodson)This session introduces BIRT and looks at how you can leverage BIRT to quickly create data-driven reports, web pages, and compelling information visualizations using its visual drag-and-drop design environment. This session provides a great orientation to the BIRT project and technology and how it might benefit your applications.

Extending BIRT with Plug-ins (presented by Michael Williams)This session will show off several new plug-ins created by the community from a recent BIRT plug-in contest and also show step-by-step use of the ODA wizard to create a new BIRT data source and show where to find current plug-ins in the source code to use as a starting point for creating your own BIRT plug-ins faster. Attendees will leave this talk with an understanding of BIRT plug-ins and the various ways to extend BIRT.

Introduction to BIRT (by John Ward)This tutorial will walk users through the BIRT environment and guide them through building their first few reports using the BIRT reporting tool

BIRT and Big DataPick up a whitepaper in the BIRT Exchange booth with step-by-step instructions on how to connect, access and display Hadoop data using HIVE Query Language (HQL) within BIRT-based applications.

Contests and PrizesThere will be lots of random giveaways to booth visitors, and we?ll announce a developer contest where we?ll be awarding three (3) new iPads.

After the success of our recent BIRT plug-in contest, we started thinking about another contest to keep the great BIRT community contributions coming in. We wanted a contest with a low barrier of entry allowing more users of BIRT, even new ones, to get involved. What we came up with is the 'BIRT Style Contest'. The contest allows BIRT users to show off their creative side by submitting a BIRT style example to the BIRT Exchange DevShare or Marketplace.

Actuate will award a Kindle Fire to each of the best three style examples submitted to either DevShare or the BIRT Exchange Marketplace between January 9, 2012 and February 9, 2012.

Styles are used within BIRT designs allowing you to create richly formatted web content. These styles can be applied directly within the BIRT Designer, imported from existing CSS stylesheets, and referenced at runtime to match your existing web application look and feel. Styles can also be applied dynamically based on parameters or scripting creating a customized experience for the user.

Some BIRT style examples might include:

Clever use or colors (seasons, team colors)

Style applied dynamically based on time of day, or year.

Style applied based on external data like weather or regional info

Your unique BIRT style example

Any DevShare submission that makes use of a BIRT style will be considered for this contest.

There are several open positions at Actuate but a couple of these positions may be of interest to the BIRT Exchange developer community. Actuate is looking for developers who are familiar with BIRT to fill the following roles.

Marketing Applications DeveloperThe Marketing Applications Developer will create and maintain BIRT-based application content for demonstrations, proofs of concept, and deployment to the BIRT onDemand hosted reporting application platform and service from Actuate. This high-visibility position requires a broad base of experience in Business Intelligence, application development, Internet infrastructure, cloud deployment (in Amazon AWS) and security, application hosting and integration, and Java development. The ideal candidate will also possess deep knowledge of databases, data warehouses, BIRT, Eclipse, Actuate iServer, and its configuration and management in large-scale, highly available environments.

Customer Support Engineer The Customer Support Engineer provides accurate, timely technical support to Actuate Software customers primarily via the telephone and E-mail. The Engineer will deal with support issues that are complex in nature, carry differing priorities and must be addressed within predetermined service levels, so the Engineer must be adept at balancing multiple priorities. In addition, the Customer Support Engineer will be handling pre-sales support calls, so must have an orientation toward sales as well. The callers will expect enterprise-level support, therefore the Engineer will need to be well-versed technically, and fully understand customer service concepts. Other objectives are to contribute to the development of the automated, self-help tools; to collect and report upon information gathered from incidents; and to interface with Sales, Marketing, QA/Test and others as necessary. In addition, a Customer Support Engineer will carry out projects as assigned by the management staff, cooperate with other Customer Support Engineers in carrying out their day-to-day duties, and represent Actuate Software in a visibly supportive manner.

If you want more information about these jobs, contactActuate HR: Lisa Yakushi, lyakushi@actuate.com, 650-645-3413

There are several BIRT sessions this year at EclipseCon. Below is a list of BIRT related sessions that should give anyone a jumpstart to learning BIRT. If you are attending and interested in BIRT then it is a good idea to print this page to take with you.