Skip to main content

Data Source Wizard in SpreadsheetControl

  • 5 minutes to read

The Data Source Wizard allows users to create and configure a new data source. If multiple data sources are available, users can select a source that is required for a particular task. After the wizard is complete, data source configuration is stored in the XLS/XLSX spreadsheet file. Users do not need to reconfigure the data source if they reopen the same file.

To invoke the wizard, click Add Data Source in the External Data Sources group of the Mail Merge tab.

SpreadsheetControl_MailMerge_Add-New-Data-Source

The Data Source Wizard appears. Follow the steps below.

Specify a Data Source Name

On the first page of the invoked Data Source wizard, specify a name for the new data source and click Next.

Howto-Bind-Snap-Report-to-Data01

Select a Data Connection

On this page, select a data source type and click Next.

Howto-Bind-Snap-Report-to-Data01a

Set the SpreadsheetDataSourceWizardOptions.UseMergedConnectionTypePage property to true to use the wizard design illustrated above.

The XPO Data Source is hidden from the list of data sources available in the Data Source Wizard. To customize the list of displayed data connection types, use the SpreadsheetDataSourceWizardOptions.DataSourceTypes property.

Available Data Connection Types

Wizard allows you to connect to the following types of data connections:

Supported SQL Data Source Providers

The following table lists all supported data source providers you can select on the Select a Data Connection Type page:

Relational Database System

Supported Versions

.NET Framework Data Provider

.NET 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 (Included in .NET Framework)

 

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.Core.dll

Amazon Redshift

n/a

Npgsql.dll

Npgsql.dll

Google BigQuery

Only legacy SQL functions and operations are supported

ODBC

ODBC

Teradata

13.0 or higher

Teradata.Client.Provider.dll

Teradata.Client.Provider.dll

SAP HANA

2.0 or higher

SAP HANA Client 2.0

SAP HANA Client 2.0

Sap.Data.Hana.Core.v2.1.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

VistaDB.5.NET40.dll

 

SQLite

3.x

System.Data.SQLite.dll

Microsoft.Data.SQLite.dll

System.Data.SQLite.Core.dll

Microsoft.Data.Sqlite.Core.dll

XML file

n/a

Built-in support

Built-in support

Custom Connection String

The Select a Data Connection Type wizard page allows you to specify a custom connection string as a data connection.

Specify the connection string in the following dialog:

DSW-custom-connection-string

Use the XpoProvider parameter to identify a data source provider. See connection string examples in the table below.

Relational Database System

Connection String Sample

Microsoft SQL Server[1]

XpoProvider=MSSqlServer;Data Source=(local);User ID=username;Password=password;Initial Catalog=database;Persist Security Info=true

Microsoft Access

XpoProvider=MSAccess;Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\mydatabase.mdb;User Id=admin;Password=;

XpoProvider=MSAccess;Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\mydatabase.accdb;User Id=admin;Password=;

Microsoft SQL Server CE

XpoProvider=MSSqlServerCE;Data Source=MyDatabase.sdf;Password=MyPassword

Oracle Database

XpoProvider=Oracle;Data Source=TORCL;User ID=MyUserName;Password=MyPassword

XpoProvider=ODP;Data Source=TORCL;User ID=MyUserName;Password=MyPassword

XpoProvider=ODPManaged;Data Source=TORCL;User ID=MyUserName;Password=MyPassword

Amazon Redshift

XpoProvider=Amazon Redshift;Server=127.0.0.1;User ID=MyUserName;Password=MyPassword;Database=MyDatabase;Encoding=UNICODE

Google BigQuery

XpoProvider=BigQuery;ProjectID=myProject;DataSetId=myDataSet;OAuthClientId=myClientId;OAuthClientSecret=mySecret;OAuthRefreshToken=myRefreshToken

XpoProvider=BigQuery;ProjectId=project;DatasetId=dataset;ServiceAccountEmail=example@gmail.com;PrivateKeyFileName=key.p12

Teradata

