Bỏ qua để đến Nội dung
Menu
Câu hỏi này đã bị gắn cờ
2 Trả lời
18244 Lượt xem

Hello,

I have Many2one field with domain function,

port_chargement_id = fields.Many2one('res.port', string='POL', domain=lambda self: self._get_port_chargement_domain())
def _get_port_chargement_domain(self):    
    domain = [('desservi', '=', True)]
    if self.sens_fret_id.id == 1:
        domain.append(('pays_id.code', 'not ilike', 'dz'))
    if self.sens_fret_id.id == 2:
        domain.append(('pays_id.code', 'ilike', 'dz'))
    return domain

From the function I tried to get the current item field with the self.sens_fret , but the self.xxxxx  doesn't work and it returns always False, i even tried  with self.name

Ảnh đại diện
Huỷ bỏ

Hey salah! if you want to do these kind of stuff in on_change method than have a look it will help you: http://learnopenerp.blogspot.com/2016/10/onchange-many2one-filed-in-odoo.html

Tác giả

Thanks! but in my case, the sens_fret_id field will be readonly in the next stage, so the port_chargement_id will always depend on the value selected previoulsly. so the onchange function will not be usefull.

Câu trả lời hay nhất

Hi,

try this in an onchange function.

@api.onchange('sens_fret_id')
def onchange_sens_fret_id(self):
    domain = [('desservi', '=', True)]
    if self.sens_fret_id.id == 1:
        domain.append(('pays_id.code', 'not ilike', 'dz'))
    if self.sens_fret_id.id == 2:
        domain.append(('pays_id.code', 'ilike', 'dz'))
    return {'domain': {'port_chargement_id': domain}}

Thank you

Ảnh đại diện
Huỷ bỏ
Tác giả

Thanks! but in my case, the sens_fret_id field will be readonly in the next stage, so the port_chargement_id will always depend on the value selected previoulsly. so the onchange function will not be usefull.

Câu trả lời hay nhất

I had solved the problem. Please see my blog: Odoo14, Pass variable from master to detail by context and using domain function

The article is posted on Facebook Odoo Developers.

Ảnh đại diện
Huỷ bỏ
Bài viết liên quan Trả lời Lượt xem Hoạt động
2
thg 5 24
7134
4
thg 5 20
73226
2
thg 5 24
8321
1
thg 1 22
11232
1
thg 7 20
15191