In the last years I've seen many
astonishing BI web sites. I always asked myself what I need to do to bring my
customers such beautiful web-based BI solutions. After having much experience
with Panorama NovaView and especially the Panorama SDK I started to run some
questions in my mind: Why won't I build some re-usable puzzle pieces that can
be joined together to a web site? These pieces can be web controls that using
and even interacting Panorama views and Analysis services. Why won't publish it
as open source and give it to the BI community?
The
PanoramaBasedWebSite project is a toolkit that
contains web controls you can easily use in your ASP.NET based web site. The
project is written in ASP.NET 2.0 and C# 3.5. These web controls interacts with
Panorama views (using Panorama SDK) and Analysis Services (using AMO).
The idea is that you can take these puzzle pieces, combine them as you like in
your web site and create your good-looking BI web site with almost no
programming. The project is only in its first steps, but I believe that
publishing the design/idea is also important. This is why the first
release is already published, although it has
only two web controls so far. This is what we have so far and what I'm planning
for the future. I'll be happy to hear your thoughts/ideas:
First Release Contents
- PanoramaView web control - this is the main control of
the project and it will probably take a lot of the project's weight. The
control simply shows panorama view. For now, it doesn't do much rather
then showing a view so there's a lot of work to do for this control. It
gets two properties - BriefingBookName and ViewName. You can look at the
TODO: comments in the code to see what future plans I have for this
control.
- UpdateDatePanel web control - this control shows the
date and time when the last process of the cube was made. It can be used
in two ways: You can only set the PanoramaViewID property. The control
will extract the cube and the database name from the view and take the
update date from the cube. The other way is to set the CubeName and
DataBaseName properties.
Future Plans
- KPIView - Already working on it. Similar to
PanoramaView, but if the view shows KPI then a drilldown will be made when
the user clicks on a gauge.
- QueryList - Shows the result of MDX query. For example,
the list shows the top 10 employees of the month (in sales perspective,
for example). This list will be interactive, meaning that clicking on a
row will make a drilldown, drill to data or replace the list with another
query results.
- DimensionPicker - Gives the user the ability to pick
members of a dimension/hierarchy. After selecting, the control will slice
all the views on the page (or only predefined set of views).
- DatePicker - Same as DimensionPicker but for dates. It
will show a calendar to the user and clicking on a date will perform a
slice in the views.
The use of the controls in your aspx
pages is very easy. You can see for yourself:
<PanoramaControls:UpdateDateLabel ID="UpdateDateLabel1"
runat="server" PanoramaViewID="PanoramaView1" />
<PanoramaControls:PanoramaView
ID="PanoramaView1" runat="server" Width="100%" Height="80%" BriefingBookName="MikysBook" ViewName="MyFirstView" />
I'll be happy to read your thoughts
and ideas about this project. There will be more to come. Stay Tuned.