XpoProvider=Teradata;Data Source=myServerAddress;User ID=myUsername;Password=myPassword;

SAP Sybase Advantage

XpoProvider=Advantage;Data Source=\myserver\myvolume\mypat\mydd.add;ServerType=local;User ID=ASSSYS;TrimTrailingSpaces=true

SAP Sybase ASE

XpoProvider=Ase;Port=5000;Data Source=MyAseServer;User ID=MyUserName;Password=MyPassword;Initial Catalog=MyDatabase;Persist Security Info=true

SAP SQL Anywhere

XpoProvider=Asa;eng=server;uid=user;pwd=password;dbn=database;persist security info=true;

IBM DB2

XpoProvider=DB2;Server=server:port;Database=database;UID=user;PWD=password;

Firebird

XpoProvider=Firebird;DataSource=localhost;User=SYSDBA;Password=masterkey;Database=MyDatabase.fdb;ServerType=0;Charset=NONE

MySQL

XpoProvider=MySql;Server=MyServerAddress;User ID=MyUserName;Password=MyPassword;Database=MyDatabase;Persist Security Info= true;Charset=utf8

Pervasive PSQL

XpoProvider=Pervasive;Server=MyServerAddress;UID=MyUserName;PWD=MyPassword;ServerDSN=MyDatabase

PostgreSQL

XpoProvider=Postgres;Server=127.0.0.1;User ID=MyUserName;Password=MyPassword;Database=MyDatabase;Encoding=UNICODE

VistaDB

XpoProvider=VistaDB;Data Source=C:\mydatabase.vdb4

XpoProvider=VistaDB5;Data Source=C:\mydatabase.vdb5

SQLite

XpoProvider=SQLite;Data Source=filename

XML file

XpoProvider=InMemoryDataStore;data source=D:\Contacts.xml;read only=True

Select Predefined Data Connections

Your application may already contain data connections that match the selected connection type. In such cases, the wizard shows a page that allows you to select whether you want to use an existing connection or create a new one.

DataSourceWizard-03

Configure Connection Properties

On this page, specify connection string parameters and click Next.

DSW-Connection-String-Page

Depending on the selected data provider, this page may display additional connection options (such as authentication type and database name).

To proceed to the next wizard page, click Next.

On the next page you can choose whether to include user name and password information within the saved connection string. Choose any option and click Next.

Specify a Query

This page allows you to select a query or a stored procedure.

Click Run Query Builder… to invoke the Query Builder window.

Howto-Bind-Snap-Report-to-Data03new

Important

Manual SQL editing is not allowed by default. Custom SQL queries may lead to inadvertent or unauthorized modifications to your data/database structure. Before you decide to allow manual SQL editing, we recommend that you follow best practices and implement appropriate end-user permissions at the database level.

If you do need to enable custom SQL, set the SpreadsheetControl.Options.DataSourceWizard.EnableCustomSql option to true.

Note that only SELECT statements are allowed in the text. To override this restriction, handle the SpreadsheetControl.ValidateCustomSqlQuery event.

In the invoked Query Builder window, double-click the Categories item in the list of available tables on the left to add it to the tables included in the query.

Enable the check box for the Categories table, to include all of its fields in the view.

Howto-Bind-Snap-Report-to-Data03anew

Click OK to close the Query Builder and return to the Data Source Wizard.

When the query is ready, click Finish to save it.

Howto-Bind-Snap-Report-to-Data04new

After the Wizard Is Complete

The Field List Panel displays the structure of the created data source.

To modify the query used in the data source, click Manage Relations -> Manage Queries in the External Data Sources group.

Tip

The Wizard saves the data source configuration to the spreadsheet file. If a user closes and reopens the file, they can start a mail merge operation without having to run the Wizard again.

Footnotes
  1. The Microsoft SQL Server data provider is automatically specified if you set the “Initial Catalog” parameter and do not use the word “Provider” (for instance, the “XpoProvider” parameter) in the connection string.

See Also