En Odoo, los filtros son estrategias de búsqueda que nos ayudan a encontrar, de manera eficiente, los datos deseados. En esta guía vamos a aprender como crear filtros, qué campos podemos utilizar en un filtro y los tipos de operadores disponibles.
Para empezar, debemos activar el modo desarrollador desde el desplegable de usuario, situado en la parte superior derecha.
Paso 1: Abrir menú de usuario
Paso 2: Activar modo desarrollador
El modo desarrollador es una herramienta que nos permite acceder a la parte técnica de Odoo: estructura de vistas, acciones, filtros, campos, etc.
Una vez activado el modo desarrollador, nos situamos en la vista que queremos filtrar, abrimos el desplegable de desarrollador y pulsamos en la opción “Gestionar Filtros”.
Menú que aparece al activar el modo desarrollador
En la creación del filtro se definen los siguientes parámetros:
- Nombre del filtro→el nombre que se asignara al filtro
- Modelo→el modelo que queremos filtrar
- Usuario→el usuario que puede utilizar el filtro (si se deja en blanco el filtro es visible para todos los usuarios)
- Filtro por defecto→marcamos esta opción si queremos activar el filtro de forma automática, al cargar la vista
- Dominio→una lista de tuplas, [(campo, operador, valor), ...], que forman la condición del filtro
Ficha de creación del filtro
En el dominio del filtro podemos utilizar todos los campos definidos en el modelo que queremos filtrar. Para ver la lista de campos disponibles, pulsamos en “Ver Campos”, desde el desplegable de desarrollador. En esta pestaña podemos consultar toda la información sobre los campos definidos en el modelo: nombre, tipo, etiqueta, etc.
Ya que sabemos como crear un filtro y los campos que podemos utilizar en el dominio del mismo, nos falta saber cuáles son los operadores de evaluación disponibles en Odoo.
Operador | Descripción |
---|---|
> | Más grande que |
< | Más pequeño que |
>= | Más grande o igual que |
<= | Más pequeño o igual que |
= | Igual que |
!= | Diferente de |
like | Comparador de cadenas que distingue entre mayúsculas y minúsculas |
ilike | Comparador de cadenas que no distingue entre mayúsculas y minúsculas |
in | Contenido en (comparar un valor con una lista de valores) |
not in | No contenido en (comparar un valor con una lista de valores) |
not | Negación (operador booleano que invierte el valor) |
child_of | Comparador utilizado en estructuras de tipo árbol |
Para finalizar, adjuntamos unos ejemplos de dominios en diferentes áreas del Odoo:
- [('qty_available', '<', 10)] – utilizado en la lista de productos para mostrar solo los productos con cantidad en stock menor que 10
- [('state', 'ilike' , 'confirmed')] – utilizado en la lista de ventas para mostrar solo las ventas confirmadas
- [('categ_id', 'child_of', 5)] – utilizado en la lista de categorías de producto para mostrar solo las categorías que tienen como padre la categoría 5