Click here to Skip to main content
65,938 articles
CodeProject is changing. Read more.
Articles
(untagged)

Dundas Dashboard: A Business Intelligence Solution Built With Developers In Mind

8 Sep 2010 1  
Dundas Dashboard is a turnkey Silverlight data visualization solution that lets companies create interactive dashboards and scorecards, all in a rich internet application (RIA) environment. This article will show the many powerful options for developers to customize and extend to get exactly what t

This article is in the Product Showcase section for our sponsors at CodeProject. These articles are intended to provide you with information on products and services that we consider useful and of value to developers.

Introduction – What Is Dundas Dashboard?

When we started working on Dundas Dashboard, our goal was to develop a web-based business intelligence solution facilitating the rapid creation of fully customizable, interactive business dashboards and scorecards; this was something that historically involved the use of components, Visual Studio, coding and a whole lot of hard work. With Dundas Dashboard, developers can get more done in less time.

(Download a full, non-timed-out evaluation of our dashboard software today)

Before Dundas Dashboard, our consulting group was successfully building custom performance dashboards for clients and we discovered we were performing many tasks repeatedly - this was costing us a lot of time. (These tasks included authentication, data binding, design and layout, interactivity, publishing, etc.) There simply wasn’t a platform or framework available to make this easier, both from a developer's and a designer’s perspective.

With Dundas Dashboard, we have automated many of these tasks, as well as our successful workflow for dashboard creation – all in a slick Silverlight 4-based web application. We made the platform with developers in mind, as we know the importance of customization and extensibility. And the best part is that you can get things up and running quickly and easily.

Let’s take a look at some dashboards built using Dundas Dashboard:

image001.jpg

The Dundas Dashboard "Sonatica" project which is part of the installation

image002.jpg

Figure 2 – A performance dashboard built using Dundas Dashboard

image003.jpg

Figure 3 – A performance dashboard built for Microsoft using Dundas Dashboard

Enough about what it is, let’s see how developers can extend Dundas Dashboard to better suit their needs.

Dundas Dashboard Open API

Every organization has unique dashboard requirements. To satisfy this need for customization, every dashboard solution should provide an accessible application programming interface (API). Although most dashboard solutions provide an API, the concept is generally an afterthought and this creates challenges for developers attempting to customize dashboards (challenges include performance issues, hard-to-read documentation, limited technical support, etc.). Dundas has a proven track record in providing intuitive, well-documented software.

With this in mind, Dundas Dashboard was developed from the ground up with an open API that is supported by a highly technical staff of developers.

Integrate New Data Visualization (DV) And User Controls

To help facilitate dashboard design, Dundas Dashboard provides many common data visualizations and user controls out of the box. Additional data visualization types can be created by Dundas Consulting by extending existing controls or integrating custom and/or third-party Silverlight controls within Dundas Dashboard (via the Dashboard Control Plug-in API). Now you won’t have to wait for the next release of Dundas Dashboard to add new controls for your dashboard projects.

Some examples of controls we have built using the API include:

image004.gif
Pareto Chart Add-on
image007.gif
Sparkline Add-on
image005.gif
RSS Add-on
image008.gif
Tag Cloud Add-on
image006.gif
Six Sigma Add-on
 

Create Custom Data Connections

Many popular types of database connections are supported by Dundas Dashboard. With the Data Provider API, you can develop your own custom data provider for any SQL-compliant, tabular or web-service source. This versatile API allows you to connect to your legacy data warehouses and address connection to future database technologies.

We have already internally utilized the API to create connectors for SQL Azure, XML web services, Google Analytics, third-party partner technologies and many others.

Create Custom Dashboard Navigation Controls

Your dashboard designer may want to create a custom user control for navigating through dashboards. The Navigation API allows developers to get a list of all the available dashboards for a particular Dundas Dashboard user and with this information; the designer can create their own navigation control (e.g., the creation of tabs and slide shows).

Create Your Own Dashboard Export Files

