Use expresións en condicións para comprobar varios valores

Neste titorial, aprenderás a usar expresións e condicións para comparar varios valores no modo avanzado.

Cando creas un fluxo de nube, podes usar a tarxeta Condición en modo básico para comparar rapidamente un único valor con outro valor. Non obstante, hai momentos nos que necesitas comparar varios valores. Por exemplo, pode querer comprobar o valor dalgunhas columnas nunha folla de cálculo ou táboa de base de datos.

Podes usar calquera combinación das seguintes expresións lóxicas nas túas condicións.

Expression Descripción Exemplo
e Toma dous argumentos e devolve verdadeiro se ambos os valores son verdadeiros.
Nota: Ambos argumentos deben ser booleanos.
Esta expresión devolve false:
and(greater(1,10),equals(0,0))
ou Toma dous argumentos e devolve verdadeiro se calquera dos argumentos é verdadeiro.
Nota: Ambos argumentos deben ser booleanos.
Esta expresión devolve verdadeira:
or(greater(1,10),equals(0,0))
igual a Devolve verdadeiro se dous valores son iguais. Por exemplo, se o parámetro 1 é algúnValor, esta expresión devolve verdadeiro:
equals(parameters('parameter1'), 'someValue')
menos Toma dous argumentos e devolve verdadeiro se o primeiro argumento é menor que o segundo.
Nota: os tipos admitidos son enteiro, flotante e cadea.
Esta expresión devolve verdadeira:
less(10,100)
lessOrEquals Toma dous argumentos e devolve verdadeiro se o primeiro argumento é menor ou igual ao segundo.
Nota: os tipos admitidos son enteiro, flotante e cadea.
Esta expresión devolve verdadeira:
lessOrEquals(10,10)
maior Toma dous argumentos e devolve verdadeiro se o primeiro argumento é maior que o segundo.
Nota: os tipos admitidos son enteiro, flotante e cadea.
Esta expresión devolve false:
greater(10,10)
Maior ou igual Toma dous argumentos e devolve verdadeiro se o primeiro argumento é maior ou igual ao segundo.
Nota: os tipos admitidos son enteiro, flotante e cadea.
Esta expresión devolve false:
greaterOrEquals(10,100)
baleiro Devolve verdadeiro se o obxecto, matriz ou cadea está baleiro. Esta expresión devolve verdadeira:
empty('')
not Devolve o contrario dun valor booleano. Esta expresión devolve verdadeira:
not(contains('200 Success','Fail'))
se Devolve un valor específico se a expresión resulta verdadeiro ou falso. Esta expresión devolve "si":
if(equals(1, 1), 'yes', 'no')

Requisitos previos

Aquí tes o que necesitas para completar este tutorial.

  • Acceso a Power Automate.
  • A túa propia folla de cálculo coas táboas que se describen máis adiante neste tutorial. Asegúrate de gardar a folla de cálculo nun lugar como Dropbox ou Microsoft OneDrive para que Power Automate poda acceder a ela.
  • Microsoft 365 Outlook (Mentres usamos Outlook aquí, podes usar calquera servizo de correo electrónico compatible nos teus fluxos).

Use a expresión "ou".

Ás veces, o teu fluxo de traballo debe realizar unha acción se o valor dun elemento é valueA ou valueB. Por exemplo, pode estar facendo un seguimento do estado das tarefas nunha táboa de folla de cálculo. Supoña que a táboa ten unha columna chamada Estado e os posibles valores nesta columna son:

  • completado
  • bloqueado
  • innecesario
  • non comezou

Aquí tes un exemplo de como pode ser a folla de cálculo:

Captura de pantalla dunha folla de cálculo de mostra cunha columna de estado.

Dada a folla de cálculo anterior, quere utilizar Power Automate para eliminar todas as filas cunha columna Estado que estea configurada como completado ou innecesario.

Imos crear o fluxo.

Comeza cun fluxo en branco

  1. Iniciar sesión en Power Automate.

  2. No panel esquerdo, selecciona Os meus fluxos.

  3. Seleccione Novo fluxo>Fluxo de nube programado.

