Korišćenje izraza u uslovima za proveru više vrednosti

U ovom uputstvu naučićete da koristite izraze i uslove za poređenje više vrednosti u naprednom režimu.

Kada kreirate tok oblaka, karticu "Uslov" možete da koristite u osnovnom režimu da biste brzo uporedili jednu vrednost sa drugom vrednošću. Međutim, ponekad je potrebno da uporedite više vrednosti. Na primer, možda ćete želeti da proverite vrednost nekoliko kolona u unakrsnoj tabeli ili tabeli baze podataka.

U uslovima možete da koristite bilo koju kombinaciju sledećih logičkih izraza.

Expression Opis Primer
I Uzima dva argumenta i daje tačno ako su obe vrednosti tačne.
Napomena: Oba argumenta moraju biti Booleans.
Ovaj izraz daje netačno:
and(greater(1,10),equals(0,0))
Ili Uzima dva argumenta i daje tačno ako je bilo koji od argumenata istinit.
Napomena: Oba argumenta moraju biti Booleans.
Ovaj izraz daje tačno:
or(greater(1,10),equals(0,0))
jednako Daje vrednost "tačno" ako su dve vrednosti jednake. Na primer, ako je parametar1 nekiValue, ovaj izraz daje vrednost true:
equals(parameters('parameter1'), 'someValue')
Manje Uzima dva argumenta i daje tačno ako je prvi argument manji od drugog argumenta.
Napomena: Podržani tipovi su ceo broj, plutajući i niski.
Ovaj izraz daje tačno:
less(10,100)
lessOrEquals Uzima dva argumenta i daje tačno ako je prvi argument manji ili jednak drugom argumentu.
Napomena: Podržani tipovi su ceo broj, plutajući i niski.
Ovaj izraz daje tačno:
lessOrEquals(10,10)
Veći Uzima dva argumenta i daje tačno ako je prvi argument veći od drugog argumenta.
Napomena: Podržani tipovi su ceo broj, plutajući i niski.
Ovaj izraz daje netačno:
greater(10,10)
većeOrEquals Uzima dva argumenta i daje tačno ako je prvi argument veći ili jednak drugom argumentu.
Napomena: Podržani tipovi su ceo broj, plutajući i niski.
Ovaj izraz daje netačno:
greaterOrEquals(10,100)
prazan Daje vrednost "Tačno" ako je objekat, niz ili niska prazna. Ovaj izraz daje tačno:
empty('')
not Daje suprotno od logička vrednost. Ovaj izraz daje tačno:
not(contains('200 Success','Fail'))
if Daje određenu vrednost ako izraz rezultira tačnom ili netačnom. Ovaj izraz daje "da":
if(equals(1, 1), 'yes', 'no')

Preduslovi

Evo šta će vam biti potrebno da dovršite ovo uputstvo.

  • Power AutomatePristup.
  • Sopstvena unakrsna tabela sa tabelama opisanim kasnije u ovom uputstvu. Uverite se da ste sačuvali unakrsnu tabelu na lokaciji kao što je Dropbox ili Microsoft da OneDrive biste mogli da Power Automate joj pristupite.
  • Microsoft 365 Outlook (Dok ovde koristimo Outlook, u tokovima možete da koristite bilo koju podržanu uslugu e-pošte.)

Korišćenje izraza "ili"

Ponekad je potrebno da tok posla preduzme radnju ako je vrednost stavke valueA ili valueB. Na primer, možda pratite status zadataka u tabeli unakrsnih tabela. Pretpostavimo da tabela ima kolonu pod imenom Status , a moguće vrednosti u ovoj koloni su:

  • Dovršeno
  • Blokiran
  • Nepotrebno
  • nije započeto

Evo primera kako bi unakrsna tabela mogla da izgleda:

Snimak ekrana probne unakrsne tabele sa kolonom

S obzirom na prethodnu unakrsnu tabelu, želite da Power Automate uklonite sve redove kolonom "Status " koja je podešena na dovršenu ili nepotrebnu .

Hajde da stvorimo tok.

