1.7

Table Of Contents
Example
This script checks if the output channel is EMAIL and if the context to be merged is the Print
context (which happens if the Print context is attached to an email). If this is the case, it includes
and excludes certain Print sections from the output.
if (channel == Channel.EMAIL) {
if (merge.context.type == ContextType.PRINT) {
merge.context.sections['Section 1'].enabled = false;
merge.context.sections['Section 2'].enabled = false;
merge.context.sections['Section 3'].enabled = true;
}
}
merge
In Control Scripts, the root level instance of the object merge is the entry point from where you
can query and change the way contexts are merged. It gives access to the template with all its
contexts and sections.
For sample scripts, follow the links to the respective objects.
For more information about Control Scripts, see "Control Scripts" on page258 and "Control
Script API" on page516.
Field Type Description
channel "Channel"
on
page529
The final output channel: EMAIL, PRINT or WEB. The channel
doesn't change when the output consists of different contexts.
When generating an email, for example, the channel is EMAIL,
even when merging the Print context to attach it to the email.
"context"
on the
previous
page
Context The context rendered by this merge run. If for one record,
different contexts need to be output (for example, when the
Print context is attached to an email) a record is merged
multiple times: once per context. Per merge run,
merge.context shows with which context the record is
merged.
"section"
on the
Section In template scripts, this object defines the section that is being
merged.
Page 519