Skip ke Konten
Menu
Pertanyaan ini telah diberikan tanda
1 Balas
12854 Tampilan

Hello,

I have following field in sale.py

'product_id': fields.many2one('product.product', 'Product', domain=[('sale_ok', '=', True)], change_default=True, readonly=True, states={'draft': [('readonly', False)]}, ondelete='restrict'), 

Here my domain is domain=[('sale_ok', '=', True)]

Now I want to extent this domain like

<xpath expr="//field[@name='order_line']/form/group/group/field[@name='product_id']" position="attributes">
<attribute name="domain">[('sale_ok','=',True),('my_new_field','=',True)]</attribute>
</xpath>

But its not working.

I have another idea if I replace product_id with new field like

'product_id': fields.many2one('product.product', 'Product', domain=[('sale_ok', '=', True),('my_new_field','=',True)], change_default=True, readonly=True, states={'draft': [('readonly', False)]}, ondelete='restrict')
Avatar
Buang

I have the same issue!

did you solve this issue?

Jawaban Terbai

Hello Solanki Shamji,

By default, Odoo uses AND operator if not add any operator in the domain,

Here, your domain work as AND ( & ) operator

[('sale_ok','=',True),('my_new_field','=',True)]


As per your requirement use OR (|) operators on domain in xml file :

[‘|’,('sale_ok','=',True),('my_new_field','=',True)]


And If you change in py file just write the below code :
product_id = fields.many2one(domain=[‘|’,('sale_ok','=',True),('my_new_field','=',True)])

I hope this solution is helpful for you.

Thanks & Regards,
Email: odoo@aktivsoftware.com
Skype: kalpeshmaheshwari


Avatar
Buang
Post Terkait Replies Tampilan Aktivitas
2
Jan 24
16165
3
Mei 16
10231
2
Okt 22
26093
11
Sep 16
25453
1
Mar 15
7938