Cara menggunakan Plain Sql Query di Odoo

Assalamu'alaikum saya akan share bagaimana cara menggunakan sql query di odoo.

1. Saya akan membuat tombol sebagai trigger dari action query. silahkan contoh di objek yang kalian inginkan saya akan menggunakan objek claim.insurance

class ClaimInsurance(models.Model):
    _name = 'claim.insurance'
    _description = 'Manifest Jasa Medis'

    def contoh_sql(self):
        pass


<record id="claim_insurance_view_form" model="ir.ui.view">
        <field name="name">claim.insurance.view.form</field>
        <field name="model">claim.insurance</field>
        <field name="arch" type="xml">
            <form string="Claim Insurance">
                <header>
                    <button name="contoh_sql" type="object" string="Contoh Sql"/>
                   
                </header>


    2. pada method def contoh_sql saya akan menambahkan sintaks untuk menjalankan sql seperti berikut


    def contoh_sql(self):
        query = " select * from res_partner"
        self._cr.execute(query)
        hasil = self._cr.dictfetchall()
        for h in hasil:
            print (h)


3. Penejelasan: saya menuliskan query dalam string kemudian dimasukan ke variabel query. untuk menjalankan query tersebut menggunakan fungsi execute(query) yang mana fungsi tersebut ada di self._cr ialah kursor dari database yang di gunakan. untuk memanggil hasilnya menggunakan fungsi dictfetchall yang akan di sajikan dalam bentuk list of dictionary. kemudian karena hasilnya berupa list maka saya loop agar hasilnya menjadi lebih rapih.

4. berikut adalah hasilnya:





Custom page number dimulai dari angka tertentu