Page tree

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migration of unmigrated content due to installation of a new plugin

...

Description

Excerpt

Sets a main document data source to an ADO.NET

...

DataTable.

...

If

...

the

...

specified

...

DataTable

...

contains

...

more

...

than

...

one

...

row,

...

WordWriter

...

will

...

use

...

the

...

first

...

row

...

as

...

the

...

data

...

source.

...

Signature
C#
C#
 public void SetDataSource(System.Data.DataTable dt, System.String name)
{signature}
{signature:
}
Signature
vb.net
vb.net
Public Sub SetDataSource(ByVal dt As System.Data.DataTable, ByVal name As String)
{signature}
{parameters}
{param:dt}An 
Parameters
Param
dt
dt

An ADO.NET

DataTable

to

use

as

the

data

source.

WordWriter

will

use

the

first

row

of

the

DataTable

as

the

data

source.

{param} {param:name}Specifies the data source name for the set of merge fields. {param} {exceptions} {exception:ArgumentNullException}[Save|WordTemplate.Save] will throw this exception if {{null}} \(C\#\) or {{Nothing}} \(VB.NET\) is passed to the method. {exception} {exception:ArgumentException} {exception} {remarks}Each merge field in a WordWriter template must bind to a data source field/value pair. The number of merge fields in the template may not exceed the number of values in the data source. However, the number of values in the data source may be greater than the number of merge fields in the template. This method may be called once for each set of merge fields in the main document. {remarks} {example}{code:csharp|title=C#}

Param
name
name

Specifies the data source name for the set of merge fields.

Exceptions
Exception
ArgumentNullException
ArgumentNullException

Save will throw this exception if null (C#) or Nothing (VB.NET) is passed to the method.

Exception
ArgumentException
ArgumentException

Remarks

Each merge field in a WordWriter template must bind to a data source field/value pair. The number of merge fields in the template may not exceed the number of values in the data source. However, the number of values in the data source may be greater than the number of merge fields in the template.

This method may be called once for each set of merge fields in the main document.

Example
Code Block
csharp
csharp
titleC#


          WordTemplate oWW = new WordTemplate();
          oWW.Open(@"c:\temp\template.doc");
          string strSQL = "SELECT LastName, FirstName, " +
               "TitleOfCourtesy, Address, City, Region, PostalCode " +
               "FROM Employees WHERE EmployeeID=1";

          //--- Create an OLEDB connection.
          OleDbConnection oConn = new OleDbConnection(strConnString);

          //--- Create an instance of the OleDbDataAdapter
          //--- object.
          OleDbDataAdapter oAdpt = new OleDbDataAdapter(strSQL, oConn);

          //--- Create a DataTable and fill it with the data
          //--- returned by the SQL database query.
          DataTable oDT = new DataTable();
          oAdpt.Fill(oDT);

          //--- Pass the DataTable to SetDataSource.
          oWW.SetDataSource(oDT, "Employee");
        
{code} {code:
Code Block
vb.net
|title=
vb.net
titlevb.net
}


          Dim oWW As New WordTemplate()
          oWW.Open("c:\temp\template.doc")
          Dim strSQL As String = "SELECT LastName, FirstName, " & _
               "TitleOfCourtesy, Address, City, Region, PostalCode " & _
               "FROM Employees WHERE EmployeeID=1"

          '--- Create an OLEDB connection.
          Dim oConn As New OleDbConnection(strConnString)

          '--- Create an instance of the OleDbDataAdapter
          '--- object.
          Dim oAdpt As New OleDbDataAdapter(strSQL, oConn)

          '--- Create a DataTable and fill it with the data
          '--- returned by the SQL database query.
          Dim oDT As New DataTable()
          oAdpt.Fill(oDT)

          '--- Pass the DataTable to SetDataSource.
          oWW.SetDataSource(oDT, "Employee")
        
{code} {example}