🟢 Introducción

Cuando trabajamos con datos en Power Automate —ya sea de Dataverse, SharePoint, APIs externas, SQL o Power Apps— es muy común encontrarnos con valores nulosvacíos o no definidos.

Si no manejamos esos casos, el flujo puede fallar con errores como:

“The template language function… cannot be evaluated…”
“Object reference not set…”

La función coalesce() nos permite asignar un valor seguro cuando el dato real viene vacío. Es fundamental para crear flujos confiables, especialmente en escenarios empresariales.

🧠 Qué es / para qué sirve

La función coalesce() devuelve el primer valor que NO sea nulo, evaluando uno por uno.

Sirve para:

  • Evitar errores cuando un campo viene vacío.
  • Definir valores por defecto.
  • Garantizar que un campo tenga texto, número o fecha válida.
  • Manejar respuestas de APIs inconsistentes.
  • Asegurar que parámetros de Power Apps no vengan nulos.

🧩 Sintaxis

coalesce(<value1>, <value2>, <value3>, ...)

Devuelve: el primer valor que exista y no sea nulo.

💻 Ejemplos con código

🔹 Ejemplo 1 — Usar valor por defecto

Si triggerBody()?['email'] viene vacío:

coalesce(triggerBody()?['email'], 'sin-correo@contoso.com')

🔹 Ejemplo 2 — Usar múltiples alternativas

coalesce(item()?['Phone'], item()?['Mobile'], 'No disponible')

🔹 Ejemplo 3 — Enviar siempre un texto válido a una API

coalesce(body('GetUser')?['displayName'], 'Desconocido')

🔹 Ejemplo 4 — Evitar error de conversión numérica

coalesce(int(item()?['Quantity']), 0)

🔹 Ejemplo 5 — Uso dentro de Apply to each

coalesce(item()?['description'], 'Sin descripción')

🧱 Buenas prácticas

✅ Siempre usa coalesce cuando consumas datos externos (APIs).
✅ Define valores por defecto coherentes (“N/A”, 0, fecha actual).
✅ Úsalo antes de guardar datos en Dataverse o SharePoint.
✅ Agrégalo cuando envíes mensajes de Teams/Email para evitar mensajes rotos.
✅ Combínalo con trim() para limpiar espacios en blanco.

⚠️ Errores comunes

🚫 Usar coalesce para cálculos complejos — su objetivo es validar nulos.
🚫 No validar el tipo de dato antes (texto, número, booleano).
🚫 Dejar el valor por defecto vacío → pierde propósito.
🚫 Colocar nombres de campos mal escritos → siempre caerás en el valor alterno.
🚫 Usarlo en campos que nunca pueden venir nulos (innecesario).

🔄 Variantes o alternativas

  • empty() → verificar si un valor está vacío.
  • if() → si necesitas lógica adicional.
  • null → para limpiar valores.
  • setProperty() (Copilot Studio) → manejo de valores condicionales.
  • Condition action → para lógica más explicativa en flujos grandes.

📚 Recursos oficiales (verificados)

📗 Funciones de expresiones en Logic Apps / Power Automate

Deja un comentario

¡Gracias por tu mensaje!

Me pondré en contacto tan rápido como pueda.

Descubre más desde Power Platform En Español

Suscríbete ahora para seguir leyendo y obtener acceso al archivo completo.

Seguir leyendo