Compartir por


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 utilizar a Condición cartón no modo básico para comparar rapidamente un único valor con outro. 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 que o 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 usa o deseñador de fluxos de nube clásico ou o deseñador de fluxos de nube con copiloto. Para identificar o deseñador que estás a usar, vai á Nota sección en Comprende o deseñador de fluxos de nube coas capacidades 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 (empresa).

    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 acción.

    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 táboa cartón.

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 valor token representa a táboa da folla de cálculo e todos os seus datos.

  4. Seleccione Engadir unha acción en Aplicar a cada cartón.

  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 Condición cartó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. No Eliminar unha fila cartón, configure Localización, Biblioteca de documentos, Ficheiro e Caixas da táboa exactamente como definiches estas caixas no Enumerar filas presentes nunha táboa cartón anteriormente neste tutorial.

  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 Condición cartón no 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 Condición cartó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 ser semellante á 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 Columnas de estado .

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

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

A súa condición cartón debe parecer similar á seguinte captura de pantalla.

Captura de pantalla da expresión 'baleira'.

Despois de que se execute o fluxo, a folla de cálculo debe parecer similar á seguinte captura de pantalla.

SScreenshot da folla de cálculo despois de correr 'baleira'.

Notan liñas extra eliminadas da táboa.

Utilizar a expresión "maior"

Imaxina que comprou billetes de béisbol para os seus compañeiros de traballo e está a usar unha folla de cálculo para asegurarse de que é reembolsado por cada persoa. Podes crear rapidamente unha fluxo de nube que envíe un correo electrónico diario a cada persoa que non pagou o importe íntegro.

Utilizar a maior expresión para identificar aos empregados que non pagaron a cota íntegra. A continuación, pode enviar automaticamente un correo electrónico de recordatorio a aqueles que non pagaron na súa totalidade.

Velaquí unha visión 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 maior expresión que identifica a todas as persoas que pagaron menos do importe debido a elas.

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

Utilizar a expresión "menos"

Imaxina que comprou billetes de béisbol para os seus compañeiros de traballo e está a usar unha folla de cálculo para asegurarse de que é reembolsado por cada persoa pola data na que todos estaban de acordo. Podes crear un fluxo de nube que envíe un correo electrónico de recordatorio a cada persoa que non aboase o importe íntegro se a data actual é inferior a un día antes da data de vencemento.

Utilizar a e expresión con menos expresión xa que hai dúas condicións que se están validando.

Condición para validar Expresión para usar Exemplo
Abonouse o importe íntegro debido? maior @greater(item()?['Due'], item()?['Paid'])
A data de caducidade é inferior a un día? menos @less(item()?['DueDate'], addDays(utcNow(),1))

Combina as expresións "maiores" e "menos" nunha expresión "e"

Utilizar a maior expresión para identificar os empregados que pagaron menos do importe íntegro debido e utilizan a menor expresión para determinar se a data de caducidade do pagamento está a menos dun día de distancia da data actual. A continuación, podes usar a acción Enviar un correo electrónico para enviar correos electrónicos de recordatorio a aqueles empregados que non pagaron na súa totalidade e a data de caducidade é inferior a un día.

Aquí tes unha visión da táboa de follas de cálculo.

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

Aquí está a implantación da expresión e expresión que identifica a todos os empregados que pagaron menos do importe debido a eles e a data de caducidade está a menos dun día de distancia da data actual.

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

Utilizar funcións nas expresións

Algunhas expresións obteñen os seus valores a partir de accións de execución que aínda non poden existir cando unha fluxo de nube comeza a funcionar. Para referenciar ou traballar con estes valores en expresións, pódense utilizar funcións que a lingua política do fluxo de traballo proporciona. Máis información. Para obter máis información, vai a Guía de referencia para as funcións de expresión do fluxo de traballo en Azure Logic Apps e Power Automate.