Partajați prin


Utilizați expresii în condiții pentru a verifica mai multe valori

În acest tutorial, veți învăța să utilizați expresii și condiții pentru a compara mai multe valori în modul avansat.

Când creați un flux în cloud, puteți utiliza cardul Condiție în modul de bază pentru a compara rapid o singură valoare cu o altă valoare. Cu toate acestea, există momente când trebuie să comparați mai multe valori. De exemplu, este posibil să doriți să verificați valoarea câtorva coloane dintr-o foaie de calcul sau un tabel de bază de date.

Puteți utiliza orice combinație a următoarelor expresii logice în condițiile dvs.

Expression Descriere Exemplu
şi Ia două argumente și returnează adevărat dacă ambele valori sunt adevărate.
Notă: ambele argumente trebuie să fie booleene.
Această expresie returnează false:
and(greater(1,10),equals(0,0))
sau Preia două argumente și returnează adevărat dacă oricare dintre argumente este adevărat.
Notă: ambele argumente trebuie să fie booleene.
Această expresie returnează adevărat:
or(greater(1,10),equals(0,0))
este egal cu Returnează Adevărat dacă două valori sunt egale. De exemplu, dacă parametrul1 este someValue, această expresie returnează adevărat:
equals(parameters('parameter1'), 'someValue')
Mai puțin Preia două argumente și returnează adevărat dacă primul argument este mai mic decât al doilea.
Notă: tipurile acceptate sunt întregi, flotanți și șir.
Această expresie returnează adevărat:
less(10,100)
lessOrEquals Preia două argumente și returnează adevărat dacă primul argument este mai mic sau egal cu al doilea.
Notă: tipurile acceptate sunt întregi, flotanți și șir.
Această expresie returnează adevărat:
lessOrEquals(10,10)
mai mare Preia două argumente și returnează adevărat dacă primul argument este mai mare decât al doilea.
Notă: tipurile acceptate sunt întregi, flotanți și șir.
Această expresie returnează false:
greater(10,10)
Mai mareSau egal Preia două argumente și returnează adevărat dacă primul argument este mai mare sau egal cu al doilea.
Notă: tipurile acceptate sunt întregi, flotanți și șir.
Această expresie returnează false:
greaterOrEquals(10,100)
gol Returnează adevărat dacă obiectul, matricea sau șirul este gol. Această expresie returnează adevărat:
empty('')
Not Returnează opusul unei valori booleene. Această expresie returnează adevărat:
not(contains('200 Success','Fail'))
if Returnează o anumită valoare dacă expresia are ca rezultat adevărat sau fals. Această expresie returnează „da”:
if(equals(1, 1), 'yes', 'no')

Cerințe preliminare

Iată de ce aveți nevoie pentru a finaliza această explicație.

  • Acces la Power Automate.
  • Propria ta foaie de calcul cu tabelele descrise mai târziu în această explicație. Asigurați-vă că salvați foaia de calcul într-o locație precum Dropbox sau Microsoft OneDrive , astfel încât Power Automate să o poată accesa.
  • Microsoft 365 Outlook (În timp ce folosim Outlook aici, puteți utiliza orice serviciu de e-mail acceptat în fluxurile dvs.)

Folosiți expresia „sau”.

Uneori, fluxul de lucru trebuie să ia o acțiune dacă valoarea unui articol este valueA sau valueB. De exemplu, este posibil să urmăriți starea sarcinilor într-un tabel de foaie de calcul. Să presupunem că tabelul are o coloană numită Stare și valorile posibile din această coloană sunt:

  • completat
  • blocat
  • inutil
  • nu a început

Iată un exemplu despre cum ar putea arăta foaia de calcul:

Captură de ecran a unui exemplu de foaie de calcul cu o coloană Stare.

Având în vedere foaia de calcul anterioară, doriți să utilizați Power Automate pentru a elimina toate rândurile cu o coloană Stare setat la finalizat sau inutil

Să creăm fluxul.

Începeți cu un flux gol

  1. conectați-vă la Power Automate.

  2. În panoul din stânga, selectați Fluxurile mele.

  3. Selectați Flux nou>Flux de cloud programat.

Adăugați un declanșator fluxului dvs

  1. Dați un nume fluxului dvs.

  2. Setați programul pentru a rula fluxul o dată pe zi.

  3. Selectați butonul Creați pentru a trece la pasul următor.

