TUTORIAL · POWER BI · FIN

Alertas presupuestarias automáticas

Detecte y notifique desviaciones presupuestarias en tiempo real: configure alertas en Power BI y un flujo en Power Automate que envíe mensajes directos o a canal de Teams a los responsables.

Power BI AVANZADO FIN Power BI Pro + Power Automate
Objetivo

Al finalizar tendrá un flujo operativo que detecta partidas sobre presupuesto y notifica automáticamente a responsables vía Teams.

Al completar este tutorial habrás implementado un sistema de análisis activo en Power BI. Los tres resultados concretos que obtendrás:

  • Alertas automáticas en Power BI vinculadas a un flujo de Power Automate
  • Mensajes estructurados en Teams con responsables y detalles de la desviación
  • Plantilla reutilizable para otras partidas y centros de coste

Tiempo estimado: 45-75 minutos. Requisitos previos:

Obligatorio Cuenta Microsoft 365 con Power BI Pro y Power Automate habilitados (incluido en Copilot).
Obligatorio Dataset en Power BI con medidas de presupuesto y gasto actual; informe publicado y visual anclado en un panel (dashboard).
Recomendado Lista de responsables por partida con correos electrónicos y miembros de Teams (ej. tabla 'Responsables' en el modelo).
Recomendado Política interna clara de umbrales de desviación (porcentaje o importe) y plantilla de mensaje aprobada por Finanzas.

Caso Real

El problema que resuelve este tutorial

AceroNova S.A. — Fabricación de componentes metálicos

El director de finanzas detecta desvíos en partidas clave solo en revisiones periódicas, lo que retrasa decisiones correctoras. Los responsables operativos no reciben alertas automáticas y la comunicación se pierde entre correo y reuniones.

Solución: Power BI detecta la desviación en un visual anclado y, mediante un flujo de Power Automate, envía un mensaje estructurado en Teams al responsable de la partida con datos, impacto y acciones recomendadas.

Power BI centraliza métricas y medidas financieras en tiempo real y permite crear alertas sobre tiles del panel. Power Automate conecta esa señal con Teams para notificaciones inmediatas, reduciendo tiempos de reacción y mejorando la trazabilidad de las acciones.

Clave directiva

Power BI Copilot no requiere conocimientos de DAX ni de modelado de datos para obtener respuestas analíticas de alto valor. El directivo puede interrogar el modelo semántico en lenguaje natural y obtener visualizaciones y narrativas automáticas en segundos.


Contexto

Cuándo usar este análisis

Úsalo cuando... No lo uses cuando...
  • Necesita detección y notificación inmediata de sobrecostes en partidas críticas.
  • Tiene responsables asignados por partida o centro de coste con presencia en Teams.
  • Desea auditar y registrar cuándo y quién recibió la notificación de desviación.
  • La revisión de la partida se realiza solo en auditorías anuales sin necesidad de alertas en tiempo real.
  • No hay un propietario claro para la partida o no usa Teams como canal de comunicación.
  • Solo quiere generar informes periódicos sin automatización de notificaciones.

Comparativa: Copilot vs Q&A vs Smart Narratives

Función Mejor para Requiere Output
Copilot Análisis exploratorio y resúmenes ejecutivos Licencia M365 Copilot Texto narrativo + visualizaciones sugeridas
Q&A Preguntas puntuales sobre métricas específicas Modelo semántico bien etiquetado Visualización automática
Smart Narratives Comentarios automáticos en informes estáticos Power BI Pro o superior Párrafo de texto dinámico
Key Influencers Análisis causal de factores de negocio Power BI Pro o superior Árbol de factores con peso estadístico

Paso 01

Preparar medidas y panel en Power BI

Configure en Power BI las medidas necesarias (gasto acumulado, presupuesto, desviación en %/importe) y publique el informe. Ancle la visual que refleje la desviación al panel para poder activar alertas sobre ese tile.

  • 1
    Crear medidas clave En Power BI Desktop defina medidas: GastoAcumulado, PresupuestoAsignado y Desviacion = DIVIDE(GastoAcumulado - PresupuestoAsignado, PresupuestoAsignado). Use formato porcentual y valide con datos de ejemplo.
  • 2
    Publicar informe y anclar visual Publique el informe en el servicio Power BI y ancle el gráfico o tarjeta que muestra 'Desviacion' al panel correspondiente. Ejemplo: en AceroNova ancle la tarjeta 'Desviación - Línea 47' al panel 'Finanzas - Panel Ejecutivo'.
  • 3
    Verificar actualización de datos Asegure que la fuente de datos tiene refresh programado y que el tile muestra valores actuales. Si usa datos importados, programe refresh mínimo daily; para datos en tiempo real use streaming.
