ComponentOne is one of the top custom control and tool vendors in the .NET market. In 2010, it introduced two new packages related to OLAP: OLAP for WinForms and OLAP for Silverlight. Although this review is on OLAP for WinForms, the two packages are very similar in terms of features.
OLAP for WinForms contains five targeted controls:
- C1OlapPanel. Besides providing the raw data for the analysis, this control provides the drag-and-drop interface used to define custom views.
- C1OlapGrid. This control displays the tables.
- C1OlapChart. This control displays the charts.
- C1OlapPrintDocument. This control creates reports. (OLAP for Silverlight doesn’t include this control.)
- C1OlapPage. One thing I learned during my time experimenting with the package is that C1OlapPage is the key component. This control combines the other four controls to create an easy-to-use GUI. The GUI has three tabs to display tables, charts, and raw data. It also has panels that you use to define what to query and a menu bar to support actions such as printing.
Besides the five targeted controls, OLAP for WinForms includes the 65+ .NET controls found in ComponentOne’s Studio for WinForms.
I was able to quickly download and install OLAP for WinForms without any problems. One of its claims to fame is that it offers code-free data analysis. In fact, the introductory video on the package’s web page demonstrates this ability using the C1OlapPage control. I started my series of tests by replicating the example in the video. I found that adding the C1OlapPage control to a newly created form and binding to a data source was easy. As Figure 1 shows, adding the control is similar to adding a data source to a traditional data grid.
Figure 1: Adding a C1OlapPage control to a newly created form
Next, I selected the vSalesPersonSalesByFiscalYears (Sales) view from the AdventureWorks sample database as my data source. I was then able to build and run my sample application. As advertised, the new form had an OLAP look and feel. I was able to pull the sales column for an individual year into the display, but I discovered that I couldn’t pull the sales columns for multiple years into the same display. Thus, I could only compare the sales for a single year across salespeople and regions.
Although this package has the term OLAP in its name, it doesn’t work with multidimensional data. It’s designed to wrap relational data in an interface, which you use to analyze the data. If you attempt to connect to an OLAP database, you’ll find that the tool fails. Because you can only bind the C1OlapPage control to a single table or view, you need to make sure that you have a single database construct that can be represented as a single data table in your data set for the control.
Despite not working with multidimensional data, there are scenarios in which OLAP for WinForms can prove useful. For example, after I started testing the package, a marketing team member asked me about some historical sales data related to a particular type of sales. The sales data was in some database tables that weren’t part of the data warehouse, so I used C1OlapPage to set up a view and pull the data into a display that the marketing team could use to analyze the data.
In terms of support, the ComponentOne website has an excellent online Help library. The website also has a forum. Although the forum doesn’t appear to be very busy, I found a few threads that confirmed the controls’ lack of support for multidimensional data.
You can purchase OLAP for WinForms as a standalone package (starts at $1,495) or as part of ComponentOne’s Studio Ultimate suite ($2,295). Compared to the price of the full suite (which contains significantly more controls and other tools), the package’s price seems expensive for what you get. Purchasing OLAP for WinForms as part of the Studio Ultimate suite is a much better value.
Unfortunately, if you’re looking for a true OLAP tool to analyze multidimensional data, OLAP for WinForms probably won’t meet your needs. However, if you need to analyze only relational data and you want a display with an OLAP look and feel, the package might fit your needs. It provides excellent support for grids and charts, as well as the ability to print and export data. However, I’ve reduced my rating for this package because of the problems I encountered when using it with multidimensional data sources. I suspect most readers would expect a set of controls with OLAP in the title to be compatible with such data sources.
ComponentOne OLAP for WinForms