Skip to Content

Cara mencegah duplikasi di odoo tanpa coding

October 29, 2025 by
Administrator
| No comments yet

Salah satu masalah umum yang sering terjadi saat menggunakan Odoo adalah duplikasi data.

Misalnya, user tanpa sengaja membuat dua pelanggan dengan nama yang sama, dua produk identik, atau dua transaksi yang seharusnya satu.

Masalah ini bisa menyebabkan laporan menjadi tidak akurat dan mempersulit integritas data.

Untungnya, Odoo menyediakan cara sederhana untuk mencegah duplikasi data secara otomatis menggunakan Automation Rules (Server Actions) — bahkan tanpa membuat modul kustom.

⚙️ Apa Itu Automation Rules di Odoo?

Automation Rules (atau Automated Actions) adalah fitur di Odoo yang memungkinkan Anda menjalankan logika otomatis setiap kali terjadi aksi tertentu, seperti:

  • Saat record dibuat (On Creation)
  • Saat diperbarui (On Update)
  • Saat dihapus (On Deletion)
  • Atau secara terjadwal (Based on Time Condition)

Fitur ini bisa dibuat menggunakan Odoo Studio maupun dari menu Settings → Technical → Automation → Automated Actions (jika mode developer aktif).

Dengan fitur ini, Anda bisa menulis sedikit kode Python sederhana untuk memvalidasi atau membatalkan pembuatan data yang duplikat.

Contoh dibawah ini adalah cara untuk mencegah duplikasi vendor reference pada purchase order.

Pada automation rules konfigurasi seperti di bawah ini :


# Hanya jalankan jika ada nilai partner_ref

if record.partner_ref:

    # Cari PO lain dengan vendor reference yang sama

    duplicate_po = env['purchase.order'].search([

        ('partner_ref', '=', record.partner_ref),

        ('id', '!=', record.id)

    ], limit=1)


    if duplicate_po:

        raise UserError(

            f"Vendor Reference '{record.partner_ref}' sudah digunakan pada Purchase Order {duplicate_po.name}."

        )




Administrator October 29, 2025
Share this post
Tags
Archive
Sign in to leave a comment