Mashups have been around as a concept for many year, and as a term for a few. The term mashup became very popular when google released its maps API. Suddenly, everyone had maps mashed up on their web sites. The BI vendors were quick to catch on, and provide ways (sometimes easy, sometimes not so much) to integrate external mashed up content into their html based reporting applications. And while you don’t hear about mashups so much these days, I still think they are a very powerful, inventive and cost effective way to produce powerful applications. The concept of combining functionality and content from different web based applications and providers and mashing it into a coherent and new kind of application works great in the context of a BI app or a report. In the example below, I mashedup a google map and a custom google search into a BusinessObjects web intelligence (webi) report. The resulting report is interesting, fun and contains functionality that neither app would have been able to provide on its own, making it unique and fresh.
The top left corner of the report contains a regular block of data from the e-Fashion universe (a sample database and semantic model that ships with the product). Next to it, is an embedded google map, that includes the city and sales revenue. On the left bottom corner is a custom google search on the page that allows the users to search the local web site (boston.com) and finally on the lower right corner is a regular webi chart with sales, discounts and margins data.
What could have been another boring tabular report is now teaming with interactivity and life, begging the users to explore and understand the information presented and look beyond.
The map was embedded in the webi report using an iframe that references a jsp file that was created on the businessobjects server. The jsp file takes the address parameters from the webi report, passes them to the maps api, along with the sales data, and creates the map. The custom search uses a similar concept, leveraging an iframe to embed the custom search div content.