syncfusion-wpf-olap-grid — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited syncfusion-wpf-olap-grid (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
The Syncfusion WPF OLAP Grid is a presentation-quality business control that reads OLAP data sources to create multi-dimensional views for analyzing business data. It provides drill up/down capabilities, multiple layout options, conditional formatting, and comprehensive export features for business intelligence applications.
Use this skill when you need to:
This skill covers the complete implementation lifecycle from setup and data binding to advanced features like conditional formatting, export options, and interactive drill operations.
Key Capabilities:
Core Components:
OlapGrid - Main grid controlOlapDataManager - Manages OLAP data and reportsOlapReport - Defines cube query (dimensions, measures, filters)DimensionElement - Represents dimension hierarchiesMeasureElements - Represents measures to displayTo use the OLAP Grid in your WPF application, install the following NuGet package:
Install-Package Syncfusion.OlapGrid.WPFThe OLAP Grid requires the following assemblies:
Assembly Reference
Syncfusion.Grid.WPFSyncfusion.GridCommon.WPFSyncfusion.Linq.BaseSyncfusion.Olap.BaseSyncfusion.OlapGridCommon.WPFSyncfusion.OlapShared.WPFSyncfusion.Shared.WPFSyncfusion.Tools.WPFNuGet Package
Syncfusion.OlapGrid.WPFThe Syncfusion OlapGrid 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 OlapGrid.
📄 Read: references/getting-started.md
When you need to:
📄 Read: references/data-source-configuration.md
When you need to:
📄 Read: references/grid-layouts.md
When you need to:
📄 Read: references/drill-operations.md
When you need to:
📄 Read: references/conditional-formatting.md
When you need to:
📄 Read: references/exporting.md
When you need to:
📄 Read: references/cell-selection.md
When you need to:
📄 Read: references/kpi-and-member-properties.md
When you need to:
📄 Read: references/advanced-features.md
When you need to:
📄 Read: references/xaml-configuration.md
When you need to:
Here's a minimal working example to create an OLAP Grid with data from an OLAP cube:
<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"
x:Class="MyApp.MainWindow">
<Grid>
<syncfusion:OlapGrid Name="olapGrid1" />
</Grid>
</Window>using Syncfusion.Windows.Grid.Olap;
using Syncfusion.Olap.Manager;
using Syncfusion.Olap.Reports;
public partial class MainWindow : Window
{
private OlapDataManager olapDataManager;
private string connectionString = "YOUR_END_POINT"; // For e.g - "Data Source=http://<your-ssas-server>/olap/msmdpump.dll;Initial Catalog=Adventure Works DW 2008 SE;";
public MainWindow()
{
InitializeComponent();
// Initialize OlapDataManager with connection string
olapDataManager = new OlapDataManager(connectionString);
// Create and set the OLAP report
olapDataManager.SetCurrentReport(CreateOlapReport());
// Bind to OlapGrid
olapGrid1.OlapDataManager = olapDataManager;
olapGrid1.DataBind();
}
private OlapReport CreateOlapReport()
{
OlapReport report = new OlapReport();
// Set cube name
report.CurrentCubeName = "Adventure Works";
// Configure column dimension
DimensionElement columnDimension = new DimensionElement();
columnDimension.Name = "Customer";
columnDimension.AddLevel("Customer Geography", "Country");
// Configure measure
MeasureElements measures = new MeasureElements();
measures.Elements.Add(new MeasureElement { Name = "Internet Sales Amount" });
// Configure row dimension
DimensionElement rowDimension = new DimensionElement();
rowDimension.Name = "Date";
rowDimension.AddLevel("Fiscal", "Fiscal Year");
// Add to report
report.CategoricalElements.Add(columnDimension);
report.CategoricalElements.Add(measures);
report.SeriesElements.Add(rowDimension);
return report;
}
}This creates a basic OLAP Grid showing Internet Sales Amount by Customer Geography (Country) and Fiscal Year.
// Excel-like layout with indented child members
olapGrid1.Layout = GridLayout.ExcelLikeLayout;
// Normal layout with bottom summaries (default)
olapGrid1.Layout = GridLayout.Normal;
// Top summary layout
olapGrid1.Layout = GridLayout.NormalTopSummary;
// Layout without summaries
olapGrid1.Layout = GridLayout.NoSummaries;// Create conditional format
OlapGridDataConditionalFormat format = new OlapGridDataConditionalFormat();
// Add conditions
format.Conditions.Add(new OlapGridDataCondition()
{
ConditionType = OlapGridDataConditionType.GreaterThan,
MeasureElement = "Internet Sales Amount",
Value = "2000000",
PredicateType = PredicateType.And
});
// Set cell style
format.CellStyle = new OlapGridCellStyle()
{
Background = Brushes.Yellow,
FontFamily = new FontFamily("Calibri"),
FontSize = 12
};
// Apply to grid
olapGrid1.ConditionalFormats.Add(format);// Export to Excel
olapGrid1.ExportToExcel("SalesReport.xlsx");
// Export to Word
olapGrid1.ExportToWord("SalesReport.docx");
// Export to PDF
olapGrid1.ExportToPdf("SalesReport.pdf");
// Export to CSV
SaveFileDialog dialog = new SaveFileDialog();
dialog.Filter = "CSV file (.csv)|*.csv";
if (dialog.ShowDialog() == true)
{
GridCsvExport csvExport = new GridCsvExport(olapGrid1.InternalGrid.Engine);
csvExport.Export(dialog.FileName);
}private OlapReport CreateComplexReport()
{
OlapReport report = new OlapReport();
report.CurrentCubeName = "Adventure Works";
// Multiple column dimensions
DimensionElement productDimension = new DimensionElement();
productDimension.Name = "Product";
productDimension.AddLevel("Product Categories", "Category");
DimensionElement geographyDimension = new DimensionElement();
geographyDimension.Name = "Customer";
geographyDimension.AddLevel("Customer Geography", "Country");
// Multiple measures
MeasureElements measures = new MeasureElements();
measures.Elements.Add(new MeasureElement { Name = "Internet Sales Amount" });
measures.Elements.Add(new MeasureElement { Name = "Reseller Sales Amount" });
// Row dimension
DimensionElement dateDimension = new DimensionElement();
dateDimension.Name = "Date";
dateDimension.AddLevel("Fiscal", "Fiscal Year");
// Build report
report.CategoricalElements.Add(productDimension);
report.CategoricalElements.Add(geographyDimension);
report.CategoricalElements.Add(measures);
report.SeriesElements.Add(dateDimension);
return report;
}Create executive dashboards displaying KPIs, sales metrics, and performance indicators with drill-down capabilities for detailed analysis.
Analyze sales data across multiple dimensions (time, geography, product) with the ability to drill into specific regions or time periods.
Display financial data from OLAP cubes with conditional formatting to highlight variances, trends, and exceptional values.
Enable users to explore complex datasets by drilling through hierarchies and pivoting dimensions interactively.
Generate formatted reports in Excel, Word, or PDF for distribution to stakeholders who need offline access to OLAP analysis.
Compare multiple measures (actual vs. budget, current vs. prior year) across different dimensions with Excel-like layout and member properties.
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.