Data Sources

  • 8 minutes to read

A data source collects underlying data and passes it to a data engine for aggregation and summarization before data analysis.

The following data source types are supported:

Type Description API
SQL Data Source Provides connections to SQL databases. DashboardSqlDataSource
OLAP Data Source Provides connections to an OLAP cube in the Microsoft Analysis Services database. DashboardOlapDataSource
Microsoft Excel Workbooks/CSV Files Retrieves data from Microsoft Excel workbooks (XLS, XLSX or XLSM), or from CSV files. DashboardExcelDataSource
Entity Framework Data Source You can connect to an Entity Framework data source defined within the current project or you can use an external assembly that contains the data context. DashboardEFDataSource
Object Data Source Retrieves data from a class in the current project. DashboardObjectDataSource
Extract Data Source A compressed snapshot of data from a regular data source. This data is contained in a local file and can be updated from the original data source at any time. You can also use an external SQL data source or Extract Data Source as an intermediate layer. DashboardExtractDataSource
XPO Data Source Allows you to obtain data that XPO (eXpress Persistent Object) retrieves from a data source. DashboardXpoDataSource
JSON Data Source Allows you to extract JSON data from a Web-service endpoint URI, text file, or a string in JSON format. DashboardJsonDataSource
Federated Data Source Establishes relationships and combines data sources to provide uniform access. A federated data source does not support OLAP data sources. DashboardFederationDataSource
NOTE

The DevExpress Dashboard uses database servers that can be configured to use case-sensitive table/column names. For this reason, a database scheme used in dashboards is case-sensitive to prevent any problem when the product is used with such servers.

SQL Data Source

To connect to SQL databases, install the data providers on the client machine or web server. The table below lists the supported SQL databases and data providers.

Relational Database System

Supported Versions

.NET Framework Data Provider

.NET Standard 2.0 Data Provider

Microsoft SQL Server

2005 or higher

2005 Express or higher

Azure SQL Database

System.Data.SqlClient.dll

System.Data.dll (Included in .NET Framework)

System.Data.SqlClient.dll

Microsoft Access

Access 2000 or higher

Access 2007 or higher

System.Data.dll

 

Microsoft SQL Server CE

3.5, 4.0

System.Data.SqlServerCe.dll (Included in .NET Framework)

 

Oracle Database

9i or higher

Oracle.ManagedDataAccess.dll

System.Data.OracleClient.dll

Oracle.DataAccess.dll

Oracle.ManagedDataAccess.dll

Amazon Redshift

n/a

Npgsql.dll

Npgsql.dll

Google BigQuery

Only legacy SQL functions and operations are supported

DevExpress.DataAccess.BigQuery.dll

DevExpress.DataAccess.BigQuery.dll

Teradata

13.0 or higher

Teradata.Client.Provider.dll

Teradata.Client.Provider.dll

SAP Sybase Advantage

Advantage Database Server 9.1 or higher

Advantage.Data.Provider.dll

 

SAP Sybase ASE

Sybase Adaptive Server 12.0 or higher

Sybase.AdoNet4.AseClient.dll

 

SAP SQL Anywhere

11 or higher

Sap.Data.SQLAnywhere.dll

 

IBM DB2

9.5 or higher

IBM.Data.DB2.dll

IBM.Data.DB2.Core.dll

Firebird

1.5 or higher, Dialect 3

FirebirdSql.Data.FirebirdClient.dll

FirebirdSql.Data.Firebird.dll

FirebirdSql.Data.FirebirdClient.dll

MySQL

4.1 or higher

MySql.Data.dll

MySql.Data.dll

Pervasive PSQL

9.x or higher

Pervasive.Data.SqlClient.dll

 

PostgreSQL

7.x or higher

Npgsql.dll

Npgsql.dll

VistaDB

4, 5, 6

VistaDB.5.NET40.dll

 

SQLite

3.x

System.Data.SQLite.dll

Microsoft.Data.SQLite

System.Data.SQLite.dll

Microsoft.Data.SQLite

XML file

n/a

Built-in support

Built-in support

