in another project, I used compute field like this on a function and it works. But why this one is not working?
Here is my code :
from openerp import models, fields, api
class PurchaseOrder(models.Model):
_inherit = 'hr.payslip'
gaji_pokok = fields.Integer(string="Gaji Pokok")
t_lembur = fields.Integer(string="Tunjangan Lembur")
t_transportasi = fields.Integer(string="Tunjangan Transportasi")
bonus = fields.Integer(string="Bonus")
jumlah_kerja = fields.Integer(string="Jumlah Jam Kerja")
libur = fields.Integer(string="Cuti")
total_pendapatan = fields.Monetary(compute = '_compute_gaji', readonly=True, string="Total Gaji")
@api.one
@api.depends('gaji_pokok', 't_lembur', 't_transportasi', 'bonus', 'jumlah_kerja', 'libur')
def _compute_gaji(self):
for sal in self:
if sal.gaji_pokok is not False:
sal.total_pendapatan = sal.gaji_pokok + sal.t_lembur + sal.t_transportasi + sal.bonus + sal.jumlah_kerja + sal.libur
Here is my xml (not all the code I show)
<xpath expr="//page[1]" position="after">
<form colspan="4" nolabel="1">
<page string="Pendapatan Karyawan">
<separator string="Pendapatan Karyawan"/>
<group col="4">
<field name="jumlah_kerja"/>
<field name="libur"/>
<field name="gaji_pokok"/>
<field name="t_lembur"/>
<field name="t_transportasi"/>
<field name="bonus"/>
<field name="total_pendapatan"/>
</group>
</page>
</form>
</xpath>
My error message is "field total_pendapatan doesnt exist"
Anyone can help me about this?
Hi,
Make sure that the python file is called in the init file .