Syncfusion wpf olap client
Skill syncfusion/wpf-ui-components-skills/skills/syncfusion-wpf-olap-client
Skills for Syncfusion WPF controls. Enable AI-assisted development with comprehensive documentation, code examples, and best practices for 100+ UI controls including DataGrid, Charts, Scheduler, and more.
npx -y skills add syncfusion/wpf-ui-components-skills --skill syncfusion-wpf-olap-clientAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
2 things to look at
- no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.
- 5 stars5 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its author says it does
Copied from the file, not written here
Implement Syncfusion WPF OLAP Client for business intelligence and multidimensional data analysis. Use this when working with OLAP Client controls, cube analysis, SSAS (SQL Server Analysis Services), or multidimensional data. Covers cube database connections (offline cubes, Mondrian, ActivePivot), dimension browsing, OLAP reports, drill-through operations, and KPI analysis.
SKILL.md
11.6 KB, ~2.5k tokens by cl100k_base, as published. Nobody here has run it
Implementing Syncfusion WPF OLAP Client
The OLAP Client control for WPF provides comprehensive business intelligence capabilities for browsing and analyzing multidimensional data organized as dimensions, measures, named sets, and KPIs in cube format. It visualizes results in both graphical (chart) and tabular (grid) formats, and allows creating and editing reports on-the-fly for later use.
When to Use This Skill
Use this skill when you need to:
- Analyze multidimensional data from OLAP cube databases (SSAS, Mondrian, ActivePivot)
- Browse cube structures with dimensions, hierarchies, measures, and KPIs
- Create business intelligence dashboards combining charts and grids
- Build OLAP reports with drag-and-drop axis configuration
- Connect to cube data sources (offline cubes, local/online SQL Server, Mondrian, ActivePivot)
- Filter and slice data by members, values, or subsets
- Sort and page large multidimensional datasets
- Export BI reports to PDF, Excel, Word, CSV, or images
- Implement drill-through operations for detailed data exploration
- Work with named sets and calculated members in OLAP reports
- Save and load report definitions for reusable analysis
Component Overview
The OLAP Client is a comprehensive BI control that includes:
- Cube Selector: Switch between multiple cubes in a data source
- Cube Dimension Browser: Tree view of measures, dimensions, hierarchies, levels, named sets, and KPIs
- Axis Element Builder: Configure categorical (column), series (row), and slicer axes through drag-and-drop
- Member/Measure Editors: Select specific members or measures for filtering
- Toolbar: Quick access to report management, filtering, sorting, and export operations
- OLAP Grid: Tabular representation of multidimensional data
- OLAP Chart: Graphical visualization of cube data
Install the NuGet Package
To use the OLAP Client in your WPF application, install the following NuGet package:
Install-Package Syncfusion.OlapClient.WPF
Important Note
The Syncfusion OlapClient control is supported only in .NET Framework WPF applications. It is not supported in .NET Core. Please create a Framework-based WPF sample when working with OlapClient.
Documentation and Navigation Guide
Getting Started
π Read: references/getting-started.md
- Installation and required assemblies
- Three setup methods: Visual Studio designer, Expression Blend, Code-behind
- Adding OLAP Client to WPF applications
- OlapDataManager configuration
- Connection string basics
- First DataBind and rendering
Data Binding and Connections
π Read: references/data-binding.md
- Binding to offline cube files (.cub)
- Connecting to local SQL Server Analysis Services
- Connecting to online SQL Server via XML/A
- Connecting to Mondrian Server
- Connecting to ActivePivot Server
- Connection string patterns and authentication
OLAP Client Elements and UI Components
π Read: references/olap-client-elements.md
- Cube Selector for switching cubes
- Cube Dimension Browser structure and node types
- Attribute hierarchies vs user-defined hierarchies
- Axis Element Builder (categorical, series, slicer)
- Drag-and-drop operations for building reports
- Measure Editor and Member Editor dialogs
- Toolbar features and report manipulation
- OLAP Grid and OLAP Chart integration
Filtering Data
π Read: references/filtering.md
- Filtering by member (check/uncheck selection)
- Filtering by value (column and row filters)
- Filter expressions and conditions
- Subset filtering to limit record counts
- ShowFilterSortButtons and ShowSubsetFilters properties
Sorting Data
π Read: references/sorting.md
- Row and column sorting
- Sorting dialog and options
- Sort order configuration
- Combining sorting with filtering
Paging Large Datasets
π Read: references/paging.md
- Enabling and configuring paging
- Page size settings
- Pager customization
- Performance optimization for large cubes
Exporting Reports
π Read: references/exporting.md
- Export to PDF, Excel, Word, CSV, and images
- Exporting OLAP Grid vs OLAP Chart
- Export options and configuration
- Programmatic export methods
- Toolbar export buttons
Drill-Through Operations
π Read: references/drill-through.md
- Drill-down through dimension hierarchies
- Enabling expander options
- ShowExpander property
- Drill-through dialog for detailed data
Named Sets
π Read: references/named-sets.md
- Understanding named sets in cubes
- Using named sets in reports
- Dragging named sets to axes
- Named set vs dimension differences
Calculated Members
π Read: references/calculated-members.md
- Creating custom calculations
- MDX expressions for calculated members
- Adding calculated members to reports
- Common calculation patterns
Report Management and Serialization
π Read: references/report-management.md
- Creating, adding, removing, and renaming reports
- Saving reports to local system (XML files)
- Loading reports from local system
- Report collections and navigation
- Serializing reports as XML
- Storing and retrieving reports as streams
- MDX query display
Quick Start Example
Basic OLAP Client Setup
<Window xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:syncfusion="http://schemas.syncfusion.com/wpf"
Title="OLAP Client" Height="700" Width="900">
<Grid>
<syncfusion:OlapClient x:Name="olapClient1"
HorizontalAlignment="Stretch"
VerticalAlignment="Stretch"/>
</Grid>
</Window>
Code-Behind Connection
using Syncfusion.Olap.Manager;
using Syncfusion.Windows.Client.Olap;
namespace OlapClientApp
{
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
// Defer initialization that depends on visual tree until Loaded
this.Loaded += MainWindow_Loaded;
}
private void MainWindow_Loaded(object sender, RoutedEventArgs e)
{
// Example connection string (replace with your server or offline cube path)
string connectionString = "YOUR_END_POINT"; // For e.g - "Data Source=http://<your-server-name>/olap/msmdpump.dll; " + "Initial Catalog=<YourCatalogName>;";
// Create OlapDataManager with connection and assign to control
OlapDataManager olapDataManager = new OlapDataManager(connectionString);
this.olapClient1.OlapDataManager = olapDataManager;
this.olapClient1.DataBind();
}
}
}
Common Patterns
Pattern 1: Connecting to Local Offline Cube
// For offline .cub files on local machine
string connectionString = "YOUR_END_POINT"; // For e.g - @"Datasource=<path_to_cube_file>; Provider=msolap;";
OlapDataManager olapDataManager = new OlapDataManager(connectionString);
this.olapClient1.OlapDataManager = olapDataManager;
this.olapClient1.DataBind();
Pattern 2: Connecting to Local SQL Server
// For SQL Server Analysis Services on localhost
string connectionString = "YOUR_END_POINT"; // For e.g - "Data source=localhost; Initial Catalog=Adventure Works DW";
OlapDataManager olapDataManager = new OlapDataManager(connectionString);
this.olapClient1.OlapDataManager = olapDataManager;
this.olapClient1.DataBind();
Pattern 3: Connecting to Mondrian Server
// For Mondrian OLAP server
string connectionString = "YOUR_END_POINT"; // For e.g - @"Data Source = http://<your-server-name>:<port>/mondrian/xmla; Initial Catalog = <YourCatalogName>;";
OlapDataManager olapDataManager = new OlapDataManager(connectionString);
// Set provider to Mondrian
olapDataManager.DataProvider.ProviderName = Syncfusion.Olap.DataProvider.Providers.Mondrian;
this.olapClient1.OlapDataManager = olapDataManager;
this.olapClient1.DataBind();
Pattern 4: Creating OLAP Client Programmatically
// Complete code-behind instantiation
OlapClient olapClient1 = new OlapClient();
string connectionString = "YOUR_END_POINT"; // For e.g - "Data Source=http://<your-server-name>/olap/msmdpump.dll; " + "Initial Catalog=<YourCatalogName>;";
OlapDataManager olapDataManager = new OlapDataManager(connectionString);
olapClient1.OlapDataManager = olapDataManager;
olapClient1.DataBind();
// Add to window grid
grid.Children.Add(olapClient1);
Pattern 5: Hiding Filter/Sort Buttons
// Control toolbar button visibility
this.olapClient1.ShowFilterSortButtons = false;
this.olapClient1.ShowSubsetFilters = false;
Key Components Overview
OlapDataManager
The core data manager that handles:
- Connection details and cube authentication
- Current report management
- Cube name and schema information
- Pivot engine for rendering
Usage:
OlapDataManager olapDataManager = new OlapDataManager(connectionString);
Axis Element Builder
Drag-and-drop interface for report construction with three axes:
- Categorical (Column): Elements displayed along chart y-axis and grid columns
- Series (Row): Elements displayed along chart x-axis and grid rows
- Slicer: Filter to narrow data focus without displaying on chart/grid
Cube Dimension Browser
Tree view organizing cube elements:
- Measures (quantitative analysis)
- Dimensions (data categorization)
- Hierarchies (attribute and user-defined)
- Levels (hierarchy depth)
- Named Sets (predefined tuple collections)
Common Use Cases
Business Intelligence Dashboards
Create interactive BI dashboards combining OLAP Grid and OLAP Chart for comprehensive data analysis with filtering, sorting, and drill-down capabilities.
Ad-Hoc Reporting
Enable end users to build custom reports on-the-fly by dragging dimensions and measures to axes, applying filters, and saving reports for later use.
Sales Analysis
Analyze sales data across multiple dimensions (time, geography, product categories) with ability to slice/dice data and drill through to detailed transactions.
Financial Reporting
Build financial reports with calculated members for custom metrics, named sets for grouped analysis, and export capabilities for sharing.
Multi-Cube Analysis
Connect to databases with multiple cubes and switch between them using the cube selector for different analytical perspectives.
Offline Analysis
Work with offline cube files for scenarios requiring disconnected data analysis without continuous server connection.
Required Assemblies
When setting up the OLAP Client, ensure these Syncfusion assemblies are referenced:
- Syncfusion.Grid.Wpf
- Syncfusion.Olap.Base
- Syncfusion.Chart.Wpf
- Syncfusion.OlapChart.Wpf
- Syncfusion.OlapGrid.Wpf
- Syncfusion.OlapGridCommon.Wpf
- Syncfusion.OlapClient.Wpf
- Syncfusion.OlapShared.Wpf
- Syncfusion.OlapTools.Wpf
Gives 0 of the 12 instructions most databases sql skills give in ~2.5k tokens
Counted across 589 of the 662 authors here whose files we hold, read 2026-08-07
- use parameterized queriesin 37 of 589, across 34 files
- use timestamptz for timestampsin 30 of 589, across 14 files
- index foreign keysin 29 of 589, across 18 files
- create indexes concurrentlyin 29 of 589, across 24 files
- use numeric type for moneyin 25 of 589, across 8 files
- use cursor pagination instead of offsetin 24 of 589, across 17 files
- select only required columnsin 24 of 589, across 20 files
- add indexes manually on foreign key columnsin 22 of 589, across 12 files
- normalize to third normal formin 19 of 589, across 10 files
- configure connection poolingin 19 of 589, across 17 files
- put equality columns before range columns in indexesin 18 of 589, across 10 files
- read individual rule files for detailed explanationsin 18 of 589, across 4 files
Said here and by no other author read
- Install the Syncfusion OLAP Client package
- Create a .NET Framework WPF sample
- Assign an OlapDataManager to the control
- Call DataBind after setting the connection
- Set the data provider name for Mondrian connections
- Hide filter buttons using ShowFilterSortButtons
Grouped from the skills themselves: near-identical wordings counted once, and counted by distinct author, so one author publishing three of these counts once. Length counted with cl100k_base; the agent that loads this file may tokenize it differently.