Emulate a Word mail merge using WordTemplate, featuring new nested repeat block technology. A document will be created with each recipient's letter on a new page, complete with a nested table of orders. Take care of all of your mail merge production with one print job. |
Note that using nested repeat blocks is only supported by using docx files.
public void GenerateDocument() { WordTemplate wt = new WordTemplate(); wt.Open(@"..\..\WordTemplateFiles\NestedMailMergeTemplate.docx"); //Retrieve the Data from the source, a csv file with a helper method DataTable dt = GetMailMergeData(@"..\..\WordData\NestedMailMergeData.csv"); // set dt as the datasource for the repeatblock and "MailMerge" as the bookmark. // this will cause wordwriter to bind each letter on a different page of the output file. wt.SetRepeatBlock(dt, "MailMerge"); wt.Process(); //Save the Document in the desired location wt.Save(@"..\..\WordOutputFiles\NestedMailMerge_output.docx"); } |
Template: NestedMailMergeTemplate.docx Output: NestedMailMerge_output.docx |