Se rendre au contenu
Menu
Cette question a été signalée
1 Répondre
13116 Vues

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
Ignorer

I have the same issue!

did you solve this issue?

Meilleure réponse

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
Ignorer
Publications associées Réponses Vues Activité
2
janv. 24
16340
3
mai 16
10568
2
oct. 22
26479
11
sept. 16
25888
1
mars 15
8405