Notă

  • Power Automate folosește fie designerul clasic de fluxuri cloud, fie noul designer modern cu capabilități Copilot. Pentru a identifica designerul pe care îl utilizați, accesați secțiunea Notă din Explorați designerul de fluxuri cloud.
  • Când comutați între designerul clasic și cel nou, vi se cere să vă salvați fluxul. Nu puteți salva și comuta până când toate erorile nu sunt rezolvate.

Selectați foaia de calcul și obțineți toate rândurile

  1. Cereți Copilot să creeze un flux pentru dvs. Vă rugăm să introduceți următoarea solicitare în Copilot:

    În fiecare săptămână, enumerați rândurile dintr-un tabel Excel și dacă coloana Stare este egală cu Reușit sau revendicați e-mailul managerului este jake@contoso.com, ștergeți rândul Excel

  2. Selectați TrimitețiCaptură de ecran a butonului Trimitere.

    Captură de ecran a unui prompt în Copilot.

Alternativ, puteți urma pașii de mai jos pentru a crea același flux manual:

  1. Adăugați un pas nou selectând semnul plus (+) >Adăugați o acțiune.

  2. Căutați rânduri, selectați Excel Online (Afaceri), apoi selectați acțiunea Obțineți un rând care corespunde foii de calcul pe care o utilizați.

    De exemplu, dacă utilizați Foi de calcul Google, selectați Foi de calcul Google - Obțineți rânduri.

  3. Selectați Rândurile Listă prezente într-un tabel acțiunea.

    Captură de ecran cu listarea rândurilor dintr-un tabel în Copilot.

  4. Selectați Locație, Biblioteca de documente, Fișier și Tabelul care conține datele dvs.

    Captură de ecran a parametrilor pentru rândurile de listă prezente într-un tabel în Copilot.

Verificați coloana de stare a fiecărui rând

  1. Adăugați un pas nou selectând semnul plus (+) >Adăugați o acțiune.

  2. Pe ecranul Adăugați o acțiune , căutați aplicați pentru fiecare, apoi selectați Aplicați pentru fiecare sub Control.

  3. Adăugați simbolul valoare la caseta Selectați o ieșire din pașii anteriori prin selectarea pictogramei tijei.

    Captură de ecran care selectează valoarea de la pasul anterior.

    Acest simbol valoare reprezintă tabelul foii de calcul și toate datele acestuia.

  4. Pe Aplicați la fiecare card, adăugați un nou pas selectând semnul plus (+) >Adăugați o acțiune.

  5. Căutați condiție, apoi selectați controlul Condiție .

  6. Adăugați următoarea OR expresie. Această expresie SAU verifică valoarea fiecărui rând din tabel.

    Dacă valoarea coloanei Stare este terminatăSauinutil, expresia SAU evaluează la adevărat.

    Iată un exemplu de card Condiție .

    Captură de ecran cu selectarea valorii de la pasul anterior.

Ștergeți rândurile care se potrivesc din foaia de calcul

  1. Selectați Adăugați o acțiune pe Dacă da ramura afecțiunii.

    Ramura Dacă da se rulează dacă condiția Sau se evaluează ca adevărat.

  2. Căutați Ștergeți un rând, selectați Excel Online (Afaceri), apoi selectați Ștergeți un rând.

    Captură de ecran cu ștergerea unui rând.

  3. Pe cardul Ștergeți un rând , setați Locație, Biblioteca de documente, Fișier, și Tabel casete exact așa cum ați setat aceste casete pe Rândurile de listă prezente într-un card de tabel mai devreme în acest tutorial.

  4. În lista drop-down Coloana cheie , selectați _PowerAppsId_.

  5. În câmpul Valoare cheie , inserați _PowerAppsId_ valoarea dinamică.

  6. Salvați fluxul dvs.

Rulați fluxul cu expresia „sau”.

Fluxul rulează după ce îl salvați. Dacă ați creat foaia de calcul prezentată mai devreme în acest tutorial, iată cum arată după finalizarea executării.

Captură de ecran a foii de calcul când se finalizează expresia „SAU”.

Observați că toate datele din rândurile care au fost finalizate sau inutil din coloana Stare au fost șterse.

Folosiți expresia „și”.

Să presupunem că aveți un tabel de foaie de calcul cu două coloane. Numele coloanelor sunt Stare și Atribuit. Să presupunem, de asemenea, că doriți să ștergeți toate rândurile dacă valoarea coloanei Stare este blocata iar valoarea coloanei Assigned este John> Minune. Pentru a îndeplini această sarcină, urmați toți pașii de mai devreme din acest tutorial, dar când editați cardul Condiție în modul avansat, utilizați expresia și afișată aici.

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