Engade un disparador ao teu fluxo

  1. Dálle un nome ao teu fluxo.

  2. Establece a programación para executar o fluxo unha vez ao día.

  3. Seleccione o botón Crear para ir ao seguinte paso.

Nota

Power Automate utiliza o deseñador de fluxos de nube clásico ou o deseñador de fluxos de nube con Copilot. Para identificar o deseñador que estás a usar, vai á Nota sección en Comprende o deseñador de fluxos de nube con capacidades de copiloto.

Seleccione a folla de cálculo e obtén todas as filas

  1. Seleccione Novo paso.

  2. Busca filas e, a continuación, selecciona Excel Online (empresas).

    Seleccione a acción obter unha fila que se corresponda coa folla de cálculo que está a usar. Por exemplo, se estás a usar Follas de cálculo de Google, selecciona Follas de cálculo de Google - Obter filas.

  3. Seleccione a acción Listar filas presentes nunha táboa .

    Captura de pantalla dunha lista de filas nunha táboa.

  4. Seleccione Localización, Biblioteca de documentos, Ficheiro, e Táboa que conteñen os teus datos.

    Captura de pantalla dos campos Localización, Biblioteca de documentos, Ficheiro e Táboa nas filas Lista presentes nunha tarxeta de táboa.

Comprobe a columna de estado de cada fila

  1. Seleccione Novo paso.

  2. Busca aplicar a cada e, a continuación, selecciona Aplicar a cada un - Control.

  3. Engade o valor token á caixa Selecciona unha saída dos pasos anteriores .

    Este token de valor representa a táboa da folla de cálculo e todos os seus datos.

  4. Seleccione Engadir unha acción na Aplicar a cada tarxeta.

  5. Busca condición e, a continuación, selecciona o control Condición .

  6. Engade a seguinte expresión Ou . Esta expresión ou comproba o valor de cada fila da táboa. Se o valor da columna Estado está completadoOuinnecesario, a expresión Ou avalíase como "verdadeiro".

    Aquí tes un exemplo dunha tarxeta Condición .

    Captura de pantalla dunha expresión

Elimina as filas coincidentes da folla de cálculo

  1. Seleccione Engadir unha acción na En caso afirmativo rama da condición.

    A rama Se si execútase se a condición OU se avalía como verdadeiro.

  2. Busca Eliminar unha fila, selecciona Excel Online (empresas) e, a continuación, selecciona Eliminar unha fila.

  3. Na tarxeta Eliminar unha fila defina Localización, Biblioteca de documentos, Ficheiro e Caixas de táboa exactamente como definiches estas caixas no Enumere as filas presentes nunha tarxeta de táboa anteriormente neste titorial.

  4. Na lista despregable Columna clave , seleccione _PowerAppsId_.

  5. No campo Valor clave , insira o _PowerAppsId_ valor dinámico.

  6. Garde o fluxo.

Executar o fluxo coa expresión "ou".

O fluxo corre despois de gardalo. Se creaches a folla de cálculo que se amosa anteriormente neste titorial, aquí tes como se verá despois de completar a execución.

Captura de pantalla da folla de cálculo cando se completa a expresión

Observe todos os datos das filas que se completaron ou innecesarios no Estado eliminouse a columna.

Use a expresión "e".

Supoña que ten unha táboa de folla de cálculo con dúas columnas. Os nomes das columnas son Estado e Asignado. Supoña tamén que quere eliminar todas as filas se o valor da columna Estado está bloqueado e o O valor da columna asignado é John Wonder. Para realizar esta tarefa, siga todos os pasos anteriores deste titorial, pero cando edite a tarxeta Condición en modo avanzado, use as opcións e expresión mostrada aquí.

@and(equals(item()?['Status'], 'blocked'), equals(item()?['Assigned'], 'John Wonder'))

Aquí tes un exemplo dunha tarxeta Condición .

Captura de pantalla da expresión

Executar o fluxo coa expresión "e".