Počnite sa praznim protokom

  1. Prijaviti se Power Automate.

  2. U levom oknu izaberite stavku Moji tokovi.

  3. Izaberite novi tok Planirani>tok oblaka.

Dodavanje okidača u tok

  1. Daj svom toku ime.

  2. Podesite raspored za pokretanje toka jednom dnevno.

  3. Kliknite na dugme Kreiraj da biste preći na sledeći korak.

Belešku

Power Automate koristi ili klasičan dizajner tokova oblaka ili dizajner tokova oblaka sa Kopilotom. Da biste identifikovali dizajnera kojeg koristite, idite u odeljak Napomena uodeljku Razumevanje tokova oblaka dizajnera sa mogućnostima kopilota.

Izaberite unakrsnu tabelu i nabavite sve redove

  1. Izaberite Novi korak.

  2. Potražite redove, a zatim izaberite lokaciju Excel Online (posao).

    Izaberite radnju " Nabavi red" koja odgovara unakrsnoj tabeli koju koristite. Na primer, ako koristite Google Sheets, izaberite Google Sheets - Get rows.

  3. Izaberite redove liste koji su prisutni u radnji tabele .

    Snimak ekrana sa listiranjem redova u tabeli.

  4. Izaberite lokaciju , biblioteku dokumenata, datoteku i tabelu koje sadrže vaše podatke.

    Snimak ekrana polja

Provera statusne kolone svakog reda

  1. Izaberite Novi korak.

  2. Potražite primenu na svaku od njih, a zatim izaberite opciju Primeni na svaku - kontrolu.

  3. Dodajte simbol vrednosti u polje Izaberite izlaz iz prethodnih koraka .

    Ovaj simbol vrednosti predstavlja tabelu unakrsne tabele i sve njene podatke.

  4. Izaberite Dodaj radnju na dugme Primeni na svaku karticu .

  5. Potražite uslov, a zatim izaberite kontrolu uslova.

  6. Dodajte sledeći ili izraz . Ovaj ili izraz proverava vrednost svakog reda u tabeli. Ako je vrednost kolone "Status " dovršenailinepotrebna, izraz "Ili" ima vrednost "tačno".

    Evo primera kartice uslova .

    Snimak ekrana izraza

Brisanje redova koji se podudaraju iz unakrsne tabele

  1. Izaberite Dodaj radnju u grani uslova " Ako da".

    Grana "Ako da " se pokreće ako uslov OR procenjuje tačno .

  2. Potražite stavku Izbriši red, izaberitelokaciju Excel Online (posao) , a zatim izaberitestavku Izbriši red .

  3. Na kartici "Brisanje reda " postavite polja "Lokacija", " Biblioteka dokumenata", " Datoteka" i "Tabela " tačno onako kako ste postavili ova polja u redovima liste koji su bili prisutni na kartici tabele ranije u ovom uputstvu.

  4. Na padajućoj listi ključnih kolona izaberite _PowerAppsId_.

  5. U polje Vrednost ključa umetnite_ PowerAppsId_dinamičku vrednost.

  6. Sačuvajte tok.

Pokretanje toka sa izrazom "ili"

Tok teče nakon što ga sačuvate. Ako ste kreirali unakrsnu tabelu prikazanu ranije u ovom uputstvu, evo kako izgleda kada se pokretanje dovrši.

Snimak ekrana unakrsne tabele kada se izraz

Obratite pažnju na sve podatke iz redova koji su dovršeni ili nepotrebni u koloni "Status ".

Korišćenje izraza "i"

Pretpostavimo da imate tabelu unakrsnih tabela sa dve kolone. Imena kolona su Status i Dodeljeno. Pretpostavimo takođe da želite da izbrišete sve redove ako je vrednost kolone "Status " blokirana , a vrednost dodeljene kolone "Džon Vonder ". Da biste obavili ovaj zadatak, sledite sve korake ranije u ovom uputstvu, ali kada uređujete karticu Uslov u naprednom režimu, koristite izraz koji je ovde prikazan.

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

Evo primera kartice uslova .

Snimak ekrana izraza

Pokretanje toka sa izrazom "i"

