Gunakan tanda [] untuk mencari tag gan! contoh [flutter, javascript]

Odoo - Search View dan Filters

Odoo - Search View dan Filters

Artikel ini dibukukan pada buku Odoo ERP Development
access_time 06 Feb 2025 remove_red_eye 334 Kali spellcheck 540 Kata, 3710 Karakter
#odoo #xml

Search View di Odoo adalah fitur yang memungkinkan pengguna untuk mencari dan memfilter data dalam tampilan daftar. Dengan Search View, kita dapat menambahkan bidang pencarian, filter kustom, grup, dan fitur pencarian lanjutan untuk meningkatkan pengalaman pengguna.

Definisi Search View

Search View dalam Odoo didefinisikan dalam file XML dan digunakan untuk menambahkan elemen pencarian di model tertentu. Search View terdiri dari field pencarian, filter, grup, dan favorit.

Contoh Dasar Search View

Berikut adalah contoh dasar bagaimana mendefinisikan Search View dalam Odoo 18:

<record id="view_example_search" model="ir.ui.view">
    <field name="name">example.search</field>
    <field name="model">example.model</field>
    <field name="arch" type="xml">
        <search>
            <field name="name"/>
            <filter string="Active Records" name="active" domain="[('active', '=', True)]"/>
            <filter string="Category A" domain="[('category', '=', 'A')]"/>
            <group string="Group By">
                <filter string="Category" name="group_category" context="{'group_by': 'category'}"/>
                <filter string="Date" name="group_date" context="{'group_by': 'date'}"/>
            </group>
        </search>
    </field>
</record>

Penjelasan Kode

  • <field name="name"/> → Menambahkan field yang bisa dicari.
  • <filter> → Menambahkan filter kustom berdasarkan kondisi tertentu.
  • <group> → Menambahkan opsi untuk mengelompokkan data berdasarkan field tertentu.

Elemen Search View

Search View di Odoo 18 mendukung beberapa elemen utama:

1. Field Pencarian

Field pencarian memungkinkan pengguna mencari data berdasarkan atribut tertentu.

<field name="customer"/>

2. Filter

Filter digunakan untuk menyaring data dengan kondisi tertentu.

<filter string="Paid" domain="[('state', '=', 'paid')]"/>

3. Grup (Group By)

Group digunakan untuk mengelompokkan hasil pencarian.

<group string="Group By">
    <filter string="Customer" name="group_customer" context="{'group_by': 'customer_id'}"/>
</group>

4. Favorites

Favorites memungkinkan pengguna menyimpan pencarian yang sering digunakan.

<filter string="My Orders" name="my_orders" domain="[('user_id', '=', uid)]" context="{'group_by': 'date'}"/>

Contoh Implementasi Search View di Modul Kustom

Jika Anda memiliki model order.model, berikut adalah contoh search view untuk meningkatkan fitur pencarian:

<record id="view_order_search" model="ir.ui.view">
    <field name="name">order.search</field>
    <field name="model">order.model</field>
    <field name="arch" type="xml">
        <search>
            <field name="name"/>
            <field name="customer_id"/>
            <filter string="Confirmed" name="confirmed" domain="[('state', '=', 'confirmed')]"/>
            <filter string="Pending" name="pending" domain="[('state', '=', 'pending')]"/>
            <group string="Group By">
                <filter string="Customer" name="group_customer" context="{'group_by': 'customer_id'}"/>
                <filter string="Order Date" name="group_date" context="{'group_by': 'date'}"/>
            </group>
        </search>
    </field>
</record>

Kesimpulan

Search View di Odoo 18 memungkinkan pengguna untuk mencari dan memfilter data dengan lebih efisien. Dengan menggunakan field pencarian, filter, grup, dan favorit, kita dapat meningkatkan pengalaman pengguna dalam menavigasi dan mengelola data di dalam aplikasi Odoo.

Artikel ini dibukukan pada buku Odoo ERP Development
Navigasi Konten