Se seguiches os pasos deste titorial, a túa folla de cálculo debería ser semellante á seguinte captura de pantalla.

Captura de pantalla da folla de cálculo antes de que se execute o fluxo.

Despois de que se execute o fluxo, a folla de cálculo debería parecerse á seguinte captura de pantalla.

Captura de pantalla da folla de cálculo despois de que se execute o fluxo.

Use a expresión "baleira".

Teña en conta que agora hai varias filas baleiras na folla de cálculo. Para eliminalos, use a expresión baleira para identificar todas as filas que non teñan texto nos Asignados e Estado columnas.

Para realizar esta tarefa, siga todos os pasos indicados na sección Utilizar a expresión "e" ao principio deste titorial. Cando edites a tarxeta Condición en modo avanzado, utiliza a seguinte expresión baleira .

@and(empty(item()?['Status']), empty(item()?['Assigned']))

A túa Condición debería ser semellante á seguinte captura de pantalla.

Captura de pantalla da expresión

Despois de que se execute o teu fluxo, a folla de cálculo debería parecerse á seguinte captura de pantalla.

SSCaptura de pantalla da folla de cálculo despois de executarse en baleiro.

Teña en conta que se eliminan liñas extra da táboa.

Use a expresión "maior".

Imaxina que compraches entradas de béisbol para os teus compañeiros de traballo e estás usando unha folla de cálculo para asegurarte de que cada persoa che reembolsa. Podes crear rapidamente un fluxo na nube que envíe un correo electrónico diario a cada persoa que non pagou o importe total.

Use a expresión maior para identificar os empregados que non pagaron o importe total. Despois podes enviar automaticamente un correo electrónico de recordatorio a aqueles que non pagaron na súa totalidade.

Aquí tes unha vista da folla de cálculo.

Captura de pantalla da folla de cálculo dos que non pagaron na súa totalidade.

Velaquí a implantación da expresión maior que identifica a todas as persoas que pagaron menos do importe que lles corresponde.

@greater(item()?['Due'], item()?['Paid'])

Use a expresión "menos".

Imaxina que compraches entradas de béisbol para os teus compañeiros de traballo e estás usando unha folla de cálculo para asegurarte de que cada persoa che reembolsa na data na que todos acordaron. Podes crear un fluxo na nube que envíe un correo electrónico de recordatorio a cada persoa que non pagou o importe total se a data actual é menos dun día antes da data de vencemento.

Use a expresión e coa expresión less xa que se validan dúas condicións.

Condición para validar Expresión a utilizar Exemplo
Pagouse o importe total debido? maior @greater(item()?['Due'], item()?['Paid'])
A data de vencemento está a menos dun día? menor @less(item()?['DueDate'], addDays(utcNow(),1))

Combina as expresións "maior" e "menos" nunha expresión "e".

Use a expresión maior para identificar os empregados que pagaron menos do importe total debido e use a expresión menos para determinar se a data de vencemento do pagamento está a menos dun día da data actual. A continuación, podes utilizar a acción Enviar un correo electrónico para enviar correos electrónicos de recordatorio aos empregados que non pagaron na súa totalidade e a data de vencemento está a menos dun día.

Aquí tes unha vista da táboa de follas de cálculo.

Captura de pantalla da táboa de follas de cálculo.

Aquí tes a implementación da expresión e que identifica a todos os empregados que pagaron menos da cantidade que lles corresponde e que a data de vencemento está a menos dun día da data actual.

@and(greater(item()?['Due'], item()?['Paid']), less(item()?['dueDate'], addDays(utcNow(),1)))

Utiliza as funcións nas expresións

Algunhas expresións obteñen os seus valores de accións en tempo de execución que aínda non existen cando comeza a executarse un fluxo de nube. Para facer referencia ou traballar con estes valores en expresións, pode usar funcións que proporciona a linguaxe política do fluxo de traballo. Máis información. Para obter máis información, vai a Guía de referencia das funcións de expresión de fluxo de traballo en Azure Logic Apps e Power Automate.