Click here to Skip to main content
13,768,132 members
Click here to Skip to main content
Add your own
alternative version


9 bookmarked
Posted 1 Dec 2009
Licenced CPOL

A Pivot Grid for Data Warehousing on Microsoft Silverlight™ 3

, 1 Dec 2009
When your boss asks you to create applications transforming your data warehouse into business intelligence, you need the right set of Silverlight 3 tools to make this transformation quickly and easily. Here is a pivot grid control that really gets the job done.

Editorial Note

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.

With the debut of their new xamWebPivotGrid™ control, Infragistics has added a formidable asset to your toolbox for working with multi-dimensional data. Built around familiar acts such as “rotating” or “pivoting” slices of data, and ease of dragging-and-dropping fields graphically, we think xamWebPivotGrid is just the tool you will need for the next DW project you face.

Download the Community Technical Preview of this pivot grid for Silverlight now, or read on to learn more about what it can do for you.

When You Need Pivoting Data

Why won’t any traditional data table do? It’s because traditional data tables are flat, whereas pivot tables are multi-dimensional. Pivot tables allow you to present data not just in the everyday 3-dimensional sense, but in a mathematically n-dimensional sense.

xamWebPivotGrid converts your deep, multi-dimensional data tables into compact reports summarizing the information contained in your enterprise’s data warehouse. Your users can interactively drag-and-drop fields into any of 4 areas:

  1. Filter fields are dimensions on which the user can select what values they want displayed. Filter fields can reduce or expand how much information shows. An example would be “Country,” in which the user selects “USA” and “Canada.” Only data items related to USA and Canada are seen.
  2. Data items are summarizable facts bound to your flat Collection objects, hierarchical Collections, OLAP cubes and databases. An example is “Sales Amount.”
  3. Column fields are dimensions on which the data items are summarized going horizontally across the pivot grid. An example would be “Date,” in which data items can be sliced into values per fiscal year, quarter, or month.
  4. Row fields are dimensions on which the data items are summarized going vertically down the pivot grid. An example would be “Promotion,” in which data items can be sliced into values based on how well various types of marketing promotions (volume discounts, clearances, etc.) had performed.


Figure 1. Infragistics xamWebPivotGrid showing a filtered, cross-tabulated summary of sales figures with breakdowns by fiscal date and promotion type.

The screenshot above demonstrates a two-dimensional pivot table of sales figures (date X promotion type), but you already see some of its utility over a traditional two-dimensional table. Your users can drilldown into a dimension to further sub-divide the sales figures: into fiscal quarters, months, weeks. If you knew in advance that your users wanted sales figures by fiscal quarter, you could design a two-dimensional table with four columns, one for each quarter. When using a pivot table, your users have greater flexibility to slice data on their own.

When Charting Starts to Breakdown

Why can’t I just use a chart? You could always represent data in a 3-dimensional chart to achieve an effective similar to the pivot table on sales figures across (date X promotion type.) But visual intuition starts to breakdown when, as users want to compare more dimensions of data, your chart grows to 4-, 5- and n-dimensions! Even as users struggle to perceive visualizations of tesseracts and Lorenz attractors, they can easily understand multidimensional data in cross-tabular (“crosstab”) form.

Now you could design a 3-D column chart showing sales figures (Z-axis) against date (Y-axis) and promotion type (X-axis), it might look something like Figure 2.


Figure 2. Same data slice shown in Figure 1 presented as a 3-D column chart by fiscal half-year.

This column chart would be satisfactory for identifying relative strengths and weaknesses across this slice of data, and identifying in what time periods a given promotion type was run, and how well they performed against each other. However, if your users wanted to change one axis from promotion type to sales territory for example, you would have to write code to support an entirely new column chart.

Benefits of a Pivot Grid Control

By using Infragistics xamWebPivotGrid and the pivot table way of looking at your enterprise data, your users can not only easily change the dimension of an axis for themselves, but they can add additional dimensions simply by dragging-and-dropping.


Figure 3. Infragistics xamWebPivotGrid showing sales figures by fiscal date cross-tabulated across 2 dimensions simultaneously (promotion type and sales territory). An equivalent chart would require up to 4 dimensions.

Users of Infragistics xamWebPivotGrid can continue dragging additional dimensions onto the pivot table as either row or column fields. The grid’s innate ability to let users expand and collapse rows and columns lets users drill down into details as-needed. It becomes easy for even first-time users to add or reduce the amount of data they have to examine without custom development on your part.


Figure 4. Infragistics xamWebPivotGrid shows fixed row and column headings as the cross-tabular cells are scrolling down through the data. Note that an equivalent chart for the data shown here would require up to 5 dimensions.

It is also convenient to for your users to move around the pivot table, as pivot tables can quickly grow large in size for even the smallest of data warehouses. Infragistics xamWebPivotGrid keeps row and column headings stationary for easy reference as the user scrolls the cross-tabular cells vertically or horizontally.

Satisfying Your Needs for Business Intelligence

What have we seen? Well, we see that traditional data tables can only take your data-driven applications so far, limited by their flatness. We also see that pivot tables offer users considerably more flexibility at showing multi-dimensional data with drag-and-drop of dimension fields than an equivalent chart does. We see that a capable pivot table control – as embodied by Infragistics xamWebPivotGrid – lets you deliver to your users this flexibility with little to no effort on your part.

NetAdvantage® for Silverlight Data Visualization includes the rich Silverlight charts, maps, gauges and timelines you need to present key performance indicators (KPI) to your data, as well as the xamWebPivotGrid (now in Community Technical Preview) for incredibly flexible MDX and OLAP data analysis. When developing business intelligence applications on top of your data warehouse, you must have the right tools for the job, and you can get these tools today from Infragistics.

Turn your data warehouse into business intelligence sooner rather than later. Download a free trial of NetAdvantage for Silverlight Data Visualization and the xamWebPivotGrid CTP from Infragistics today.


Copyright © 1996-2009 Infragistics, Inc. All Rights Reserved. Infragistics, the Infragistics logo and NetAdvantage are registered trademarks of Infragistics, Inc. xamWebPivotGrid is a trademark of Infragistics, Inc.


This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)


About the Author

J. Ambrose Little
United States United States
No Biography provided

You may also be interested in...

Comments and Discussions

Permalink | Advertise | Privacy | Cookies | Terms of Use | Mobile
Web06-2016 | 2.8.181116.1 | Last Updated 1 Dec 2009
Article Copyright 2009 by J. Ambrose Little
Everything else Copyright © CodeProject, 1999-2018
Layout: fixed | fluid