Checkpoint: Tile anclado al panel y la tarjeta 'Desviación' muestra valores correctos y actualizables.

Paso 02

Configurar la alerta de Power BI

Cree una alerta en el servicio Power BI que se active cuando la medida de desviación supere el umbral definido. Esta alerta será el trigger para el flujo en Power Automate.

  • 1
    Abrir el panel y localizar el tile En el servicio Power BI vaya al panel donde ancló la tarjeta de desviación y abra el menú del tile (tres puntos).
  • 2
    Crear alerta de datos Seleccione 'Administrar alertas' y 'Agregar alerta'. Configure condición (> [THRESHOLD_PERCENT] o > [THRESHOLD_AMOUNT]), frecuencia de comprobación y nombre identificador (ej. 'Alerta_Desv_Linea47').
  • 3
    Probar la alerta Forzar datos de prueba (si es posible) o esperar la próxima actualización para confirmar que la alerta se activa y se registra en el historial de alertas del tile.
Checkpoint: Alerta creada y visible en el historial del tile con el nombre identificador definido.

Paso 03

Ejecutar el prompt o configuración principal

Este es el prompt/configuración central del tutorial. Cópialo completo, rellena las variables entre corchetes con los datos de tu empresa o situación, y ejecútalo.

  • 1
    Copia el prompt o configuración completa Selecciona todo el texto y cópialo. No modifiques la estructura — está diseñado para obtener el output más útil posible.
  • 2
    Rellena las variables entre corchetes Sustituye cada [VARIABLE] con información real de tu empresa. Cuanto más específico seas, mejor será el resultado.
  • 3
    Ejecuta y espera el resultado Pega el prompt en Copilot o configura el flujo en Power Automate. El resultado puede tardar entre 10 y 60 segundos.
Variables del prompt — sustituye cada [VARIABLE] con datos reales
[DASHBOARD_TILE]Identificador o nombre del tile/panel en Power BI donde está la tarjeta de desviación (ej. 'Desviacion_Linea47')
[COST_CENTER_OWNER_EMAIL]Correo electrónico del responsable de la partida o centro de coste (ej. 'maria.gomez@aceronova.com')
[THRESHOLD_PERCENT]Umbral de activación de la alerta en porcentaje (ej. '10%')
Prompt principal — Alertas presupuestarias automáticas Eres un ingeniero de automatización encargado de crear un flujo en Power Automate que se active cuando una alerta de Power BI detecte una desviación presupuestaria. Crea instrucciones paso a paso para configurar el flujo, incluyendo los conectores y acciones exactas a usar. Variables: Dashboard/Tile identificado como [DASHBOARD_TILE], responsable de la partida [COST_CENTER_OWNER_EMAIL], umbral de activación [THRESHOLD_PERCENT] (formato porcentaje, por ejemplo '10%'). Instrucciones requeridas: 1) Nombre del flujo sugerido: 'Flujo_Alerta_Desviacion_[DASHBOARD_TILE]'. 2) Trigger: usar el conector Power BI -> 'When a data-driven alert is triggered' y explicar cómo seleccionar la alerta creada en el paso anterior. 3) Acción inmediata: obtener detalles del alert payload (alert title, current value, threshold) y parsear campos necesarios. 4) Acción para determinar responsable: si dispone de tabla 'Responsables' en el dataset, usar HTTP request al servicio del dataset o usar acción 'Get rows' de Excel/SharePoint/Dataverse según donde esté la tabla; describir ambas opciones y la prioridad recomendada (Dataverse > SharePoint > Excel). 5) Construcción del mensaje para Teams: mostrar plantilla con variables dinámicas: - Título: 'ALERTA PRESUPUESTARIA: [PARTIDA] - Desviación [DESVIACION]' - Cuerpo: 'Responsable: [RESPONSABLE_NOMBRE] ([RESPONSABLE_EMAIL])\nPartida: [PARTIDA]\nPresupuesto: [PRESUPUESTO]\nGasto actual: [GASTO_ACTUAL]\nDesviación: [DESVIACION_PERCENT] (% y €)\nImpacto estimado: [IMPACTO] \nEnlace al informe: [POWERBI_REPORT_URL]' Indique cómo insertar estas variables desde el contenido del trigger y acciones previas en Power Automate. 6) Acción Teams: usar 'Post a message in a chat or channel' del conector de Microsoft Teams. Proporcione ejemplo para enviar al canal de finanzas y para enviar mensaje directo al responsable, indicando cómo mencionar al usuario por correo. 7) Control de frecuencia: añadir condición que evita duplicados en 24 horas para la misma partida (usar variable con el identificador de la alerta y almacenar sello temporal en SharePoint/Dataverse). Explique la lógica: buscar entrada reciente, si existe, saltar notificación; si no existe, enviar notificación y crear registro. 8) Registro y seguimiento: añadir acción para crear elemento en SharePoint list 'AlertasDesviacion' con campos clave (alertId, partida, responsable, fechaHora, valor, umbral, estadoAccion). 9) Manejo de errores: incluir scope con try/catch (Configurar 'Run after' en acciones críticas) que envíe notificación al administrador [ADMIN_EMAIL] si falla la resolución del responsable o el envío a Teams. 10) Pruebas: pasos para probar el flujo manualmente simulando el JSON del trigger y validaciones esperadas. 11) Seguridad y permisos: enumerar permisos necesarios para los conectores (Power BI read alerts, Teams send, SharePoint create items, Dataverse read) y cuenta recomendada: cuenta de servicio con mínimo privilegio. 12) Nombre de variables y outputs esperados en el flujo: alertId, tileTitle, currentValue, thresholdValue, partida, responsableEmail, teamsMessageId, registroSharePointId. Entregar el flujo como una checklist descargable para implementar en Power Automate y una muestra de cuerpo de mensaje listo para copiar. Presenta además instrucciones alternativas si la tabla de responsables está en Excel en OneDrive vs en SharePoint vs en Dataverse.
Checkpoint: El flujo en Power Automate está creado, probado y envía mensajes a Teams cuando la alerta de Power BI se activa.

