Membuat Skrip Python untuk Menggunakan XML-RPC:
Berikut adalah contoh skrip Python yang menunjukkan cara menambahkan kontak baru ke dalam Odoo 17 dan membaca data kontak tersebut:
import xmlrpc.client
\# Konfigurasi koneksi ke server Odoo
url = 'http://localhost:8069'
db = 'your_database'
username = 'your_username'
password = 'your_password'
\# Membuat koneksi ke server Odoo
common = xmlrpc.client.ServerProxy('{}/xmlrpc/2/common'.format(url))
uid = common.authenticate(db, username, password, {})
if uid:
print("Berhasil login, UID:", uid)
# Membuat koneksi ke object service
models = xmlrpc.client.ServerProxy('{}/xmlrpc/2/object'.format(url))
# Contoh menambahkan kontak baru
partner_data = {
'name': 'Contoh Kontak',
'email': 'contact@example.com',
'phone': '123456789',
'is_company': False,
'comment': 'Ini adalah contoh kontak yang ditambahkan melalui XML-RPC.'
}
partner_id = models.execute_kw(db, uid, password, 'res.partner', 'create', [partner_data])
print("Kontak baru berhasil ditambahkan, ID:", partner_id)
# Membaca kembali data kontak yang baru ditambahkan
fields = ['name', 'email', 'phone', 'comment']
contact = models.execute_kw(db, uid, password, 'res.partner', 'read', [partner_id], {'fields': fields})
print("Data kontak yang baru ditambahkan:", contact)
else:
print("Gagal login!")
Pejelasan Code diatas
Konfigurasi koneksi ke server Odoo:
url = 'http://localhost:8069'
db = 'your_database'
username = 'your_username'
password = 'your_password'
Gantilah nilai url
, db
, username
, dan password
dengan nilai yang sesuai dengan instalasi Odoo Anda.
Autentikasi
common = xmlrpc.client.ServerProxy('{}/xmlrpc/2/common'.format(url))
uid = common.authenticate(db, username, password, {})
Langkah ini digunakan untuk mengotentikasi pengguna dan mendapatkan uid
(User ID) jika login berhasil.
Mengakses object service:
models = xmlrpc.client.ServerProxy('{}/xmlrpc/2/object'.format(url))
Menambahkan kontak baru:
partner_data = {
'name': 'Contoh Kontak',
'email': 'contact@example.com',
'phone': '123456789',
'is_company': False,
'comment': 'Ini adalah contoh kontak yang ditambahkan melalui XML-RPC.'
}
partner_id = models.execute_kw(db, uid, password, 'res.partner', 'create', [partner_data])
print("Kontak baru berhasil ditambahkan, ID:", partner_id)
Membaca kembali data kontak yang baru ditambahkan:
fields = ['name', 'email', 'phone', 'comment']
contact = models.execute_kw(db, uid, password, 'res.partner', 'read', [partner_id], {'fields': fields})
print("Data kontak yang baru ditambahkan:", contact)
Dengan mengikuti contoh di atas, Anda dapat menambahkan kontak baru ke dalam Odoo 17 dan membaca kembali data kontak tersebut untuk memverifikasi bahwa data telah tersimpan dengan benar. SELAMAT MENCOBA