Novedades Power Platform

Para la Transformación Digital e Innovación Tecnológica

Novedades Power Platform

Para la Transformación Digital e Innovación Tecnológica

Power AutomatePower Platform

Power Automate – Variable vs Redactar

En Power Automate Cloud, una de las mejoras más “silenciosas” pero con mayor impacto práctico no es un nuevo conector: es cómo modelas los datos dentro del flujo. Elegir entre Variable y Redactar (Data Operations – Compose) puede marcar la diferencia en rendimiento, mantenibilidad, legibilidad y, sobre todo, en la capacidad de escalar con concurrencia (paralelismo) sin efectos inesperados. ✨ [learn.microsoft.com], [learn.microsoft.com], [learn.microsoft.com]


📌 Al grano!!


🧠 Comparativo : Variable vs Redactar

CriterioVariableRedactar (Compose)
Tipo de valorMutable (cambia durante el flujo) [learn.microsoft.com]Inmutable (resultado fijo de una entrada/expresión) [learn.microsoft.com]
RequisitosDebes inicializar (Initialize variable) [learn.microsoft.com]Se agrega donde lo necesites, sin inicialización previa [learn.microsoft.com]
Mejor usoEstado, contadores, acumulación, control de flujo [learn.microsoft.com]Transformaciones, “constantes”, payloads, depuración, expresiones [learn.microsoft.com], [learn.microsoft.com]
ParalelismoRequiere cuidado: puede volverse impredecible en bucles concurrentes [learn.microsoft.com], [learn.microsoft.com]Suele ser más seguro para procesar iteraciones en paralelo cuando no hay estado compartido [learn.microsoft.com], [learn.microsoft.com]

🔹 Novedad práctica #1: Redactar como “bloque de rendimiento” para transformación de datos ⚡

La acción Redactar (Data Operations) está pensada para manipular datos de forma ligera: construir objetos, aplicar expresiones, reusar un valor calculado y facilitar debugging al ver entradas/salidas en el historial. [learn.microsoft.com], [learn.microsoft.com]

✅ ¿Qué mejora y para quién?


🔹 Novedad práctica #2: Variable para estado y acumulación (pero con reglas claras) 🧩

Las Variables te permiten almacenar valores globales dentro del flujo, persistirlos a través de iteraciones y actualizar su contenido (set, increment/decrement, append). [learn.microsoft.com]

✅ ¿Qué mejora y para quién?

  • Procesos con lógica progresiva: contadores, banderas (boolean), acumulación de resultados. [learn.microsoft.com]
  • Automatizaciones con pasos dependientes: cuando el orden importa y necesitas un “estado” confiable. [learn.microsoft.com]

🔹 Novedad práctica #3: Concurrencia en bucles: el punto donde esta decisión se vuelve crítica 🚦

En Power Automate, los bucles Apply to each se ejecutan secuencialmente por defecto, pero puedes habilitar Concurrency Control para procesar iteraciones en paralelo y mejorar tiempos. [learn.microsoft.com]

📌 Pero: Microsoft advierte que si usas Variables dentro de bucles concurrentes, podrías perder predictibilidad en los resultados (condiciones de carrera / orden no garantizado). [learn.microsoft.com], [learn.microsoft.com]

Impacto práctico:

  • ✅ Concurrencia ON: ideal para acciones independientes (ej.: notificar, actualizar registros sin dependencia). [learn.microsoft.com]
  • ⚠️ Variables + concurrencia: úsalo solo si el orden no importa o si no compartes estado; si el estado es crítico, mantén ejecución secuencial. [learn.microsoft.com], [learn.microsoft.com]

✅ Matriz de decisión rápida (qué usar y cuándo) 📌

NecesidadRecomendación
Guardar un valor calculado para reutilizarloRedactar [learn.microsoft.com], [learn.microsoft.com]
Simplificar una expresión larga (y depurarla fácil)Redactar [learn.microsoft.com], [learn.microsoft.com]
Contar iteraciones / llevar un acumuladoVariable [learn.microsoft.com]
Construir un “estado” que cambia por condicionesVariable [learn.microsoft.com]
Activar concurrencia en Apply to eachPrioriza Redactar y minimiza Variables compartidas [learn.microsoft.com], [learn.microsoft.com]

🧪 Casos de uso (escenarios reales y breves)

1) “Normalizar fecha y reutilizarla en 5 acciones” (ideal: Redactar) ✅

Escenario: necesitas una fecha ISO para nombre de archivo, asunto de correo y registro.
Solución: calcula una vez (Compose) y reutiliza su salida.
Beneficio: menos duplicación y más claridad; expresiones más mantenibles. [learn.microsoft.com], [learn.microsoft.com]


2) “Contar cuántos registros cumplen una condición” (ideal: Variable) ✅

Escenario: recorres elementos y requieres un contador.
Solución: Initialize variable (Integer) + incrementar cuando se cumpla la condición.
Beneficio: estado explícito y controlado durante la ejecución. [learn.microsoft.com]


3) “Procesar 200 elementos rápido” (ideal: Concurrencia + Compose) 🚀

Escenario: un Apply to each tarda demasiado.
Solución: habilita concurrencia y evita variables compartidas; usa Compose para transformar cada item.
Beneficio: mejoras en tiempo total cuando las iteraciones no dependen entre sí. [learn.microsoft.com], [learn.microsoft.com]


🛠️ Buenas prácticas recomendadas

  1. Redactar por defecto, Variable por necesidad. Si no necesitas mutabilidad, usa Redactar. [learn.microsoft.com], [learn.microsoft.com]
  2. Nombra acciones con intención: Compose_Payload, Compose_FechaISO, varContadorErrores. Mejora mantenimiento y soporte. [learn.microsoft.com], [learn.microsoft.com]
  3. Concurrencia con criterio: sube el “degree of parallelism” gradualmente y valida límites/overhead. [learn.microsoft.com]
  4. Expresiones en Redactar para depurar: ver el output de una función es más rápido que “adivinar” en condiciones. [learn.microsoft.com], [learn.microsoft.com]
  5. Si un bucle requiere resultados “exactos y ordenados”, mantén ejecución secuencial si dependes de variables para consistencia. [learn.microsoft.com], [learn.microsoft.com]

🧾 Conclusiones y próximos pasos ✅

  • 📌 Si buscas rendimiento y claridad: adopta Redactar como tu herramienta principal para cálculos y transformaciones. [learn.microsoft.com], [learn.microsoft.com]
  • 📌 Si necesitas estado mutable: usa Variables, pero define reglas (dónde se inicializan, cómo se actualizan y cómo afectan el paralelismo). [learn.microsoft.com]
  • 📌 Si tu flujo escala en volumen: revisa bucles y considera concurrencia, minimizando variables compartidas para evitar resultados impredecibles. [learn.microsoft.com], [learn.microsoft.com]

Recomendación práctica: toma un flujo “lento”, identifica variables que solo guardan resultados de expresiones (sin mutabilidad real) y reemplázalas por Redactar. Luego evalúa habilitar concurrencia donde el orden no sea relevante. [learn.microsoft.com], [learn.microsoft.com], [learn.microsoft.com]


📚 Referencias oficiales (Microsoft)

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

advanced-floating-content-close-btnBoton