Paso 04

Iterar y refinar notificación y acciones

Ajuste el contenido del mensaje, destinatarios y acciones del flujo según feedback. Agregue registros en SharePoint o envíe un Adaptive Card para que el responsable acepte o reporte acciones.

  • 1
    Personalizar mensaje y variables Incluya campos dinámicos en el cuerpo del mensaje: partida, centro de coste, importe presupuestado, gasto actual, porcentaje de desviación, enlace al informe.
  • 2
    Agregar registro de auditoría Añada una acción que registre la notificación en una lista de SharePoint o en una tabla de Dataverse para trazabilidad y reporting posterior.
Checkpoint: Mensajes en Teams con datos contextuales y registro automático en el repositorio de auditoría.

Output

Qué vas a obtener

El prompt genera un instructivo secuencial: 1) nombre y trigger del flujo; 2) listado de acciones con parámetros y expresiones; 3) plantillas de mensaje para Teams; 4) checklist de pruebas y requisitos de permisos. Incluye además alternativas según ubicación de la tabla de responsables.

Señal de que el output es correcto: Mensaje de Teams recibido por el responsable con enlace funcional al informe y registro creado en el repositorio de auditoría.

  • El flujo aparece en Power Automate y tiene el trigger vinculado a la alerta de Power BI. Los mensajes enviados a Teams contienen las variables dinámicas correctas (partida, responsable, importe, desviación). El registro de la alerta se crea correctamente en SharePoint/Dataverse con campos clave. Las pruebas con JSON simulado activan el flujo y no generan errores en el scope de envío.

Prompts de iteración

Si el primer output no es exactamente lo que necesitas, usa estos prompts de refinamiento:

Hacer el output más específico
  • cuando el output es demasiado genérico. "Genera una versión más detallada del flujo de Power Automate para Power BI usando 'When a data-driven alert is triggered'. Incluye los nombres exactos de las acciones, parámetros de cada acción (ej. campos a mapear), expresiones de Power Automate para convertir formatos (por ejemplo convertir porcentaje a número) y ejemplos concretos de JSON de prueba del trigger. Mantén un tono ejecutivo y añade un checklist final de pruebas."
Cambiar el nivel de detalle
  • cuando necesitas más o menos profundidad. "Reescribe el flujo con un nivel de detalle [ALTO|MEDIO|BAJO]. Si selecciono ALTO, incluye expresiones completas, ejemplos de outputs y capturas de variables. Si MEDIO, elimina las expresiones largas. Si BAJO, entrega solo la secuencia de acciones y dependencias."
Adaptar el tono
  • cuando el tono no es el adecuado para tu audiencia. "Adapta el texto para que sea apto para el Comité de Dirección: resume en máximo 6 viñetas ejecutivas el proceso, los riesgos, el coste y el impacto esperados. Mantén lenguaje no técnico y enfoque en decisiones."
Versión ejecutiva resumida
  • para compartir con el Comité de Dirección. "Genera un resumen ejecutivo (máx. 250 palabras) del flujo de automatización: objetivo, cómo funciona, impacto cuantificable en tiempo de detección y ahorro estimado, y próximos pasos recomendados para despliegue en 30 días."
Señal de calidad

