Reglas de automatización¶
Las reglas de automatización ejecutan una o más acciones predefinidas luego de configurar un activador específico, por ejemplo, crean una actividad al seleccionar un valor específico en un campo o archivan un registro 7 días después de su última actualización.
Al crear una regla de automatización, los filtros de dominio te permiten agregar las condiciones necesarias para activar la regla. Por ejemplo, la actividad debe estar asignada a un vendedor en específico o el estado del registro no debe estar en borrador.
Sigue estos pasos para crear una regla de automatización con Studio de Odoo:
Abre Studio, haz clic en Automatizaciones y después en Nuevo.
Asígnale un nombre claro y significativo a la regla de automatización, debe identificar su propósito.
Selecciona el activador y, si es necesario, completa los campos que aparecerán en la pantalla según la acción que hayas elegido.
Haz clic en Agregar una acción, selecciona el tipo de acción y completa los campos que aparecen en la pantalla según la acción que hayas elegido.
Haz clic en Guardar y cerrar o en Guardar y crear nuevo.
Example
Para darle seguimiento a los clientes que están menos satisfechos, esta regla de automatización crea una actividad 3 meses después de la creación de una orden de venta para aquellos clientes con un porcentaje de satisfacción menor al 30%.

Truco
Usa la pestaña Notas para documentar el propósito y el funcionamiento de las reglas de automatización. Esto hará que puedas darle mantenimiento a las reglas con mayor facilidad y que los usuarios puedan colaborar.
Para modificar el modelo al que está dirigido la regla de automatización, cambia los modelos antes de hacer clic en Automatizaciones en Studio o activa el modo de desarrollador, crea o edita una regla de automatización y selecciona el modelo en el formulario Reglas de automatización.
Es posible crear reglas de automatización desde cualquier etapa de kanban al hacer clic en el icono (Ajustes) que aparece al pasar el cursor sobre el nombre de la etapa de kanban y luego seleccionar Automatizaciones. En este caso, el activador está configurado con la opción La etapa es de forma predeterminada, pero puedes cambiarla si es necesario.
Activador¶
El activador sirve para definir qué tipo de evento debe ocurrir para que se ejecute la regla de automatización. Los activadores disponibles dependen del modelo y hay cinco categorías de activación disponibles:
Agregar condiciones¶
Los filtros de dominio te permiten determinar qué registros debe seleccionar o excluir una regla de automatización. Filtrar de manera eficiente mejora el rendimiento general de la regla, ya que evita que procese los registros que no debe incluir.
Truco
Activa el modo de desarrollador antes de crear una regla de automatización para que puedas agregar más filtros de dominio.
Según el activador que hayas seleccionado, podrás definir la o las condiciones con las que un registro debe cumplir antes o después de que ocurra una acción de activación.
La opción Antes de actualizar el dominio define las condiciones que debe cumplir un registro antes de que ocurra el evento desencadenante. Por ejemplo, el registro debe cumplir con las condiciones
Tipo = Factura de cliente
yEstado = Registrado
.Primero activa el modo de desarrollador, haz clic en Editar dominio si está disponible y luego elige Nueva regla.
Las condiciones adicionales, o en algunos casos los filtros Aplicar en, definen las condiciones que un registro debe cumplir después de que ocurra el evento que activa la opción, por ejemplo, la factura del cliente debe estar configurada con
Estado de pago = Pagado parcialmente
.Activa el modo de desarrollador en caso de que sea necesario, haz clic en Agregar condiciones o Editar dominio según corresponda y luego en Nueva regla.
Cuando ocurre una acción de activación, por ejemplo, al actualizar el estado de pago de una factura de cliente registrada, la regla de automatización revisa las condiciones definidas y solo ejecuta la acción si el registro coincide con esas condiciones.
Example
Si quieres ejecutar la acción automatizada al configurar una dirección de correo por primera vez (no al modificarla) en un contacto existente definido como persona y no como empresa tendrás que usar Correo electrónico no está establecido
y Es una empresa no está establecido
como opciones en Antes de actualizar el dominio y Correo electrónico está establecido
como opción en el dominio correspondiente a Aplicar en.

Nota
El sistema no revisa la opción Antes de actualizar el dominio al crear un registro.
Actualización de los valores¶
Activa acciones automatizadas cuando ocurran cambios específicos en la base de datos. Los activadores disponibles en esta categoría dependen del modelo y están basados en cambios comunes, como agregar una etiqueta específica (por ejemplo, a una tarea) o configurar el valor de un campo (por ejemplo, definir el campo Usuario).
Selecciona el activador y luego selecciona un valor en caso de que sea necesario.
Eventos de correo electrónico¶
Activa acciones automatizadas al enviar o recibir correos electrónicos.
Condiciones de tiempo¶
Activa acciones automatizadas en un momento relativo a un campo de fecha o a la creación o actualización de un registro y están disponibles los siguientes activadores:
Según el campo de fecha: La acción se activa en el momento definido antes o después de la fecha configurada en el campo de fecha seleccionado.
Después de crear: La acción se activa en el momento definido después de crear y guardar el registro.
Después de la última actualización: La acción se activa en el momento definido después de editar y guardar un registro existente.
Después puedes definir lo siguiente:
Espera: Especifica el número de minutos, horas, días o meses. Para ejecutar una acción antes de la fecha del activador deberás indicar un número negativo. Si seleccionaste el activador Según el campo de fecha también debes elegir qué campo de fecha usar para determinar esta espera.
Nota
El planificador revisa las reglas de automatización basadas en tiempo cada 240 minutos (o 4 horas) de forma predeterminada. Esta frecuencia suele ser suficiente para una espera, por ejemplo, de 3 meses después de la fecha de la orden o 7 días después de la última actualización.
Para esperas menores al equivalente de 2400 minutos (o 40 horas), el sistema vuelve a calcular la frecuencia de esta revisión para garantizar que se respete lo más posible las esperas más precisas, por ejemplo, 1 hora antes de la fecha y hora de inicio del evento o 30 minutos después de la creación.
En la pantalla aparecerá un mensaje para indicar el posible atraso tras la activación programada de la regla.
Para ver o editar la frecuencia de forma manual, primero activa el modo de desarrollador y ve a para ver todas las acciones programadas para tu base de datos.
Escribe
Automatización
en la barra de búsqueda, haz clic en Reglas de automatización: Verificar y ejecutar en la lista de resultados y, si lo deseas, actualiza el valor del campo Ejecutar cada. Haz clic en Ejecutar de forma manual cuando quieras activar esta acción programada de forma manual.Condiciones adicionales: Haz clic en Agregar condición y después especifica las condiciones que se deben cumplir para ejecutar la regla de automatización. Haz clic en Nueva regla para agregar otra condición.
La acción se ejecuta al terminar la espera y si se cumplen las condiciones.
Example
Para enviar un recordatorio por correo 30 minutos antes del inicio de un evento del calendario, selecciona Inicio (Evento del calendario) como el campo de fecha para el activador y configura la espera en -30
minutos.

Personalizado¶
Activa acciones automatizadas:
Al guardar: Al guardar un registro.
Al eliminar: Al eliminar un registro.
Al cambio de la IU: Al modificar el valor de un campo en la vista de formulario, incluso antes de guardar el registro.
Con los activadores Al guardar y Al cambio de la IU debes seleccionar el o los campos que se usarán para activar la regla de automatización en el campo Al actualizar.
Advertencia
Es posible que la acción automatizada se ejecute varias veces por registro si no eliges ningún campo en el campo Al actualizar.
También puedes definir otras condiciones a cumplir para activar la regla de automatización en el campo Aplicar en.
Example
Para activar una acción automática al crear un registro, por ejemplo, al crear un contacto nuevo, selecciona el activador Al guardar y usa ID no está establecido
en Antes de actualizar el dominio, así como ID está establecido
como el dominio de Aplicar en. Asegúrate de que seleccionar el campo correcto en Al actualizar.
Al guardar un nuevo contacto, el sistema le asigna un ID de base de datos de forma automática, lo que activa la regla de automatización.

Nota
Solo puedes usar el activador Al cambio de la IU con la acción Ejecutar código y este solo funciona cuando la modificación es manual. La acción no se ejecuta si el campo cambia debido a otra regla de automatización.
Externo¶
Activa acciones automatizadas basadas en un evento específico en un sistema o aplicación externa mediante un webhook.
Después de configurar el webhook en Odoo, donde generarás la URL del webhook y definirás el registro de destino, debes implementarlo en el sistema externo.
Advertencia
Te recomendamos consultar con un desarrollador, arquitecto de soluciones o cualquier otro perfil técnico al decidir usar webhooks y durante todo el proceso de implementación. Si no configuras los webhooks de forma correcta, estos pueden afectar la base de datos de Odoo y revertir los cambios puede llevar algo de tiempo.

Nota
También puedes configurar una acción automática que envíe datos al webhook de un sistema externo cuando ocurre un evento en tu base de datos de Odoo.
Ver también
Acciones¶
Una vez que hayas definido el activador de la regla de automatización, ve a la pestaña Acciones a realizar y haz clic en Agregar una acción para definir la acción que se ejecutará.
Truco
Puedes definir varias acciones para la misma regla de automatización. Las acciones se ejecutan en el orden en que fueron definidas de forma predeterminada.
Por ejemplo, si defines una acción Actualizar registro y luego una acción Enviar correo donde el correo hace referencia al campo que se actualizó, el correo usará los valores actualizados, pero si la acción Enviar correo se define antes de la acción Actualizar registro, el correo usará los valores configurados antes de actualizar el registro.
Para cambiar el orden de las acciones definidas, haz clic en el icono (seis cuadros grises) que se encuentra junto a una acción y arrástrala a la posición deseada.
Actualizar un registro¶
Esta acción actualiza uno de los campos (relacionados) del registro. Haz clic en el campo Actualizar y selecciona o busca el campo que se actualizará con la lista que aparecerá. Si es necesario, haz clic en el icono (flecha derecha) que se encuentra junto al nombre del campo para abrir la lista de campos relacionados.
Si seleccionaste un campo many2many, elige si la actualización del campo debe ocurrir al agregar, eliminar, definir el valor seleccionado o al limpiarlo.
Example
Si quieres que la acción automática elimine una etiqueta del registro del cliente, configura el campo Actualizar con Cliente > Etiquetas, selecciona al eliminar y luego selecciona la etiqueta.

Truco
También puedes configurar el campo de un registro de manera dinámica con código Python. Para ello, selecciona Calcular en lugar de Actualizar y después escribe el código que se utilizará para calcular el valor del campo. Por ejemplo, si quieres que la regla de automatización calcule un campo de fecha y hora personalizado cuando la prioridad de una tarea sea alta
(al marcar la tarea con una estrella), puedes seleccionar el activador La prioridad está establecida en con la opción Alto
y configurar la acción Actualizar registro de la siguiente manera:

Crear una actividad¶
Esta acción sirve para programar una nueva actividad vinculada al registro. Selecciona un tipo de actividad, escribe un título y una descripción, después usa el campo Fecha de vencimiento en para especificar cuándo quieres que se programe la actividad y elige un tipo de usuario:
Para siempre asignarle la actividad al mismo usuario, selecciona Usuario específico y luego agrega al usuario en el campo Responsable.
Para asignar un usuario vinculado al registro de forma dinámica, selecciona la opción Usuario dinámico (según el registro) y cambia el campo Usuario en caso de que sea necesario.
Example
Después de convertir un lead en una oportunidad, quieres que la acción automatizada programe una llamada para el usuario responsable del lead. Para ello, configura el tipo de actividad con la opción Llamada y el tipo de usuario con Usuario dinámico (según el registro).

Enviar correos electrónicos y mensajes de texto¶
Estas acciones sirven para enviar correos electrónicos o mensajes de texto a un contacto vinculado a un registro específico. Para ello, selecciona o crea una plantilla de correo electrónico o una plantilla de SMS y elige cómo enviar el correo o mensaje con los campos Enviar correo electrónico como o Enviar SMS como :
Correo electrónico: para enviar el mensaje como un correo electrónico a los destinatarios de la plantilla de correo electrónico.
Mensaje: para publicar el mensaje en el registro y notificar a los seguidores del registro.
Nota: para enviar el mensaje como una nota interna que los usuarios internos podrán ver en el chatter.
SMS (sin nota): para enviar el mensaje como un mensaje de texto a los destinatarios de la plantilla de SMS.
SMS (con nota): para enviar el mensaje como un mensaje de texto a los destinatarios de la plantilla de SMS y también publicarlo como una nota interna en el chatter.
Solo nota: para publicar el mensaje solo como una nota interna en el chatter.
Enviar WhatsApp¶
Importante
Para automatizar el envío de mensajes de WhatsApp debes crear una o más plantillas de WhatsApp.
Esta acción envía un mensaje de WhatsApp a un contacto vinculado a un registro específico. Para hacerlo, selecciona la plantilla de WhatsApp correspondiente en el menú desplegable.
Agregar o eliminar seguidores¶
Esta acción sirve para suscribir o cancelar la suscripción de los contactos existentes al registro.
Crear un registro¶
Esta acción sirve para crear un nuevo registro en cualquier modelo.
Selecciona el modelo necesario en el campo Registro a crear, este incluye el modelo actual de forma predeterminada. Especifica un nombre para el registro y, si quieres crear el registro en otro modelo, selecciona un campo en el campo Vincular campo para vincular el registro que activó la creación de uno nuevo.
Nota
La lista desplegable relacionada con el campo Campo del enlace solo contiene los campos one2many existentes en el modelo actual que están vinculados a un campo many2one en el modelo objetivo.
Truco
Si es necesario, puedes crear otra regla de automatización con acciones de tipo Actualizar un registro para actualizar los campos del nuevo registro. Por ejemplo, puedes usar una acción Crear registro para crear una nueva tarea de proyecto y luego asignársela a un usuario específico mediante una acción Actualizar registro.
Ejecutar código¶
Importante
Si tus reglas de automatización requieren la ejecución de código personalizado, toma en cuenta que los planes estándar y personalizado no incluyen el mantenimiento del código personalizado, así que eso genera cargos adicionales.
Esta acción sirve para ejecutar código Python. Puedes escribir tu código en la pestaña Código con las siguientes variables:
env
: El entorno en el que se activa la acción.model
: El modelo del registro en el que se activa la acción. Es un conjunto de registros vacío.record
: Registro en el que se activa la acción y puede estar vacío.records
: Conjunto de todos los registros en los que se activa la acción en modo múltiple. Puede estar vacía.time
,datetime
,dateutil
,timezone
: Bibliotecas útiles de Python.float_compare
: Una función de utilidad para comparar números basada en una precisión específica.log(message, level='info')
: Una función de registro para registrar la información de depuración en la tabla ir.logging._logger.info(message)
: Un registrador para emitir mensajes en los registros del servidor.UserError
: Una clase de excepción para generar mensajes de advertencia dirigidos al usuario.Command
: Los espacios de nombres de comandos x2many.action = {...}
: Sirve para devolver una acción.
Truco
En las pestañas Código y Ayuda encontrarás la descripción de las variables disponibles.
Ver también
Enviar notificación webhook¶
Esta acción sirve para enviar una solicitud API POST
con los valores de los campos seleccionados a la URL del webhook especificada en el campo URL.
La carga efectiva de ejemplo muestra una vista previa de los datos incluidos en la solicitud usando la información de un registro aleatorio o datos ficticios si no hay un registro disponible.
Nota
También puedes configurar una acción automática que use un webhook para recibir datos de un sistema externo cuando ocurra un evento predefinido en ese sistema.
Ejecutar acciones existentes¶
La acción sirve para activar varias acciones (vinculadas al modelo actual) al mismo tiempo. Para ello, haz clic en Agregar una línea y después, en la ventana emergente Agregar: Acciones subordinadas, selecciona una acción existente o haz clic en Nuevo para crear una.