Memunculkan harga

 Tambahkan compute pada Order

Tambahkan harga dibawah models id sehingga menjadi 
harga = fields.Integer(
compute='_compute_harga',
string='Harga Sewa'
)
lalu tambahkan oocompute
hingga menjadi
@api.depends('jenissewa_id')
def _compute_harga(self):
for record in self:
record.harga = record.jenissewa_id.harga
dengan field diambil dari harga dan record dari jenissewa_id dari atas harga dan berbarengan dengan harga jadi pengambilan harga berdasarkan jenissewa_id

lalu tambahkan atau edit pada stylerent_order.xml menjadi 
<?xml version='1.0' encoding='utf-8'?>
<odoo>
<data>
<!-- stylerent.ordermobil tree view -->
<record id="stylerent_ordermobil_view_tree" model="ir.ui.view">
<field name="name">stylerent.ordermobil.view.tree</field>
<field name="model">stylerent.ordermobil</field>
<field name="arch" type="xml">
<tree>
<!-- Add your fields here -->
<field name="pemesan_id"/>
<field name="tanggal_pesan"/>
</tree>
</field>
</record>
<!-- stylerent.ordermobil form view -->
<record id="stylerent_ordermobil_view_form" model="ir.ui.view">
<field name="name">stylerent.ordermobil.view.form</field>
<field name="model">stylerent.ordermobil</field>
<field name="arch" type="xml">
<form string="">
<sheet>
<group>
<field name="pemesan_id" />
</group>
<group>
<field name="tanggal_pesan" />
</group>
<notebook colspan ='4'>
<page name="jenis mobil" string="Detail Pesanan">
<field name="detailjenis_ids">
<tree editable='bottom'>
<field name="jenissewa_id" />
<field name="harga"/>
</tree>
</field>
</page>
</notebook>
</sheet>
</form>
</field>
</record>

<!-- stylerent.ordermobil action window -->
<record id="stylerent_ordermobil_action" model="ir.actions.act_window">
<field name="name">Orderan Style Rent Car</field>
<field name="type">ir.actions.act_window</field>
<field name="res_model">stylerent.ordermobil</field>
<field name="view_mode">tree,form</field>
</record>
<!-- This Menu Item must have a parent and an action -->
<menuitem
id="stylerent_ordermobil_menu_act"
name="Order Mobil"
parent="stylerent_menu_root"
action="stylerent_ordermobil_action"
sequence="5"/>
</data>
</odoo>
Restart server odoo dan upgrade maka akan menjadi seperti ini pada order mobil:
Untuk menambahkan line atau edit maka akan keluar jenisnya apabila di pilih maka keluar juga harganya

Menambah field lama sewa

 

Tambahkan diatas harga pada order.py dengan ofint dan code menjadi seperti

lamasewa = fields.Integer(
string='Lama sewa'
)

Lalu tampilkan pada field formnya di stylerent_order.xml menjadi

<!-- stylerent.ordermobil form view -->
<record id="stylerent_ordermobil_view_form" model="ir.ui.view">
<field name="name">stylerent.ordermobil.view.form</field>
<field name="model">stylerent.ordermobil</field>
<field name="arch" type="xml">
<form string="">
<sheet>
<group>
<field name="pemesan_id" />
</group>
<group>
<field name="tanggal_pesan" />
</group>
<notebook colspan ='4'>
<page name="jenis mobil" string="Detail Pesanan">
<field name="detailjenis_ids">
<tree editable='bottom'>
<field name="jenissewa_id" />
<field name="harga"/>
<field name="lamasewa" />
</tree>
</field>
</page>
</notebook>
</sheet>
</form>
</field>
</record>

Setelah itu refresh odoo dan lakukan upgrade sehingga mengahasilkan

 


 

Buat field jumlah harga dengan dibawah compute harga (line akhir) didalam order.py

Dengan oofcompute sehingga menjadi

jumlahnya = fields.Integer(compute='_compute_jumlahnya', string='Total harga sewa')
@api.depends('lamasewa')
def _compute_jumlahnya(self):
for record in self:
record.jumlahnya = record.harga * record.lamasewa

 

Jumlah harga depends terhadap lamasewa

Lalu for record in self

Record jumlah harga = (adalah) record.lamasewa * record.harga

Wajib ditulis record. Lalu definisinya karena record adalah file simpan (semua yang bilangan harus integer)

Lalu tambahkandibawah field lamasewa yang ada didalam file stylerent_order.xml dengan

<field name="jumlahnya" />

Setelah itu restart odoo dan upgrade maka akan muncul hasil :