Filtres avançats a Odoo

A Odoo, els filtres són estratègies de cerca que ens ajuden a trobar, de manera eficient, les dades desitjats. En aquesta guia aprendrem com crear filtres, quins camps podem utilitzar en un filtre i tipus d'operadors disponibles.

Per començar, hem d'activar el mode de desenvolupament des del desplegable d'usuari, situat a la part superior dreta.


Pas 1: Obrir menú d'usuari

Pas 2: Activar mode desenvolupador

El mode desenvolupador és una eina que ens permet accedir a la part tècnica d'Odoo: estructura de vistes, accions, filtres, camps, etc.

Un cop activat el mode desenvolupador, ens situem a la vista que volem filtrar, obrim el desplegable de desenvolupador i polsem a l'opció “Gestionar Filtros”.

Menú que apareix en activar el mode desenvolupador

En la creació del filtre es defineixen els paràmetres següents:

  • Nom del filtre→el nom que s'assignés al filtre
  • Model→el model que volem filtrar
  • Usuari→l'usuari que pot utilitzar el filtre (si es deixa en blanc el filtre és visible per a tots els usuaris)
  • Filtre per defecte→marquem aquesta opció si volem activar el filtre de forma automàtica, en carregar la vista
  • Domini → una llista de tuples, [(camp, operador, valor), ...], que formen la condició de filtre

Fitxa de creació del filtre

Al domini del filtre podem utilitzar tots els camps definits al model que volem filtrar. Per veure la llista de camps disponibles, polsem a “Veure Camps”, des del desplegable de desenvolupador. En aquesta pestanya podem consultar tota la informació sobre els camps definits al model: nom, tipus, etiqueta, etc.

Ja que sabem com crear un filtre i els camps que podem utilitzar al domini del mateix, ens falta saber quins són els operadors d'avaluació disponibles a Odoo.

Operador Descripció
> Més gran que
< Més petit que
>= Més gran o igual que
<= Més petit o igual que
= Igual que
!= Diferent de
like Comparador de cadenes que distingeix entre majúscules i minúscules
ilike Comparador de cadenes que no distingeix entre majúscules i minúscules
in Contingut a (comparar un valor amb una llista de valors)
not in No contingut a (comparar un valor amb una llista de valors)
not Negació (operador booleà que inverteix el valor)
child_of Comparador utilitzat en estructures de tipus arbre

Per acabar, adjuntem uns exemples de dominis a diferents àrees de l'Odoo:

  • [('qty_available', '<', 10)] – utilitzat a la llista de productes per mostrar només els productes amb quantitat en estoc menor que 10
  • [('state', 'ilike' , 'confirmed')] – utilitzat a la llista de vendes per mostrar només les vendes confirmades
  • [('categ_id', 'child_of', 5)] – utilitzat a la llista de categories de producte per mostrar només les categories que tenen com a pare la categoria 5
en Blog
Odoo per a restaurants