Mail Merge dengan Wilayah

Anda dapat membuat wilayah berbeda di templat Anda untuk memiliki area khusus yang dapat Anda isi dengan data Anda. Gunakan mail merge dengan wilayah jika Anda ingin menyisipkan tabel, baris dengan data berulang untuk membuat dokumen Anda berkembang secara dinamis dengan menentukan wilayah tersebut di dalam templat Anda.

Anda dapat membuat wilayah bersarang (turunan) serta menggabungkan wilayah. Keuntungan utama menggunakan tipe ini adalah menambah bagian di dalam dokumen secara dinamis. Lihat detail selengkapnya di artikel berikutnya “Bersarang Mail Merge dengan Wilayah”.

Cara Mengeksekusi Mail Merge dengan Region

Wilayah mail merge adalah bagian tertentu di dalam dokumen yang memiliki titik awal dan titik akhir. Kedua titik direpresentasikan sebagai bidang mail merge yang memiliki nama spesifik “TableStart:XXX” dan “TableEnd:XXX”. Semua konten yang disertakan dalam wilayah mail merge akan diulang secara otomatis untuk setiap rekaman di sumber data.

Aspose.Words memungkinkan Anda menjalankan mail merge dengan wilayah menggunakan salah satu metode ExecuteWithRegions yang menerima sumber data khusus IMailMergeDataSource.

Contoh kode berikut menunjukkan cara mengeksekusi mail merge dengan wilayah dari database sqlite dengan SQLiteCpp:

Anda dapat melihat perbedaan antara dokumen sebelum mengeksekusi mail merge dengan wilayah:

mail_merge_with_regions_template

Dan setelah mengeksekusi mail merge dengan wilayah:

mail_merge_with_regions_execute

Batasan Mail Merge dengan Wilayah

Ada beberapa poin penting yang perlu Anda pertimbangkan saat melakukan mail merge dengan wilayah:

  • Titik awal TableStart:Orders dan titik akhir TableEnd:Orders keduanya harus berada di baris atau sel yang sama. Misalnya, jika Anda memulai wilayah penggabungan di sel tabel, Anda harus mengakhiri wilayah penggabungan di baris yang sama dengan sel pertama. Nama bidang gabungan harus cocok dengan nama kolom di DataTable Anda. Kecuali Anda menentukan bidang yang dipetakan, mail merge dengan wilayah tidak akan berhasil untuk bidang gabungan apa pun yang memiliki nama selain nama kolom.
  • Aspose.Words untuk C++ hanya mendukung sumber data berbasis IMailMergeDataSource dan IMailMergeDataSourceRoot. Tidak seperti .NET dan Java, C++ tidak memiliki lintas platform API yang diterima secara umum untuk bekerja dengan basis data (seperti ADODB, ODBC, atau JDBC). Untuk bekerja dengan sumber data tertentu, Anda harus mengimplementasikan antarmuka IMailMergeDataSource atau IMailMergeDataSourceRoot.

Jika salah satu dari aturan ini dilanggar, Anda akan mendapatkan hasil yang tidak terduga atau pengecualian dapat dilemparkan.