You can prepare data in the Query Builder in the following ways:

  • Join tables/views.
  • Create additional columns using expressions.
  • Pre-aggregate data.
  • Filter data.

You can also use a custom SQL query (WinForms / Web).

You can add calculated fields to this data source.

Create and configure the DashboardSqlDataSource object to bind a dashboard to an SQL database.

NOTE

If you use a custom connection string, specify the XpoProvider parameter as described in the Custom Connection Strings for Data Sources topic.

OLAP Data Source

The Microsoft Analysis Services OLE DB and Microsoft ADOMD.NET providers should be installed on the client machine or web server. Refer to the Data providers used for Analysis Services connections article for more information.

The following OLAP servers are supported:

  • Microsoft SQL Server 2000 Analysis Services
  • Microsoft SQL Server 2005 Analysis Services
  • Microsoft SQL Server 2008 Analysis Services
  • Microsoft SQL Server 2008 R2 Analysis Services
  • Microsoft SQL Server 2012 Analysis Services (Multi-dimensional mode)
  • Microsoft SQL Server 2014 Analysis Services (Multi-dimensional mode)
  • Microsoft SQL Server 2016 Analysis Services (Multi-dimensional mode)
NOTE

ASP.NET Core Dashboard control in OLAP mode supports only XML for Analysis (XMLA) with MSMDPUMP.

You cannot filter the OLAP data source. Calculated fields is also not supported.

Create and configure the DashboardOlapDataSource object to bind a dashboard to an OLAP cube.

Microsoft Excel Workbooks/CSV Files

The following Microsoft Excel/text formats are supported:

  • XLS
  • XLSX
  • XLSM
  • CSV

You can filter the Excel data source and add calculated fields.

Create and configure the DashboardExcelDataSource object to bind a dashboard to an Excel workbook.

Entity Framework Data Source

The following Entity Framework versions are supported:

  • Entity Framework 5.0 and higher.
  • Entity Framework Core 1.0 and higher.

You can use stored procedures to select only required data from the Entity Framework data source.

Calculated fields is also supported.

Create and configure the DashboardEFDataSource object to bind a dashboard to an Entity Framework data source.

NOTE

The DashboardEFDataSource should have a data provider to connect to a data source. For instance, install the System.Data.SQLite.EF6 data provider to connect to an SQLite database that uses Entity Framework 6.

Object Data Source

You can use any object that implements the IEnumerable or IListSource interface as a dashboard's data source.

You can filter the Object data source and add calculated fields.

Create and configure the DashboardObjectDataSource object to bind a dashboard to an object data source.

Extract Data Source

The DevExpress Dashboard supports a compressed data snapshot from a regular data source (such as DashboardSqlDataSource, DashboardEFDataSource, DashboardObjectDataSource, etc.). You can save a snapshot to a local file and update it from the original data source. An extracted data source can be used as a regular data source.

Extract Diagram

The data within the extract is optimized for data grouping and reduces the initial load time. You can use an in-memory cache (ExtractCacheOptions) to improve performance when accessing extract data.

You can add calculated fields to this data source.

Create and configure the DashboardExtractDataSource object to bind a dashboard to a data extract.

XPO Data Source

The XPO data source gets data from eXpress Persistent Objects.

You can filter the XPO data source and add calculated fields.

Create and configure the DashboardXpoDataSource object to bind a dashboard to eXpress Persistent Objects.

JSON Data Source

The JSON data source retrieves data from a Web-service endpoint, text file, or string in JSON format.

You can filter the JSON data source and add calculated fields.

Create and configure the DashboardJsonDataSource object to bind a dashboard to JSON-formatted data.

IMPORTANT

The DashboardJsonDataSource object requires the open source Newtonsoft.Json library. Install the Newtonsoft.Json NuGet package in Visual Studio.

Federated Data Source

You can create a query that combines data sources to provide uniform access. This query forms the federated data source which operates with the source-specific query language, translates the queries, and processes the results to supply a dashboard with data. A federated data source does not support OLAP data sources.

You can filter the Federated data source and add calculated fields.

Create and configure the DashboardFederationDataSource object to bind a dashboard to a federated data source.