agentsclimarketplace

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.

Install
npx -y skills add syncfusion/wpf-ui-components-skills --skill syncfusion-wpf-olap-client

Assembled 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.

Keep looking

Skills are one crate of 328,083. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.