This question has been flagged
2 Replies
4425 Views

When loading a register with a computed field (example, a new sale margin field computed out of price and cost), I see that it is not populated with the value. Why? and how can I make the value being displayed?

It is properly stored in database.


Avatar
Discard

you can use the onchange to trigger the computation for client side (form view)

Best Answer

Hello E.M.


To write a on_change method in .py file like this,

def on_change_emp_dept(self, cr, uid, ids, employee_id, context=None):
dept_id = False
if employee_id:
emp_pool = self.pool.get("hr.employee")
emp_obj = emp_pool.browse(cr, uid, employee_id, context=context)
dept_id = emp_obj and emp_obj[0].department_id.id or False
return {'value':{'department_id':dept_id}}

Invoke method in .xml file write like this,
<field name="employee_id" on_change="on_change_emp_dept(employee_id)" />
Avatar
Discard