THE SQL Server Blog Spot on the Web

Welcome to - The SQL Server blog spot on the web Sign in | |
in Search

Microsoft OLAP by Mosha Pasumansky

XAML based PivotTable control

Some people think that "the world doesn't need another OLAP client". I disagree. We are still far away from the intuitive, powerful OLAP client which generates clean and efficient MDX. But it is true that there are plenty of existing clients. What we miss most now are controls embedable in the application, such that developer can just drop this control inside the application, point it to the cube, and don't think about all those tricky UI and MDX issues. For many years, OWC was fitting this role for the thick applications (as opposed to Web apps). OWC had its own set of pluses and minuses, but OWC is being discontinued now (although OWC11 will be still supported until 2011 and on extended support until 2016). OWC was native Win32 code, implemented as ActiveX control and it used OLEDB for OLAP. It was first developed in 1997, and since then new technologies were born. The major breakthrough in UI technologies is, of course, Avalon, or Windows Presentation Foundation (WPF) as it is officially called. I, therefore, was excited to discover XAML based control called PivotTable built with WPF. My Vista machines are in the office, and my laptop is still on Windows XP, but luckily WPF can be installed on Windows XP SP2 by downloading .NET framework 3.0 RC. I promptly installed it on my machine and downloaded the source code for this XAML PivotTable control. In order to compile it in VisualStudio I also had to download Orcas CTP which contains the preview of Visual Designer for WPF (codename Cider). After going through all this hassle I was really looking forward to see how PivotTable control exploited power of WPF. The resulting UI disappointed me somewhat - it is your standard grid with the right pane for metadata. No 3D effects or animations etc. I guess only the gradient shades in the grid were the only indication that it is built with WPF. The MDX generation of this control is pretty bad - for example if you select single measure, it would still put all the measures in the axis, which, especially in the case of Adventure Works, is a big performance hit. But they I browsed through the source code, and realized that this control is just a sample code, which was built by an intern during last summer in Microsoft (the alias of the author is t-tomkm, and "t-" prefix is given to interns in Microsoft). He probably built 10 other samples as well, the intent was not to built the killer OLAP client control, but showcase WPF technologies, and in this case data bindings through ADOMD.NET. Since all the source code is open - hopefully somebody will pick it up and develop into something more real. But even in the current form, it is already usable in some simpler and less demanding applications. Download it and judge for yourself. Below is a sample screenshot:

Published Sunday, October 08, 2006 6:04 PM by mosha
Filed under:
Anonymous comments are disabled
Privacy Statement