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 the MailMerge's

...

data

...

source

...

to

...

a

...

two-dimensional

...

(rectangular)

...

array

...

of

...

objects.

...

A

...

MailMerge

...

by

...

default

...

treats

...

the

...

entire

...

page

...

as

...

a

...

repeat

...

block,

...

adding

...

a

...

new

...

page

...

when

...

needed.

...

A

...

MailMerge

...

by

...

default

...

treats

...

the

...

page

...

content

...

as

...

a

...

repeat

...

block,

...

repeating

...

the

...

page

...

content

...

for

...

each

...

row

...

unless

...

NEXT

...

fields

...

are

...

used.

...

If

...

the

...

WordTemplate.EnableNEXTFields

...

property

...

is

...

set

...

to

...

true,

...

the

...

NEXT

...

field

...

can

...

also

...

be

...

used

...

to

...

indicate

...

that

...

the

...

next

...

row

...

of

...

data

...

should

...

be

...

inserted

...

instead

...

of

...

the

...

current

...

row

...

at

...

the

...

next

...

occurence

...

of

...

the

...

merge

...

fields.

...

This

...

should

...

largely

...

imitate

...

the

...

behavior

...

of

...

a

...

Microsoft

...

Word

...

Mail

...

merge.

...

Signature
C#
C#
 public void SetMailMerge(System.Collections.ICollection dataSource)
{signature}
{signature:
}
Signature
vb.net
vb.net
Public Sub SetMailMerge(ByVal dataSource As System.Collections.ICollection)
{signature}
{parameters}
{param:dataSource}An ICollection to use as the data source.\{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}You can call [SetMailMerge|WordTemplate.SetMailMerge] once for each instance of [WordTemplate].  If you are using the Word 2003 binary template file type 
Parameters
Param
dataSource
dataSource

An ICollection to use as the data source.

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

You can call SetMailMerge once for each instance of WordTemplate. If you are using the Word 2003 binary template file type (.doc/.dot),

you

can

call

SetMailMerge

or

SetRepeatBlock,

but

not

both.

Additionally,

only

the

page

content

is

repeated

for

each

row,

not

the

entire

page

itself.

If

you

wish

to

have

the

page

itself

repeat

for

each

row,

you

will

need

to

remember

to

place

a

page

break

at

the

bottom

of

the

page.

Alternatively,

you

can

create

a

hidden

page

break

at

the

top

of

the

page

as

follows:

*

  • Put
  • the
  • cursor
  • at
  • the
  • top
  • of
  • the
  • document
*
  • Go
  • to
  • Page
  • Layout
  • and
  • open
  • the
  • paragraph
  • formatting
  • dialog
*
  • On
  • the
  • Line
  • and
  • Page
  • Breaks
  • tab,
 
  •   select
  • "Page
  • Break
  • Before"
 Merge Fields for using the SetMailMerge method must not specify a data source \-\- the data source is implied, and using a data source name will cause WordTemplate to throw an error. Valid merge field formats for use with SetMailMerge include field names (*«fieldname»*) and field ordinals (*«#1»*). {introducedin: 8.2} [SetMailMerge|WordTemplate.SetMailMerge] will now work with headers and footers. A section break is required instead of a page break if each header or footer will be different. {remarks} {example}{code:csharp|title=C#}

 Merge Fields for using the SetMailMerge method must not specify a data source -- the data source is implied, and using a data source name will cause WordTemplate to throw an error. Valid merge field formats for use with SetMailMerge include field names («fieldname») and field ordinals («#1»).

Introducedin
8.2
8.2

SetMailMerge will now work with headers and footers. A section break is required instead of a page break if each header or footer will be different.

Example
Code Block
csharp
csharp
titleC#

          wt.SetMailMerge(coll);
        
{code} {code:
Code Block
vb.net
|title=
vb.net
titlevb.net
}


          wt.SetMailMerge(coll)
        
{code} {example}