Ir al contenido
Menú
Se marcó esta pregunta
2 Respuestas
27575 Vistas

I want to know how to do difficult domains with operators, because if I have something easy as: 

(A & B) --> ['&', ('id', 'in', active_ids), ('partner_id', 'in', partner)]

I know to do it

But if I have

(A & B) | C 
or 
( (A & B) | C) |  (D & E) 
I don't know how to do it, because I don't know where I have to put the operators 
Avatar
Descartar
Mejor respuesta

Hello Celia,

Odoo use polish notation to manage all filters and its operator between two filters. For that you need to have a look inside polish notation if you dont know anything about it. http://en.wikipedia.org/wiki/Polish_notation

From your question : ( (A & B) | C ) | (D & E) will be formed as like below to manage domain inside Odoo.


1) [ '|', '&', '|', '&', (A), (B), (C), (D), (E) ]

2) [ '|', '|', '&', (A), (B), (C), '&', (D), (E)  ] 

3) [ '|' , '&' , (D) , (E) , '|' , '&' , (A) , (B) , (C) ] 


I hope you will get exact idea that how domain is working in Odoo.




Avatar
Descartar
Mejor respuesta

I guess the #1 results in:

(((A & B) | C) & D) | E

doesn't it?

Avatar
Descartar
Publicaciones relacionadas Respuestas Vistas Actividad
4
jun 21
40278
1
dic 20
3180
1
abr 18
8396
3
sept 15
10132
2
ago 15
5997