個性化されたドキュメント(レポート、手紙、請求書など)の作成を自動化することで、ワークフローの効率性を大幅に向上させることができます. Aspose.Words for .NET で動作する C# Mail Merge を使用すると、このガイドは、効果的かつスケール可能な文書の生成を実行するために Speed.Plugin を通過します. アプリケーション内では、MS Word または Office Interop を必要としません。

コンテンツ

Mail Mergeとは何ですか?

Mail Merge は、さまざまな情報源からのデータを含むテンプレートを人口化することによってドキュメントをダイナミックに生成するための強力な方法です Aspose.Words を使用すると、以下のようなタスクを自動化することができます。

  • 個性化された手紙や請求書を作成します。
  • XML、JSON、またはデータベースなどの構造化されたフォーマットを使用して大規模レポートを作成し、C#およびAspose.Wordsを使用して ダイナミックレポート生成を可能にします。

メールのためのデータソース

Aspose.Words は、以下を含むさまざまなデータソースをサポートしています。

  • オブジェクト:クラスインスタンスを使用して人気のテンプレート。
  • XML:ダイナミックフィールドのための構造化されたデータを充電します。
  • JSON:現代のAPIと簡単に統合できます。
  • CSV:大手ドキュメント生成のためのテーブルデータの引き出し。
  • DataTable/DataSet: データベースの統合のために ADO.NET を使用します。

メール合併のためのテンプレートの準備

メール合併テンプレートは、実行中に指定されたデータソースからのデータで収集される合併フィールドを含む文書です. テンプレートはDOCまたはDOCX形式であり、特定のスタイルを必要としません。

  • ドキュメントを開くか、MS Wordで新しいドキュメントを作成します。
  • 合併フィールドを入力したい場所にコースを置く。
  • 入力メニューから、 フィールド オプションを選択します。
  • フィールド名 リストから MergeField を選択します。
  • フィールド名(フィールド名)ボックスに合併フィールドの名前を指定し、OK(OK)をクリックします。
  • 文書を保存します。

次のスクリーンショットはAを示しています。 サンプルテンプレート ドキュメント

Mail Merge Template

.NET Mail Merge API - インストール

さまざまな方法で Aspose.Words for .NET をインストールできます:

C# を使用して Word ドキュメントにメール 合併を実行する

テンプレートが完了すると、メール合併を実行してドキュメントを生成できます。ここでは、準備されたテンプレートでメール合併を実行するためのステップです。

以下はコードサンプルで、C# で自動レポート生成する方法を示す** 値の範囲を使用する**:

メールが合併した後の文書

Execute Mail Merge in C#

XML データソースを使用して Mail Merge を実行する C#

XML ファイルは一般的にデータを保存および転送するために使用されます. Aspose.Words for .NET supports XML as a data source for mail fusion operations. Simply read the XML into a DataSet オブジェクトとメール合併を実行します. 以下は、私たちの使用ケースのための XML ファイルのサンプルです。

<customers>
    <customer Name="John Ben Jan" ID="1" Domain="History" City="Boston"/>
    <customer Name="Lisa Lane" ID="2" Domain="Chemistry" City="LA"/>
    <customer Name="Dagomir Zits" ID="3" Domain="Heraldry" City="Milwaukee"/>
    <customer Name="Sara Careira Santy" ID="4" Domain="IT" City="Miami"/>
</customers>

下記のコードサンプルは、XMLデータソースからデータを取得し、C#を使用してメール合併を実行します。

下のメッセージは合併。 寺院 XML ファイルからデータが収集されます。

Mail Merge Template for XML

この画像は、メール合併を実行した後に得られた結果のWord文書の最初のページを表しています。

Execute Mail Merge with XML in C#

合併フィールドのカスタム形式化

Aspose.Words for .NET は、メール合併プロセスのコントロールを強化します。 MailMerge.フィールドMergingCallback 属性は、それぞれの合併フィールドが直面するようにメール合并行動を設定することができます。 フィールド フィールド フィールド フィールド そして、 IFieldMergingCallback.ImageフィールドMerging メソッドは、メール合併作業のカスタマイズを可能にします。

以下は、メール合併中にカスタマイズされたフォーマットを適用する方法を示すコードサンプルです。

以下は HandleMergeFieldAlternatingRows クラスを実施します。

メールはC#を使用して地域と合併します。

