Power Automate

Power Automate ofrece una amplia gama de funcionalidades «out-of-the-box» (OOTB), pero a veces se requiere más flexibilidad y complejidad para lograr ciertos objetivos. A continuación, se presentan algunos ejemplos de cómo utilizar expresiones complejas para extender la funcionalidad de Power Automate.

Obtener todas las filas creadas hoy en Dataverse

Para buscar todas las filas que han sido creadas el día de hoy en una tabla de Dataverse, podemos utilizar una consulta XML.

<fetch mapping='logical'>   
   <entity name='table_name'>  
      <attribute name='column_name'/>   
      <attribute name='createdon'/>   
       <filter>
           <condition attribute='createdon' operator="on" value='@{formatDateTime(utcNow(),'MM/dd/yyyy')}' />   
         </filter>
   </entity>  
</fetch>

Manipular cadenas de texto para obtener el primer nombre de un email

Power Automate no tiene expresiones regulares (Regex) OOTB, pero puedes manipular cadenas de texto para obtener resultados similares, como extraer el primer nombre de un arreglo de emails.

slice(items('for_each_user'),0,IndexOf(items('for_each_user'),'.'))

Capitalizar la primera letra del nombre

Después de obtener el primer nombre, puedes capitalizar la primera letra del mismo usando el siguiente código:

concat(first(toupper(outputs('Get_First_name'))),substring(outputs('Get_First_name'),1,sub(length(outputs('Get_First_name')),1)))

Si necesitas compartir o revisar un Flow específico, puedes crear un enlace directo a la ejecución del Flow con esta expresión:

concat('https://us.flow.microsoft.com/manage/environments/', workflow()?['tags']?['environmentName'], '/flows/', workflow()?['tags']?['logicAppName'], '/runs/', workflow()?['run']?['name'])

Uso de filtros para agregar múltiples condiciones

Puede que necesites aplicar filtros con múltiples condiciones en un «Apply for each». En lugar de múltiples acciones de control, utiliza la siguiente expresión con varias condiciones:

@or(equals(item()?['Operation'], 'FileModified'),equals(item()?['Operation'], 'FileRecycled'),equals(item()?['Operation'], 'FileCheckedIn'),equals(item()?['Operation'], 'SharingRevoked'))

Emplear if statements en lugar de control actions

En situaciones donde normalmente usarías acciones de control, puedes optar por una declaración if para simplificar tu flujo de trabajo:

if(greaterOrEquals(outputs('Get_First_name'),"Juan"), 'Es Juan', 'No es Juan')

Estos ejemplos muestran cómo puedes usar expresiones complejas para mejorar y personalizar tus Flows en Power Automate. Con un poco de creatividad, las posibilidades son casi ilimitadas.

Maximiliano Díaz Doglia
Últimas entradas de Maximiliano Díaz Doglia (ver todo)