【发布时间】:2018-04-26 06:03:25
【问题描述】:
我在odoo 10 中定义了一个带有计算方法的computed field,现在我想在search orm 中获取它的值,但它的值仍然是False,当我尝试store=True 时它的值没有被改变。
如果有人有解决方案请告诉我,我将非常感谢。
我的代码是:
balance_amount = fields.Float(string="Balance Amount", compute='_compute_loan_amount')
@api.one
def _compute_loan_amount(self):
total_paid = 0.0
for loan in self:
for line in loan.loan_lines:
if line.paid:
total_paid += line.amount
balance_amount = loan.loan_amount - total_paid
self.total_amount = loan.loan_amount
self.balance_amount = balance_amount
self.total_paid_amount = total_paid
当我使用search_countbelow 时:
loan_count = self.env['hr.loan'].search_count([('employee_id', '=', values['employee_id']), ('state', '=', 'approve'),
('balance_amount', '!=', 0)])
即使balance_amount 等于Zero,它也总是得到计数值
【问题讨论】:
标签: odoo odoo-10 odoo-9 odoo-11