Microsoft SQL Server

The Dashboard Designer provides the capability to connect to multiple types of SQL databases using the Data Source wizard. You can also use data access API to connect to the database and select the required data in code.

This tutorial describes how to establish a connection to a database deployed on the Microsoft SQL Server and select the required data.

Important

To connect to various SQL databases, the Dashboard Designer requires a corresponding provider to be installed on the client machine. To learn more, see Supported Data Sources.

Creating a Data Source in the Data Source Wizard

To connect to the MS SQL database in the Dashboard Designer, do the following steps.

  1. Click the New Data Source button in the Data Source ribbon tab.

    DataBinding_NewDataSource

  2. On the first page of the invoked Data Source Wizard dialog, select Database and click Next.

    DataSourceWizard_Database

  3. On the next page, select the Microsoft SQL Server data provider and specify the required connection parameters.

    DataSourceWizard_MSSQLServer

    • Server name

      Specify the name of the MS SQL server to which the connection should be established.

    • Authentication type

      Specify the authentication mode of the MS SQL Server. You can choose whether to use Windows authentication or Server authentication.

    • User name

      Specify the user name used to authenticate to the MS SQL server.

    • Password

      Specify the password used to authenticate to the MS SQL server.

    • Database

      Select the database that contains the required data.

  4. After you have specified the required connection parameters, click Next and specify how to select data from the database.

    DataSourceWizard_Query

    • Select the Query option and run the Query Builder by clicking the Run Query Builder... button. The Query Builder allows you to choose the required tables/columns visually and passes the resulting SQL query to the SQL String editor. Here you can customize this query or click Finish to create the data source.

      Important

      Note that the SQL String editor does not allow you to specify SQL queries manually by default. To enable this capability, set the SqlWizardSettings.EnableCustomSql property exposed by the DashboardDataSourceWizardSettings class to true.

    • Select the Stored Procedure option to select one of the stored procedures from the database.

    Click Next.

  5. On the final page, you can optionally add query parameters and preview data.

    DataSourceWizard_AddQueryParameters

    Click Finish to create the data source.

Creating a Data Source in Code

To create a data source that uses a connection to the MS SQL database, create the instance of the DashboardSqlDataSource class and perform the following steps.

  1. Specify connection parameters to the MS SQL database. Create the MsSqlConnectionParameters class object and specify the following properties.

    Assign the resulting MsSqlConnectionParameters object to the SqlDataSource.ConnectionParameters property.

    Note

    As an alternative, you can add a connection string with required parameters to the application configuration file. Then, assign the connection string name to the SqlDataSource.ConnectionName property.

  2. Select the required data by specifying the query. You can do this in the following ways.

    • The SelectQuery object allows you to specify a set of tables/columns, which form a SELECT statement when executing a query.
    • The CustomSqlQuery object allows you to specify an SQL query manually.
    • The StoredProcQuery object allows you to perform a stored procedure called to supply the dashboard with data.

    Add the created query to the SqlDataSource.Queries collection exposed by the DashboardSqlDataSource object.

  3. Add the created DashboardSqlDataSource object to the Dashboard.DataSources collection.

The following code snippet shows how to supply the dashboard with data from the Northwind database deployed on the MS SQL Server.

using DevExpress.DashboardCommon;
using DevExpress.DataAccess.ConnectionParameters;
using DevExpress.DataAccess.Sql;
// ...
            MsSqlConnectionParameters msSqlParams = new MsSqlConnectionParameters();
            msSqlParams.AuthorizationType = MsSqlAuthorizationType.Windows;
            msSqlParams.ServerName = "localhost";
            msSqlParams.DatabaseName = "Northwind";

            DashboardSqlDataSource sqlDataSource = new DashboardSqlDataSource("Data Source 1", msSqlParams);
            SelectQuery selectQuery = SelectQueryFluentBuilder
                .AddTable("SalesPerson")
                .SelectColumns("CategoryName", "Extended Price")
                .Build("Query 1");
            sqlDataSource.Queries.Add(selectQuery);
            sqlDataSource.Fill();
            dashboard.DataSources.Add(sqlDataSource);