Un output de calidad en Power BI Copilot incluye siempre una explicación causal (por qué ocurre la variación), no solo descriptiva (qué ha ocurrido). Si el output solo describe, refina el prompt pidiendo explícitamente el análisis de causas.


ROI

Coste y retorno de inversión

incluido en M365 con Copilot Microsoft 365 Copilot / mes
10-60 segundos por ejecución (notificación) Por ejecución
Alto ROI estimado

Automatizar la notificación reduce el tiempo de detección y respuesta frente a revisiones manuales, evitando sobrecostes acumulados. El ROI proviene de menor tiempo perdido en recolección de información y decisiones más rápidas que mitiguen desviaciones; típicamente se recupera con la prevención de una sola desviación mayor en menos de un trimestre.


Errores

Errores frecuentes y cómo resolverlos

Síntoma Causa probable Solución
El trigger no aparece disponible al crear el flujo No existe una alerta activa en el tile del panel o el usuario no tiene permisos sobre el panel/alerta. Verifique que la alerta fue creada en el tile correcto y que la cuenta que crea el flujo tiene permisos de lectura sobre el panel y la alerta. Si procede, recree la alerta con un nombre claro.
El flujo falla al resolver el responsable desde la tabla Conector usado no apunta al origen correcto (Excel en OneDrive vs SharePoint) o credenciales insuficientes. Cambie la acción a la fuente correcta: use 'Get rows (SharePoint)' si la tabla está en SharePoint o 'List rows present in a table' para Excel en OneDrive. Compruebe credenciales y permisos.
Mensajes en Teams llegan sin variables o con campos vacíos Mapeo incorrecto de las salidas del trigger o uso de nombres de campo distintos en el payload. Abra el historial de ejecución del flujo, inspeccione el output del trigger para identificar nombres exactos de propiedades y corrija el mapeo en las expresiones de Power Automate.
Notificaciones duplicadas No se implementó control de frecuencia o el identificador de la alerta cambia entre ejecuciones. Implemente la lógica de control usando SharePoint/Dataverse para almacenar el último envío por alertId y evaluar la ventana de tiempo (ej. 24 horas) antes de enviar una nueva notificación.
Fallo al enviar mensaje a canal de Teams por permisos La cuenta que ejecuta el flujo no tiene permisos para publicar en el canal o el conector de Teams no está autorizado. Use una cuenta de servicio con permisos de publicación en el canal o configure la acción para enviar a un webhook del canal. Asegure que el conector de Teams esté autenticado correctamente.
Precaución

Copilot en Power BI requiere que el modelo semántico esté bien etiquetado (nombres de columna descriptivos, jerarquías de fechas correctas, medidas con nombres de negocio). Un modelo mal documentado produce respuestas incorrectas o incompletas, independientemente de la calidad del prompt.


Avanzado

Modo avanzado: llevar este tutorial más lejos

En modo avanzado, utilice Power BI con medidas DAX complejas y parámetros para clasificar partidas por riesgo, y combine con Power Automate para orquestar notificaciones y acciones. Añada validaciones adicionales y flujos de aprobación cuando la desviación supere umbrales mayores.

Cuándo es especialmente valioso: Útil cuando hay alto volumen de alertas, múltiples responsables y se requiere trazabilidad y acciones estructuradas (aceptar/reasignar) dentro de Teams.

  1. 1
    Crear medidas DAX avanzadas que calculen desviación acumulada por periodo móvil y clasificación de riesgo
  2. 2
    Exponer una tabla de 'Responsables' en Dataverse o SharePoint con claves únicas y roles
  3. 3
    Configurar el flujo en Power Automate con lógica condicional y manejo de errores (scopes y run after)
  4. 4
    Implementar registros de auditoría y dashboards de seguimiento en Power BI que muestren estado de acciones por alerta
Configuración avanzada Eres un especialista en BI avanzado. Diseña un flujo de Power Automate que: 1) consuma alertas de Power BI; 2) utilice medidas DAX avanzadas para calcular desviación proyectada por mes; 3) resuelva responsable en Dataverse mediante la clave 'centro_coste'; 4) envíe un Adaptive Card a Teams con acciones 'Aceptar', 'Reasignar' y 'Cerrar'; 5) actualice el registro en Dataverse con la respuesta del Adaptive Card; 6) registre métricas de tiempo de respuesta en una entidad 'KPI_Alertas'. Detalla expresiones, payloads JSON de Adaptive Card y los permisos necesarios.

Siguiente paso: Una vez en producción, revise mensualmente el volumen y tasa de falsas alarmas; ajuste umbrales y considere agrupar alertas por centro de coste para evitar saturación de notificaciones.