İçereği Atla
Menü
Bu soru işaretlendi
2 Cevaplar
5172 Görünümler

Odoo16
I'm trying to set a domain for warehouse_ids  field that exist in sale.order.line model
the domain depends on the selected values of allowed_locations field that is exist in res.users model

this is the code but it doesn't work

@api.depends('self.env.user.allowed_locations')
def domain(self):
user = self.env.user
locations_domain = []
for loc_id in user.allowed_locations:
locations_domain.append(loc_id.id)
print (loc_id.id)
return {'domain': {'warehouse_ids': [('id', 'in', locations_domain)]}}
warehouse_ids = fields.Many2one('stock.location',string="Warehouse ")


Avatar
Vazgeç
En İyi Yanıt
def _get_warehouse_domain(self):
​return [('id', 'in', self.env.user.allowed_locations.ids)]
warehouse_ids = fields.Many2one('stock.location', string="Warehouse", domain=_get_warehouse_domain)
Avatar
Vazgeç
Üretici

Thanks very much
it works correctely after i added your code

İlgili Gönderiler Cevaplar Görünümler Aktivite
2
Mar 25
2995
1
Eyl 23
3105
2
Mar 24
2807
2
May 23
197
1
Oca 18
8553