いくつかの場合、Word ドキュメント内の特定の領域を人口化および繰り返す必要がある場合があります. このようなシナリオでは、地域とのメール合併を使用します. 地域を作成するには、その地域の出発と終了の両方を指定し、データソースの各記録のためのこの地域を再現します。

Mail Merge Template with Regions

以下は、前述の地域に基づいてメール合併を実行するコードサンプルです。 寺院.

以下の方法は、データをデータベースから読み取る方法を示しています。

メッセージメッセージメッセージメッセージメッセージ

よく、ソースからのデータは関係形式に構造化されます. たとえば、注文注文の詳細 との一対一の関係を持つ可能性があります. このようなシナリオでは、ノートメールの合併を使用します. 下にサンプルがあります。 会計テンプレート このシナリオがうまく合っている。

Mail Merge Template with Regions

以下は、Nested Mailの合併例のためのXMLデータソースです。

<?xml version="1.0" encoding ="utf-8"?>
<Orders xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="OrdersSchema.xsd">
    <Order>
        <Number>23</Number>
        <Address>Nelson Street</Address>
        <Suburb>Howick</Suburb>
        <City>Auckland</City>
        <Phonenumber>543 1234</Phonenumber>
        <Date>03/01/2010</Date>
        <Total>14.00</Total>
        <Item>
            <Name>BBQ Chicken Pizza</Name>
            <Price>6.00</Price>
            <Quantity>1</Quantity>
            <ItemTotal>6.00</ItemTotal>
        </Item>
        <Item>
            <Name>1.5 Litre Coke</Name>
            <Price>4.00</Price>
            <Quantity>2</Quantity>
            <ItemTotal>8.00</ItemTotal>
        </Item>
    </Order>
    <Order>
        <Number>10</Number>
        <Address>Parkville Avenue</Address>
        <Suburb>Pakuranga</Suburb>
        <City>Auckland</City>
        <Phonenumber>548 7342</Phonenumber>
        <Date>05/03/2010</Date>
        <Total>6.00</Total>
        <Item>
            <Name>Hawaiian Pizza</Name>
            <Price>4.00</Price>
            <Quantity>1</Quantity>
            <ItemTotal>4.00</ItemTotal>
        </Item>
        <Item>
            <Name>Fries</Name>
            <Price>1.00</Price>
            <Quantity>2</Quantity>
            <ItemTotal>2.00</ItemTotal>
        </Item>
    </Order>
</Orders>

この XML の関連する OrderSchema.xsd ファイルは次のとおりです。

<?xml version="1.0" encoding ="utf-8"?>
<xs:schema id="OrdersSchema" xmlns:xs="http://www.w3.org/2001/XMLSchema">
    <xs:element name="Orders">
        <xs:complexType>
            <xs:sequence>
                <xs:element name="Order">
                    <xs:complexType>
                        <xs:sequence>
                            <xs:element name="Number"/>
                            <xs:element name="Address"/>
                            <xs:element name="Suburb"/>
                            <xs:element name="City"/>
                            <xs:element name="Phonenumber"/>
                            <xs:element name="Date"/>
                            <xs:element name="Total"/>
                            <xs:element name="Item">
                                <xs:complexType>
                                    <xs:sequence>
                                        <xs:element name="Name"/>
                                        <xs:element name="Price"/>
                                        <xs:element name="Quantity"/>
                                        <xs:element name="ItemTotal"/>
                                    </xs:sequence>
                                </xs:complexType>
                            </xs:element>
                        </xs:sequence>
                    </xs:complexType>
                </xs:element>
            </xs:sequence>
        </xs:complexType>
    </xs:element>
</xs:schema>

下記のコードサンプルは、C#を使用してナストされたメール合併を実行します。

メールが合併した後の文書

以下は、付属メール合併を実行した後に得られた結果のWord文書の最初のページです。

Word Document after Mail Merge

結論

Aspose.Words for .NET は、標準および拡張機能の両方を提供する包括的なメール合併 API です. コードのわずか数行で、さまざまなデータソースからのシンプルまたは複雑なレポートを無駄に開発できます. .NET automated report generation best practices のガイドラインについては、以下を参照してください。 ドキュメンタリー. .NET のための Aspose.Words から始めるには、利用可能なものを探索してください。 開発者のガイド サンプルコードで GitHub. Aspose Pluginはまた、レポート生成のための高度な機能を提供しています。

Aspose.Words for .NET を無料で試してみてください。

無制限で .NET のための Aspose.Words を試すための無料の暫定ライセンスを取得できます。 暫定ライセンスを今すぐ取得.

More in this category