linkToQuery property
MailMergeSettings.linkToQuery property
Not sure about this one.
The Microsoft Word Automation Reference suggests that this specifies that the query is executed every time the document
is opened in Microsoft Word. But the OOXML specification suggests that this specifies that the query contains a reference
to an external query file which contains the actual query.
The default value is false
.
get linkToQuery(): boolean
Examples
Shows how to execute a mail merge with data from an Office Data Source Object.
let doc = new aw.Document();
let builder = new aw.DocumentBuilder(doc);
builder.write("Dear ");
builder.insertField("MERGEFIELD FirstName", "<FirstName>");
builder.write(" ");
builder.insertField("MERGEFIELD LastName", "<LastName>");
builder.writeln(": ");
builder.insertField("MERGEFIELD Message", "<Message>");
// Create a data source in the form of an ASCII file, with the "|" character
// acting as the delimiter that separates columns. The first line contains the three columns' names,
// and each subsequent line is a row with their respective values.
string[] lines = { "FirstName|LastName|Message",
"John|Doe|Hello! This message was created with Aspose Words mail merge." };
string dataSrcFilename = base.artifactsDir + "MailMerge.mailMergeSettings.dataSource.txt";
File.WriteAllLines(dataSrcFilename, lines);
let settings = doc.mailMergeSettings;
settings.mainDocumentType = aw.Settings.MailMergeMainDocumentType.MailingLabels;
settings.checkErrors = aw.Settings.MailMergeCheckErrors.Simulate;
settings.dataType = aw.Settings.MailMergeDataType.Native;
settings.dataSource = dataSrcFilename;
settings.query = "SELECT * FROM " + doc.mailMergeSettings.dataSource;
settings.linkToQuery = true;
settings.viewMergedData = true;
expect(settings.destination).toEqual(aw.Settings.MailMergeDestination.Default);
expect(settings.doNotSupressBlankLines).toEqual(false);
let odso = settings.odso;
odso.dataSource = dataSrcFilename;
odso.dataSourceType = aw.Settings.OdsoDataSourceType.Text;
odso.columnDelimiter = '|';
odso.firstRowContainsColumnNames = true;
Assert.AreNotSame(odso, odso.clone());
Assert.AreNotSame(settings, settings.clone());
// Opening this document in Microsoft Word will execute the mail merge before displaying the contents.
doc.save(base.artifactsDir + "MailMerge.mailMergeSettings.docx");
See Also
- module Aspose.Words.Settings
- class MailMergeSettings