Sekarang kita implementasikan logic fungsi onchage room, yang akan menyebabkan field produk pada sale order line terisi otomatis sesuai dengan produk yang terkoneksi pada room tersebut. Pada class diagram, kita sudah buatkan skeleton fungsi onchange, yang akan otomatis terpanggil ketika field room_id berubah atau dipilih user. Hasil generate StarUML baru berupa skeleton fungsi saja, alias baru nama fungsi dan decorator api onchage saja. Sementara logic nya belum ada, dan harus kita sebagai developer yang tau, aplikasi harus bagaimana. Oke , masuk ke folder model pada addon inherit. Pilih file order_line.py. Disini terlihat skeleton fungsi onchage hasil generate StarUML yang dimaksud. Tugas kita selanjutnya adalah mendefinisikan logic didalamnya. Hapus dulu baris pass bawaan generator. Ketikkan logic onchange, yaitu isi field product_id padda sale order line, adalah sama dengan product_id yang ada pada room_id. Tapi kalau kita lihat pada diagram, relasi ke product.product pada room namanya adalah room_type_id. Jadi harus kita ikuti nama yang ditentukan pada class diagram, yaitu room_type_id. Cukup seperti itu saja logicnya. Restart Odoo. Refresh browser, dan coba tambah baris baru pada sale order. Ok! Kita lihat sudah ada field room_id dan ketika dipilih maka kolom produk akan otomatis terisi dengan product yang benar yang terkait dengan room yang dipilih. Ketika di save akan muncul detail informasi varian produk tersebut. Artinya, pada booking ini, tamu dipilihkan atau memilih kamar nomor 4-101 yang merupakan tipe Deluxe Rooms, view gunung, luas 40, king size bed. Coba tambah satu kamar lagi. dan save. Oke, tamu diberi kamar 3-103 yang bertipe Superior, luas 40, single bed. Oke, mantap! onchage sudah sesuai dengan yang kita mau.