Dalam pembuatan template email, terkadang kita membutuhkan data dinamis yang bisa diatur/dipersonalisasi sesuai dengan penerima email contohnya nama customer, nomor hp customer, nomor quotation, dan sebagainya yang tidak bisa disamakan antar semua penerima email. Untuk mengakomodir hal tersebut, Odoo sudah menyediakan fitur dynamic placeholder dimana kita bisa menggenerate variabel apa saja yang akan dipanggil ke dalam template email.

Untuk menemukan nama variabel yang kita butuhkan untuk dynamic placeholders, kita bisa menggunakan 2 cara:

  1. Mengecek nama field dengan meng-hover fieldnya langsung di user interfacenya. Nanti akan muncul tooltips berisi informasi nama field, dsb.

  2. Memanfaatkan menu Technical > Database Structure > Models di Odoo.

Models dalam struktur database Odoo adalah representasi dari tabel database. Setiap model mendefinisikan struktur dan jenis data yang akan disimpan, termasuk kolom-kolom (fields) dan hubungan antar tabel. Contoh model adalah res.partner yang merepresentasikan data customer dan vendor. Dalam model res.partner, beberapa fields bisa berupa name, email, dan phone, yang masing-masing menyimpan informasi nama, email, dan nomor telepon dari customer atau vendor. Fields ini dapat memiliki berbagai jenis data seperti teks, angka, tanggal, relasi ke model lain, dan sebagainya.

Karena di dalam models kita bisa mengetahui struktur data, maka dalam membuat dynamic placeholder kita bisa memanfaatkan models untuk mengetahui variabel yang perlu kita panggil untuk menarik data yang kita butuhkan ke template email.

Nah, dalam artikel ini akan dijelaskan bagaimana cara memanfaatkan database structure untuk mengetahui variabel dynamic placeholder. Berikut langkah-langkah yang dibutuhkan:

  1. Aktifkan Developer Mode

Pertama, pastikan kamu telah mengaktifkan Developer Mode. kamu bisa melakukannya dengan mengklik nama pengguna di pojok kanan atas dan memilih “Activate the Developer Mode” atau melalui URL dengan menambahkan `?debug=1` pada akhir URL Odoo.

  1. Akses Menu Models

Setelah Developer Mode aktif, navigasikan ke menu Settings > Technical > Database Structure > Models . Di sini, kamu dapat melihat daftar semua model yang ada di sistem Odoo.

  1. Cari Model dan Field yang Relevan

Misalnya, kamu ingin customize template Delivery Order, maka kamu perlu mengetahui terlebih dulu model dari template tersebut. Untuk mengetahui nama modelnya, kamu bisa melihatnya di form email template di kolom ‘Applies To’. Ternyata, untuk email template Delivery Order menggunakan model ‘Transfer’. Setelah itu di daftar model kamu bisa mencari model ‘Transfer’.

  1. Lihat Field Model

Setelah menemukan model yang relevan dengan kebutuhan kita dalam daftar model, klik modelnya. Ini akan membuka halaman detail model di mana kamu bisa melihat semua field yang ada dalam model tersebut di tab ‘Fields’. Contohnya di halaman detail Model ‘Transfer’, kamu akan melihat field seperti: Reference, Contact, Product, dll

  1. Lihat Detail Field

Terkadang untuk memanggil dynamic placeholder dalam email template yang sesuai, kita membutuhkan data yang perlu dipanggil dari model lain. Untuk mengetahui model yang terkait dari data yang akan kita panggil, kita bisa mencari tahu related modelnya melalui detail dari setiap field.

Berikut cara melihat detail field di dalam models:

  • Klik edit pada form Model.
  • Klik pada field tertentu untuk melihat detail lebih lanjut. Detail ini termasuk tipe field, relasi ke model lain, dan nama teknis yang bisa kamu gunakan dalam template email.

Contohnya di model ‘Transfer’ saat mengklik field ‘Contact`, kita dapat mengetahui ternyata field tersebut merujuk ke model `res.partner’.

  1. Cari nama field yang dibutuhkan dari related model

Contohnya jika pada email template dengan model Transfer kita ingin memanggil data nomor handphone dari related model Contact (‘res.partner’). Maka, kita perlu mengetahui dulu nama field yang menampung data nomor handphone di model Contact. Langkah-langkah yang perlu dilakukan adalah:

  • Cari model ‘res.partner’

  • Cek field di dalam model `res.partner`, ternyata terdapat field ‘mobile’ yang menampung data nomor handphone

  1. Generate variabel dynamic placeholder

Sesuai dengan temuan kita di langkah sebelumnya, maka isi kolom ‘field’ dengan ‘contact’ untuk memanggil data contact, dan kolom ‘submodel’nya diisi dengan ‘mobile’ untuk memanggil data nomor handphone. Sehingga didapatkan placeholder expressionnya = object.partner_id.mobile

 

Source code:

<t t-out="object.partner_id.mobile or ''" style="box-sizing: border-box; font-weight: bolder; font-size: 14px;">NO HP</t>

Hasil pemanggilan variabel object.partner_id.mobile di template email:


Contoh kasus lainnya

Bagaimana jika kita ingin menampilkan nomor HP salesperson dari customer yang akan dikirimkan produk kita di template email ‘Delivery: Send by Email’?

Karena yang kita cari adalah nomor salesperson dari customer kita, maka kita perlu:

  1. Cari tahu nama model dari template email ‘Delivery: Send by Email’ -> Di form email template, cek field ‘Applies To’. Maka diketahui model untuk template Delivery adalah ‘Transfer’.
  2. Cari tahu nama field ‘Contact’ untuk menarik data customer -> cari model ‘Transfer’, kemudian cari field label ‘Contact’. Maka diketahui field name dari ‘Contact’ adalah ‘partner_id’ dan related modelnya adalah ‘res.partner’.
  3. Cari tahu nama field ‘Salesperson’ dari data customer -> cari model ‘Contact’ (res.partner), kemudian cari field dengan nama ‘Salesperson’ ternyata nama fieldnya adalah ‘user_id’. Selanjutnya klik ‘user_id’, ternyata related modelnya adalah ‘res.partner’.
  4. Cari tahu nama field ‘Mobile’ dari data contact untuk menarik data nomor HP salesperson dari customer kita  -> cari model ‘Contact’ (res.partner), lalu cari field dengan nama ‘Mobile’. 
  5. Maka dynamic placeholdernya = {{ object.partner_id.user_id.mobile }}.

Dengan menggunakan menu Technical > Database Structure > Models, kamu dapat dengan mudah menemukan nama variabel yang tepat untuk digunakan dalam dynamic placeholders di email marketing Odoo. Hal ini memudahkan kamu untuk memastikan bahwa placeholders yang kamu gunakan dalam template email akan memanggil data yang kamu butuhkan saat email dikirim.


0 Komentar

Tinggalkan Balasan

Avatar placeholder

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *