OdooWiki OCA HUB

Confirm/Alert pop-up before saving

web_create_write_confirm folder_open OCA/web open_in_new
Tools Licencia: AGPL-3

Este módulo proporciona la funcionalidad de crear diálogos personalizados de confirmación o alerta cuando el usuario crea o escribe un registro. El módulo incluye únicamente métodos que puedes usar en tu código. Eso significa que siempre se requiere programación. Consulta la sección de uso para obtener más información.

Traducción automática al español (DeepSeek) de la descripción original de OCA, que está en inglés.

auto_awesome Qué hace este módulo

Generado por IA a partir del código · Odoo 14.0

Permite a los desarrolladores mostrar una ventana emergente de confirmación o alerta antes de guardar un registro en Odoo. Las reglas de las ventanas emergentes se configuran en una nueva pantalla 'Popup message', pero un desarrollador todavía debe añadir el código que las activa.

Este módulo añade una nueva pantalla de configuración llamada Popup message, que se encuentra en el menú Settings. Allí, un administrador puede crear reglas que deciden qué ventana emergente aparece cuando se guarda un registro.

Para cada regla se elige: - el modelo (el tipo de registro, por ejemplo, un pedido de venta), - los campos a vigilar, - el tipo: Confirmation (el usuario puede aceptar o cancelar) o Alert (solo un mensaje informativo), - un título y un mensaje, que pueden traducirse, - y si la regla está activa.

Cuando un usuario guarda un formulario, Odoo consulta al registro las reglas de ventanas emergentes coincidentes. Una ventana emergente de Confirmation permite al usuario continuar o cancelar el guardado; una ventana emergente de Alert solo informa. Si coinciden varias reglas, se muestran una tras otra. Después de que el usuario confirme, el módulo puede ejecutar una acción de seguimiento definida por el desarrollador.

Importante: el módulo solo proporciona los hooks técnicos. El código que decide cuándo debe aparecer una ventana emergente debe ser escrito por un desarrollador en el modelo correspondiente. Sin ese código, no se muestra ninguna ventana emergente. Los usuarios normales solo pueden leer las reglas de ventanas emergentes; solo los administradores pueden crearlas, editarlas o eliminarlas.

Depende de

web

Menús que añade

Popup messagePopup message
Modelos y campos (2)
  • base · amplía un modelo existente
  • popup.message · modelo nuevomodel, title (Title), active (Active), message (Message), model_id (Model), field_ids (Fields), field_name, popup_type (Type)

Texto generado por IA (DeepSeek) al leer el código de la versión 14.0 en GitHub; puede contener errores, así que verifícalo en el código antes de decidir. Ver el código en GitHub

Disponibilidad por versión

Revisado: 2026-11-03
Confirmado (verificado en repositorio y rama) Estimado (sin verificar) Sin información

Estado de confirmación: 1 confirmada, 8 sin información de 9 versiones.

terminal Instalación y uso

Documentación de OCA · Odoo 14.0

Crea el registro popup.message. Especifica model_id, field_ids (qué campos activarán la alerta) y otros campos. Pon tu código en el método get_message_informations o execute_processing de tu modelo. Devuelve un dict (realiza read() para obtenerlo). Aquí tienes algunos ejemplos de cómo puedes usar las características de este módulo en tu código.

Confirmar cambio de res.partner:

msg = self.env['popup.message'].create(
    {
        'model_id': self.env['ir.model']._get_id('res.partner')
        'field_ids': [(6, 0, self.env['ir.model.fields'].search([('model', '=', 'res.partner')]).ids)],
        'popup_type': 'confirm',
        'title': 'Warning',
        'message': 'Are you sure want to update record?',
    }
)
return msg.read()

Alerta de pedido de venta:

msg = self.env['popup.message'].create(
    {
        'model_id': self.env['ir.model']._get_id('sale.order'),
        'field_ids': [(6, 0, self.env['ir.model.fields'].search([('model', '=', 'sale.order')]).ids)],
        'popup_type': 'alert',
        'title': 'Attention',
        'message': 'Sale order was updated.',
    }
)
return msg.read()

Traducción automática al español (DeepSeek) de la documentación original de OCA; los comandos y el código no se traducen. Sin información verificada en OCA: Instalación, Configuración.

info

Datos importados de GitHub: esta ficha refleja la última revisión del catálogo, no una consulta en directo. Verifica siempre en la documentación del módulo y en staging antes de instalar en producción.