Mail Merge和报告

Mail Merge是一种流行的功能,用于快速轻松地创建信件,标签和信封等文档。 Aspose.Words使您能够从具有Mail Merge字段的模板生成文档。

Mail Merge字段是一个字段,您可以将其插入到mail merge模板中,以在输出文档中包含来自数据源记录的特定值。 例如,您可以在电子邮件模板中插入合并字段,以便问候语将具有收件人的名字,而不是通用的"你好!". Aspose.Words将来自外部源(如数据库或文件)的数据放入这些字段并设置格式。 生成的文档保存在指定的文件夹中。

Aspose.Words采用标准Mail Merge功能,并向前推进许多步骤,将其转变为成熟的报告解决方案,允许您创建更复杂的文档,如报告、目录、库存和发票。 以下是Aspose.Words报告解决方案的一些优点:

  • 使用标准Mail Merge字段在Microsoft Word中设计报表
  • 定义文档中不断增长的区域,例如详细订单行
  • 在mail merge期间插入图像
  • 使用Mail Merge事件处理程序执行任何自定义逻辑、控制格式设置或插入复杂内容
  • 使用任何类型的数据源中的数据填写文档

Mail Merge {#mechanism-and-main-components-of-a-mail-merge-operation}的机制和主要组成部分

Aspose.Words提供了在各种支持的格式中加载文档的能力,然后允许用户执行Mail Merge操作。

通常,加载的文档允许您存储合并字段,例如DOCX格式的文档。 但是有些格式不存储这些字段,例如TXT。 如果Aspose.Words支持加载此类文件格式,则可以将合并字段直接添加到文档模型中,将文档保存在方便的支持的格式中,然后执行Mail Merge操作。

Mail Merge操作将合并您的mail merge template和您的data source以生成单个merged documents

什么是Mail Merge模板

使用合并模板应用mail merge操作的目标是简化创建文档的过程。

有几种方法可以创建和设计合并模板。 您可以使用Microsoft Word,并且合并模板不必是Microsoft Word模板,即DOT或DOTX格式的文档,它可以是DOC或DOCX格式的常规文档。 您需要将一些称为合并字段的特殊字段插入到此模板中,以便稍后插入数据源中的数据。 或者您可以使用DocumentBuilder类以编程方式创建合并模板。

合并模板包含主文本,在执行Mail Merge操作后,主文本在所有输出文档中应相同。 如果能够向模板添加合并字段,则可以为模板使用任何格式。 在Mail Merge操作期间,模板中的所有合并字段都将从数据源中填充。

Mail Merge操作 {#data-source-types-for-a-mail-merge-operation}的数据源

Aspose.WordsMail Merge接受各种数据源。 这可以是一个DataTable, DataView, DataSet, IDataReader, ADO.NET支持的值数组,或IMailMergeDataSource实现表示的自定义数据源。

数据源包含在Mail Merge操作期间拉取的所有信息,以便个性化单个电子邮件和文档。 数据源可以手动创建,也可以通过从现有数据库或应用程序报告生成。 如果您有XML格式的数据,则可以加载并将其与DataSet合并。 Mail Merge操作将遍历所有数据源记录,并将它们插入文档中的Mail Merge字段中。 您可以实现一些mail merge接口(如IMailMergeDataSourceRoot)来合并来自任何数据源的数据,包括LINQ查询、XML文件或业务对象。

下面的代码示例演示如何加载数据表作为Mail Merge操作的数据源:

Mail Merge操作 {#merged-documents-of-a-mail-merge-operation}的合并文档

合并文档是将模板与数据源合并时Mail Merge操作的结果。 合并文档中的所有合并字段都将替换为数据源中的实际数据。

下图显示了在执行Mail Merge操作之前具有合并字段的合并模板的示例。

mail-merge-and-reporting-aspose-words-java-1

下图显示了执行Mail Merge操作后输出合并文档的示例。

mail-merge-and-reporting-aspose-words-java-2

请参阅