Lewati ke konten utama
Blog · Otomatisasi dokumen

Bagaimana cara membuat template mail merge di Mustache?

18 Oktober 2022 · Buat templat penggabungan surat Word menggunakan sintaks Mustache. Ketahui cara membuat dokumen dengan tabel dinamis untuk otomatisasi pembuatan dokumen.

Apa itu Mail Merge?

Mail merge adalah metode membaca data dari sumber data dan mengganti variabel yang sesuai di dokumen lain. Biasanya dibutuhkan dua file, satu untuk menyimpan kolom penggabungan - variabel untuk data yang akan dimasukkan. File lainnya berisi instruksi untuk memformat data variabel dan informasi yang akan identik di setiap hasil mail merge.

Misalnya, data dibaca dari basis data, JSON, CSV, spreadsheet Excel, Google Sheets, atau bentuk data terstruktur lainnya dan dimasukkan ke dalam templat dokumen yang sudah ada untuk email, faktur, atau dokumen lain yang memerlukan pengisian data dinamis. Templat tersebut seringkali berupa dokumen Word, PDF, email, surat formulir, dll.

Bagaimana cara membuat template menggunakan sintaks Mustache?

Membuat template Word di Mustache membutuhkan sedikit pemahaman tentang kode dasar. Meskipun Mustache bukan sintaks templat, ia dapat bermanfaat dalam membuat template tingkat lanjut yang dapat digunakan untuk penggabungan surat (mail merge). Mari kita lihat contoh berikut untuk memahami bagaimana penggunaan sintaks Mustache dapat membantu kita membuat beberapa template yang bagus.

Pada templat Faktur di atas, Anda dapat melihat bahwa seluruhnya dirancang menggunakan sintaks Mustache. Templat Word ini menggunakan Mustache untuk mendesain header, isi, footer, dan bahkan tabel yang dinamis di dalam templat.

Mari kita lihat bagaimana setiap sintaks membantu mengisi data untuk menghasilkan faktur dinamis.

Judul

{} - Menandai awal sebuah header. Sintaks yang akan ditambahkan di dalam area header {{/foreach header}} - Menutup header

Tubuh - Wajib

{} - Menandai awal isi dalam badan dokumen {{/foreach body}} - Menandai akhir badan dokumen

Catatan kaki

{} - Menetapkan awal footer dokumen. Sintaks akan ditambahkan di dalam area footer. {{/foreach footer}} - Menetapkan akhir footer dokumen

Anda dapat mengirimkan data ke template Mustache sebagai JSON untuk contoh faktur di atas. Berikut adalah contoh data untuk menghasilkan dokumen untuk template di atas.

{ "Dokumen": [ { "header": { "docType": "Salinan Asli" }, "body": { "Kolom 1": "Kuantitas", "Kolom 2": "Deskripsi", "Kolom 3": "Harga Satuan", "Kolom 4": "Total", "Faktur": { "nomor": 14957, "tanggal": "25-02-2022", "instruksi": "Faktur Instruksi 1", "subtotal": 200150, "pajak": "18%", "tanggal jatuh tempo": "25-03-2022", "pengiriman": "200" }, "Penagih": { "telepon": "989797", "faks": "998463", "email": "doc1@email.com", "web": "www.doc1.com", "alamat": { "perusahaan": "Organisasi 1", "jalan": "Jalan 1", "kota": "Kota 1", "kode pos": "123456" } }, "Penerima": { "nama": "penerima 1", "alamat": { "jalan": "testveien 3 ", "kota": "Kota 1", "kode pos": "0555", "negara": "Negara 1" } }, "Produk": [ { "kuantitas": 1, "deskripsi": "barang 1", "harga satuan": 45, "harga total": 867 }, { "kuantitas": 2, "deskripsi": "barang 2", "harga satuan": 123, "harga total": 3464 }, { "kuantitas": 3, "deskripsi": "barang 3", "harga satuan": 323, "harga total": 6564 } ] }, "footer": { "telepon": "telepon123", "faks": "faks123", "email": "123@mail.com", "web": "www.123.com" }

} ] }

Pernyataan IF dalam Templat

Microsoft Word memungkinkan Anda menggunakan kolom penggabungan surat (mail merge) dan tag Mustache dengan pernyataan IF . Fitur ini berguna saat membuat dokumen dengan nilai bersyarat. Kolom penggabungan IF mencegah spasi yang tidak diinginkan ketika suatu kondisi tidak terpenuhi atau nilainya kosong.

{ JIKA [Kondisi] [Tampilkan Nilai 1] [Tampilkan Nilai 2] }

Misalnya

Selesaikan dokumen Anda.

Integrasikan ke dalam produk Anda dengan API, otomatiskan tanpa perlu menulis kode, atau gunakan alat gratis di browser Anda. Tidak perlu kartu kredit untuk memulai.

Mulailah dengan satu panggilancurl -X POST https://api.pdf4me.com/v1/ConvertToPdf

Tingkat gratis · Tidak memerlukan kartu kredit