Pengertian XMLRPC
Assalamu'alaikum. Di artikel ini insya Allah saya kana memberikan informasi tentang salah satu library di dalam Python yang bisa kita gunakan di odoo, yaitu XMLRPC.
XMLRPC adalah singkatan dari Remote Procedure Call (RPC) yang menggunakan XML untuk keperluan integrasi data. Lengkapnya bisa dibaca di Wikipedia
BISMILLAH
Code
import xmlrpclib #Import library xmlrpc di script python
import timeit #Import library timeit di script python
order_id = input('\nMasukkan id Order: ') #Input id dari data yang kita inginkan
url = 'http://localhost:8069' #URL database odoo, disini saya menggunakan localhost
db = 'nama Database' #Database yang digunakan
username = 'username Database' #Username yang digunakan di database
password = 'password Database' #Password databse yang digunakan
common = xmlrpclib.ServerProxy('{}/xmlrpc/2/common'.format(url)) #---
common.version() #|||
#|||
uid = common.authenticate(db, username, password, {}) #Block ini bertujuan agar odoo bisa mengkonfirmasi user dari API ini.
start_time = timeit.default_timer() #Memulai timer
models = xmlrpclib.ServerProxy('{}/xmlrpc/2/object'.format(url)) #Di variabel models kita menggunakan library xmlrpclib untuk mengambil data.
sale_order_id = models.execute_kw( #Di variabel sale_order_id kita deklarasi pengambilan datanya menggunakan-
db, uid, password, 'sale.order', 'search', #models(variabel yang sudah kita buat diatas).execute_kw. Isi parameter-
[[('id', '=', order_id)]]) #pertamanya adalah db, uid, password, lalu model yang kita ingin ambil datanya
#disini saya ingin mengambil data Sale Order, dan terakhir domain/filternya.
#Disini saya memfilter dengan id sale order yang telah kita input di awal tadi.
print sale_order_id #Mencetak sale_order_id untuk melihat hasil dari pencarian
elapsed = timeit.default_timer() - start_time #Dan terakhir adalah script untuk menghitung waktu pencarian
print 'Waktu proses :' + str(elapsed) #Print hasil perhitungan waktu
Cara Menggunakan Script
Simpan Script di Directory
Simpan dengan format .py contohnya seperti di gambar sebelah kiri.
Inisiasi Script & Output
1. Buka terminal lalu masuk ke directory dimana script kita di save. Jalankan script dengan perintah $ python <nama file>.py
2. Masukkan id data dan tunggu hasilnya keluar. Disini saya hanya mengambil data sesuai dengan id yang di input.
Sekian untuk Interpretasi XMLRPC DI ODOO. Untuk dokumentasi yang lebih lengkap bisa disini.