There are many ways that business users may want to export their dashboards. With our Export API, developers can create additional add-ons for exporting purposes. This facilitates building new export types without having to wait for a major release of Excel, PowerPoint, PDF, etc.

Integrate Your Authentication System Into Dundas Dashboard

Dundas recognizes you may have existing authentication systems you wish to use in a dashboard solution. With Dundas Dashboard’s Authentication Provider API, you can leverage existing user accounts within Dundas Dashboard so you don’t have to recreate them. You can also create, update and remove user accounts in your native authentication system via our user management interface.

Click here for a more detailed article on using the Dundas Dashboard APIs

DundasScript™

Another unique feature that developers can use to extend Dundas Dashboard is its full scripting capabilities which provide extra control over all dashboard elements. This gives you the power to do many cool things.

The DundasScript editor lets developers make distinctive changes to data visualization components, plus it handles UI component interaction (like the dashboard designer's text entry field and drop-down menu controls) at runtime. It uses a C# syntax, with server side customization done in .NET and client side customization done in Silverlight (so there’s nothing new to learn).

Here are some common uses of the DundasScript engine:

  • Hover-over previews for data visualization components
  • Drill-down interaction for data visualization components
  • Create help overlays that provide more meaning to the KPIs on the dashboard
  • Add tab-like navigation to dashboards so viewers can easily navigate to other dashboards you have created
  • Show and hide dashboard elements based on filter selections
  • With the DundasScript engine, you will be able to apply many dashboard customizations to your organization's needs.

As an example of using DundasScript (with an image showing the end result), here’s a script that draws a line at the data point where the user clicked - and displays the value on the secondary y axis: (This script should be put into the click interaction of a chart)

image009.jpg

Figure 4 – A chart in Dundas Dashboard using DundasScript
    //Get the Y Value
    double y = e.GetDataPointMetricValue(0);
 
    //Initialize a new axis
    DashboardAxis newAxis = new DashboardAxis();
    newAxis.Title = "";
 
    //Set the colors
    DashboardSolidColorBrush dscb = new DashboardSolidColorBrush();
    dscb.Color = Colors.Red;
    newAxis.Labeling.Foreground = dscb;
    newAxis.MajorGrid.Stroke = dscb;
    
    //Set the scale values
    newAxis.Scale = new DashboardNumericScale();
    newAxis.Scale.DefaultIntervalOffset = y;
    newAxis.Scale.DefaultInterval = 0;
    newAxis.Scale.Minimum = sender.YAxes[0].Scale.ActualMinimum;
    newAxis.Scale.Maximum = sender.YAxes[0].Scale.ActualMaximum;
    
    //Set the grid line
    newAxis.MajorGrid.StrokePattern = DashboardLinePatternType.Dot;
    newAxis.MajorGrid.StrokeThickness = 1;
    newAxis.MajorGrid.Visibility = Visibility.Visible;
    newAxis.MajorGrid.ZIndex = 1;
 
    //Set other appearances
    newAxis.StrokeThickness = 0;
    newAxis.Scale.LabelFormat = e.VisualElementArgs.LegendText + " at " + 
        e.VisualElementArgs.XValue.ToString() + ": 0.00";
    newAxis.Visibility = Visibility.Visible;
    
    //Apply the changes to the secondary axis
    sender.Y2Axes[0] = newAxis;

For a complete list of available pre-built scripts for Dundas Dashboard, click here for our Dundas Dashboard Script Library.

As you can see, there are many compelling reasons why Dundas Dashboard can facilitate your data visualization and executive dashboard requirements. The fact that we also cater to developers looking to perform more advanced interactions and customizations our way of standing high above competing solutions.

Next Steps

To begin working with Dundas Dashboard please click here. There is a comprehensive series of dashboard tutorials that go through the entire process of building a dashboard, or you can try your hand at online dashboard design. If you want us to show you Dundas Dashboard in action, contact us and we will arrange for a Live Meeting presentation.

License

This article has no explicit license attached to it but may contain usage terms in the article text or the download files themselves. If in doubt please contact the author via the discussion board below.

A list of licenses authors might use can be found here