HierCube for VCL

Easy and time-proved VCL OLAP components for creating OLAP applications in Delphi and RAD Studio. Very easy to configure and get up and running.

Try for free


  • 100% Unicode support.
  • Supports hierarchical dimensions described by "Parent-Child" relations. Both "balanced" and "unbalanced" hierarchies are supported. No restrictions for the amount of hierarchical levels.
  • Supports "snowflake" schema.
  • An ability to edit fact table data directly in OLAP-view.
  • An ability to show several summaries and several aggregate function at the same time. To compare the values of neighbor cells or calculate cumulative sums can be used sub-functions.
  • Calculated dimensions and range-based dimensions. An ability to use a summary as one of the cube dimensions.
  • Three types of calculated summaries:
    • Calculated from the fact table records
    • Calculated using user formulas
    • Calculated using user defined aggregate functions.
  • Supports dimension attributes. Any field from the dimension table may be read from the fact table as a separate attribute of dimension and used later to describe dimension members more fully.
  • Supports supersaturated cubes when one cube cell hold two or more values from the fact table.
  • Using all MOLAP advantages with no problems, related with calculating of "sparse" cubes ("database explosion" and "cube sparsity"). HierCube works easy with hundreds of dimensions and, so solves tasks beyond of the strength of most of industrial OLAP-servers. There are no restrictions for the maximum cube capacity.
  • High performance and very modest memory requirements: algorithms of calculating "on the fly" allow to process the fact table holding a million of records in a single second (excluding the time of data fetching). See benchmarks page for details.
  • Works with any successor of standard TDataSet component, no BDE required. Works with unidirectional datasets (that "remember" only current database record) and datasets that "do not know" the full record count of an executed query.
  • Supports saving to and reading from any component derived from TStream (including TFileStream). Allows to save the "history of analysis" (in other word different slices of the same cube) and switch between them later.
  • Allows to fetch new data from the fact table or full refresh without closing the cube (at that the grid keeps the current slice).
  • Supports user groups, sorting, filtering by dimension members. Can filter by any combination of dimension members in any dimension.
  • Allows to display the current slice as a diagram (any TChart successor). Source code of the charting component are distributed free.
  • Allows to copy the selected grid area into clipboard in different formats.
  • Allows to export grid data to many formats: MS Excel (using OLE or directly to XLS-file), HTML, PDF, WMF, RTF, TXT, BMP, XML for Analysis, XML Spreadsheet, RaveReport, ReportBuilder, FastReport. Also supports direct drawing on printer Canvas.
  • Easy localization. It is possible to localize the evaluation version as well.
  • Supporting OS: Windows 2000 or above.

Lets review the features which distinguish HierCube library from other products of the same category, not paying attention to standard OLAP-functions like Rotating, Drilling, etc.

Hierarchical dimensions support.

HierCube library supports all types of hierarchical dimensions possible in Data Warehouses. It's possible to combine several flat dimensions into single hierarchical one (support of "snowflake" schema). Also you can define a hierarchical dimension using "Parent-Child" relation in the dimension table. At this time the library is the only "desktop" product supporting "snowflake" schema.

Filtering of dimension members.

It is possible to exclude from an OLAP-view any combinations of dimension members. Filtering of data is a necessary stage of the OLAP analysis process. It allows to sever insignificant data useless for current analysis and so make the information more suitable for the given subject. To achieve this HierCube library gives rich opportunities. For example you can use function "Hide all members below" previously sorting the OLAP-view by any column, this will filter the OLAP-view to see only the most significant factors.

Grouping of dimension members.

The members of any dimension may be gathered into a single group during an OLAP-analysis. Combining the function "Group all members below" with the sorting by any view column gives the power to group dimension members by some characteristics in several mouse actions.

An ability to edit the fact table.

HierCube library has a row of properties and events which allow users to add and delete the fact table records. It is possible to edit using an in-place grid editor as well as in a special form designed by a programmer. This gives the poser to use the component as cross-tabulated data editor.

Calculated summaries.

It is possible to create calculated summaries in both run time and design time. Such summaries are calculated from the formula that can be changed either in design or in run time. Also users may hide/show any summaries, functions, and sub-functions in the current view.

Range-based dimensions.

Sometimes there is a need to take account of some conditions depending on summary values. Fro example, the owner of the shop would want to give more attention to those customers who buy more than others in average and provide them the most comfortable environment. Representing the values of the summary as dimensions members allows to solve this task. In this case the dimension is build from the histogram of distribution of the summary values in the fact table. So the shop owner should only filter such dimension to view the information he's interested in.

Comparing of neighbor cells and viewing cumulative sums.

To simplify calculations and analysis, users are able to use several sub-functions, such as comparing of neighbor cells and calculating of cumulative sums. Calculating cumulative sums is very applicable for analysis of account and financial data. Comparing of cells allows to sort the view values by their second derivative and very easy answer the questions like: "The sales of what product has been most increased in this year comparing to the last year?"

Color ranking.

This feature allows users to find a way in all data displayed in the grid. To turn on color ranking just move the mouse over a grid cell and leave it still for two seconds. In this case the selected cell and its neighbor cells will be marked with colors depending on their values.

Showing the diagrams.

The slice of the OLAP-view showing in the grid may also be presented like a diagram. As a rule few lines of code are enough to connect the chart of almost any provider.

Professional API.

HierCube library has very thoroughly designed API, many objects and events that allow to a programmer to have full control on the component and users' actions, canceling them if required.

Copying to clipboard.

HierCube library allows copying the part of the grid to the clipboard in such formats like CSV, HTML, RTF, WMF, BMP, and many other. This provides pasting of the data into many applications like MS Office applications, Corel Draw, Adobe Photoshop, PageMaker, QuarkExpress, and many other. This allows you to easy create documentation with the reports of the OLAP-component. On copying to clipboard it is possible to change colors, fonts, and formatting for every grid cell.

  1. Supported functions are:
    • Sum,
    • Count,
    • Average (mean, average of distribution),
    • Min,
    • Max,
    • Variance,
    • Standard deviation,
    • Mean absolute deviation (average deviation),
    • Skewness (the third moment),
    • Kurtosis (the fourth moment),
    • Median,
    • Up to five custom aggregation functions.
  2. Comparing functions (sub-functions) are:
    • Rank by row,
    • Rank by column,
    • Percents by row,
    • Percents by column,
    • Compare with previous row cell,
    • Compare with previous column cell,
    • Cumulative sum by row,
    • Cumulative sum by column.