Ako ste sledili korake u ovom uputstvu, unakrsna tabela bi trebalo da izgleda slično sledećem snimku ekrana.

Snimak ekrana unakrsne tabele pre nego što se tok pokreće.

Nakon protočne tabele, unakrsna tabela bi trebalo da izgleda slično sledećem snimku ekrana.

Snimak ekrana unakrsne tabele nakon protoka.

Korišćenje izraza "prazno"

Obratite pažnju na to da u unakrsnoj tabeli sada postoji nekoliko praznih redova. Da biste ih uklonili, koristite prazan izraz da biste identifikovali sve redove koji nemaju tekst u kolonama " Dodeljeno " i " Status ".

Da biste obavili ovaj zadatak, sledite sve korake navedene u odeljku "Korišćenje izraza " ranije u ovom uputstvu. Kada uređujete karticu Uslov u naprednom režimu, koristite sledeći prazan izraz.

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

Kartica "Uslov " bi trebalo da izgleda slično sledećem snimku ekrana.

Snimak ekrana

Nakon što se tok pokreće, unakrsna tabela bi trebalo da izgleda slično sledećem snimku ekrana.

SScreenshot unakrsne tabele nakon

Obratite pažnju na to da su dodatni redovi uklonjeni iz tabele.

Korišćenje izraza "veće"

Zamislite da ste kupili karte za bejzbol za svoje saradnike i da koristite unakrsnu tabelu da osigurate da vam svaka osoba nadoknadi. Možete brzo da kreirate tok oblaka koji šalje dnevnu e-poštu svakoj osobi koja nije platila ceo iznos.

Koristite veći izraz da biste identifikovali zaposlene koji nisu uplatili ceo iznos. Zatim možete automatski da pošaljete e-poruku podsetnika onima koji nisu platili u celosti.

Evo prikaza unakrsne tabele.

Snimak ekrana unakrsne tabele onih koji nisu platili u celosti.

Evo implementacije većeg izraza koji identifikuje sve osobe koje su platile manje od iznosa koji dospeva od njih.

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

Korišćenje izraza "manje"

Zamislite da ste kupili karte za bejzbol za svoje saradnike, i da koristite unakrsnu tabelu da osigurate da vam svaka osoba nadoknadi datum do kog su se svi složili. Možete da kreirate tok oblaka koji šalje e-poruku podsetnika svakoj osobi koja nije platila ceo iznos ako je trenutni datum manji od jednog dana pre datuma dospeća.

Koristite izraz i izraz sa manjim izrazom pošto postoje dva uslova za proveru valjanosti.

Uslov za proveru valjanosti Izraz za korišćenje Primer
Da li je isplaćen ceo iznos? veće @greater(item()?['Due'], item()?['Paid'])
Da li je krajnji rok za manje od jednog dana? manje @less(item()?['DueDate'], addDays(utcNow(),1))

Kombinovanje izraza "veće" i "manje" u izrazu "i"

Koristite veći izraz da biste identifikovali zaposlene koji su platili manje od dospelog iznosa i koristite izraz manje da biste utvrdili da li je datum dospeća uplate manji od jednog dana od tekućeg datuma. Zatim možete da koristite radnju "Pošalji e-poruku " da biste poslali e-poruke sa podsetnikom onim zaposlenima koji nisu platili u celosti, a krajnji rok je manji od jednog dana.

Evo prikaza tabele unakrsnih tabela.

Snimak ekrana tabele unakrsnih tabela.

Evo implementacije i izraza koji identifikuje sve zaposlene koji su platili manje od iznosa koji dospeva od njih i datum dospeća je manji od jednog dana od tekućeg datuma.

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

Korišćenje funkcija u izrazima

Neki izrazi dobijaju svoje vrednosti iz radnji izvršavanja koje možda još uvek ne postoje kada tok oblaka počne da se pokreće. Da biste referencisali ili radili sa ovim vrednostima u izrazima, možete da koristite funkcije koje definicija toka posla obezbeđuje jezik. Više informacija. Da biste saznali više, idite na referentni vodič za funkcije izraza toka posla u aplikacijama Azure logike i Power Automate.