Overslaan naar inhoud
Menu
Je moet geregistreerd zijn om te kunnen communiceren met de community.
Deze vraag is gerapporteerd
3 Antwoorden
4498 Weergaven
For the time off app we should be able to dynamically filter the company in the time off type list. I have worked with an Onchange function which also works perfectly. The problem is only when I open the form that domain should not apply yet. There is no list of items to see as long as I set employee field for example. This is not a problem for the managers, but it is for the employee who wants to request leave. He now does not see a list, which must also be filtered by company. Here's my code:
@api.onchange('employee_id')
def _onchange_employee_id(self):
for rec in self:
return {'domain': {'holiday_status_id': [('valid', '=', True),
('company_id', '=', rec.employee_id.company_id.id)]}}
@api.onchange('mode_company_id')
def _onchange_mode_company_id(self):
for rec in self:
return {'domain': {'holiday_status_id': [('valid', '=', True),
('company_id', '=', rec.mode_company_id.id)]}}

@api.onchange('department_id')
def _onchange_department_id(self):
for rec in self:
return {'domain': {'holiday_status_id': [('valid', '=', True),
('company_id', '=', rec.department_id.company_id.id)]}}


Avatar
Annuleer
Beste antwoord

You can follow this: https://youtu.be/XGqXEL2qQmE

Hope it helps,

Thanks

Avatar
Annuleer
Beste antwoord

Returning a domain using onchange method has been deprecated in Odoo 14.


You can use the new way as mentioned in the below link:

https://github.com/odoo/odoo/pull/41918#issuecomment-824946980

Avatar
Annuleer
Beste antwoord

Hello Indira.

Try using this code.

@api.onchange('holiday_status_id')
def _onchange_employee_id(self):
    return {'domain': {'holiday_status_id': [('valid', '=', True),('company_id','=',self.employee_id.company_id.id)]}}


Avatar
Annuleer
Gerelateerde posts Antwoorden Weergaven Activiteit
0
feb. 25
18
1
sep. 19
3739
0
mrt. 15
3378
2
mrt. 15
6226
1
mrt. 15
3258