Iată un exemplu de card Condiție .

Captură de ecran a expresiei „și”.

Rulați fluxul cu expresia „și”.

Dacă ați urmat pașii din acest tutorial, foaia de calcul ar trebui să arate similar cu următoarea captură de ecran.

Captură de ecran a foii de calcul înainte de rularea fluxului.

După rularea fluxului, foaia de calcul ar trebui să arate similar cu următoarea captură de ecran.

Captură de ecran a foii de calcul după rularea fluxului.

Folosiți expresia „goală”.

Observați că acum există mai multe rânduri goale în foaia de calcul. Pentru a le elimina, utilizați expresia goală pentru a identifica toate rândurile care nu au text în coloanele Atribuite și Stare .

Pentru a îndeplini această sarcină, urmați toți pașii enumerați în secțiunea Utilizați expresia „și” de mai devreme în acest tutorial. Când editați cardul Condiție în modul avansat, utilizați următoarea expresie vide.

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

Cardul dvs. de Condiție ar trebui să arate similar cu următoarea captură de ecran.

Captură de ecran a expresiei „vide”.

După rularea fluxului, foaia de calcul ar trebui să arate similar cu următoarea captură de ecran.

SCaptură de ecran a foii de calcul după rulările „gol”.

Observați că sunt eliminate linii suplimentare din tabel.

Folosiți expresia „mai mare”.

Imaginează-ți că ai cumpărat bilete de baseball pentru colegii tăi și că folosești o foaie de calcul pentru a te asigura că ești rambursat de fiecare persoană. Puteți crea rapid un flux în cloud care trimite un e-mail zilnic fiecărei persoane care nu a plătit întreaga sumă.

Utilizați expresia mai mare pentru a identifica angajații care nu au plătit întreaga sumă. Apoi, puteți trimite automat un e-mail de memento celor care nu au plătit integral.

Iată o vedere a foii de calcul.

Captură de ecran a foii de calcul a celor care nu au plătit integral.

Iată implementarea expresiei mai mari care identifică toate persoanele care au plătit mai puțin decât suma datorată de la acestea.

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

Folosiți expresia „mai puțin”.

Imaginează-ți că ai cumpărat bilete de baseball pentru colegii tăi și că folosești o foaie de calcul pentru a te asigura că ești rambursat de fiecare persoană până la data la care toată lumea a fost de acord. Puteți crea un flux în cloud care trimite un e-mail de memento fiecărei persoane care nu a plătit întreaga sumă dacă data curentă este cu mai puțin de o zi înainte de data scadentă.

Utilizați expresia și cu expresia less deoarece sunt două condiții în curs de validare.

Condiție de validare Expresie de folosit Exemplu
A fost plătită întreaga sumă datorată? mai mare @greater(item()?['Due'], item()?['Paid'])
Data scadenței este la mai puțin de o zi? mai mic @less(item()?['DueDate'], addDays(utcNow(),1))

Combinați expresiile „mai mare” și „mai puțin” într-o expresie „și”.

Utilizați expresia mai mare pentru a identifica angajații care au plătit mai puțin decât suma totală datorată și utilizați expresia mai puțin pentru a determina dacă data scadentă a plății este la mai puțin de o zi de la data curentă. Puteți utiliza apoi acțiunea Trimiteți un e-mail pentru a trimite e-mailuri de memento acelor angajați care nu au plătit integral, iar data scadentă este la mai puțin de o zi.

Iată o vedere a tabelului foii de calcul.

Captură de ecran a tabelului foii de calcul.

Iată implementarea expresiei și care identifică toți angajații care au plătit mai puțin decât suma datorată de la aceștia, iar data scadenței este la mai puțin de o zi distanță de la data curentă.

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

Utilizați funcții în expresii

Unele expresii își obțin valorile din acțiunile de rulare care ar putea să nu existe încă atunci când începe să ruleze un flux cloud. Pentru a face referire sau a lucra cu aceste valori în expresii, puteți utiliza funcțiile oferite de Workflow Definition Language. Mai multe informații. Pentru a afla mai multe, accesați Ghidul de referință pentru funcțiile de expresie a fluxului de lucru din Azure Logic Apps și Power Automate.

Training: Introducere în expresii în Power Automate (modul)