如何在odoo中选择员工姓名时自动填写员工详细信息?

时间:2015-05-26 05:48:16

标签: openerp odoo

如何在odoo中选择员工姓名时获取员工的详细信息。

我创建了一个与hr.employee相关的很多字段。但我无法得到结果

.py代码

class mom_person(osv.Model):
_name = 'mom.person'
_columns = { 
'emp_i' : fields.many2one('hr.employee','Attendees'),
'ename_id' : fields.many2one('mom.meeting','Attend Person'),
'depat':fields.char('Department'),
'wk_mail':fields.char('Mail'),
'wk_cnt':fields.char('Contact'),
}

def get_emp_det(self, cr, uid, ids, emp_i, context=None):
val = {}
emp_id = self.pool.get('hr.employee')
if emp_i:
for rec in emp_id.browse(cr,uid,emp_i,context=context):
val = {
'depat': rec.department_id,
'wk_mail':rec.work_email,
'wk_cnt':rec.work_phone,
}   
return val  

mom_person()

和xml代码

<tree string="Employee name" editable="bottom">
<field name="emp_i" onchange="get_emp_det(emp_i)"/>
<field name="depat"/>
<field name="wk_mail"/>
<field name="wk_cnt"/>
</tree>
/field>

1 个答案:

答案 0 :(得分:2)

您必须更改.py文件中的onchanage方法,请尝试执行以下操作:

onRequestFailure

您可以尝试上面的onchange并重新启动服务器并查看结果

我希望这对你有用..:)