我需要从名为payslip
的对象salaryfunction
创建一个调用函数:
class HrNicPaySlip(models.Model):
_inherit = 'hr.payslip'
@api.multi
def salaryfunction(self):
return 100.00
我需要从薪资规则中调用此函数,如下所示:
result = payslip.salaryfunction()
但是在计算工资羊时我得到以下错误:
为薪资规则
定义了错误的python代码
在日志中错误是:
ValueError ::"' float'对象不可调用"在评估你的结果= payslip.salaryfunction()'
你可以帮忙吗?
我搜索了一些类似的问题,但没有成功
更多信息:
我想调用我的模型中定义的函数,该函数继承自hr.payslip
class MyModelTest(models.Model):
_inherit = 'hr.payslip'
@api.multi
def salaryfunction(self):
return 100.00
在我的薪水规则中,我写了amount_python_compute:
result = payslip.salaryfunction()
答案 0 :(得分:1)
在阅读完薪资单模型的所有代码后,我终于解决了我的问题。
薪资规则中使用的薪资单对象有一个env变量引用,所以调用其他模型类的函数的正确方法如下(根据我的例子):
result = payslip.env['hr.payslip'].salaryfunction()
我希望这适用于另一个家伙
答案 1 :(得分:0)
如果您在模型中(' hr.payslip'),您只需要以这种方式调用您的函数self.salaryfunction()
,如果您在其他模型中,则以这种方式调用它{{1} 1}},我希望这可以帮到你。