Useiden arvojen tarkistaminen ehtojen lausekkeilla
Tämän oppaan avulla opit käyttämään lausekkeita ja ehtoja useiden arvojen vertaamiseen mukautetussa tilassa.
Kun luot pilvityönkulun, Ehto-kortin perustilassa voit verrata nopeasti yksittäistä arvoa toiseen arvoon. Joskus sinun täytyy kuitenkin varmasti verrata useita arvoja. Näin voi käydä, jos haluat esimerkiksi tarkistaa laskentataulukon tai tietokantataulukon muutamien sarakkeiden arvon.
Voit käyttää ehdoissasi mitä tahansa seuraavien loogisten lausekkeiden yhdistelmiä.
| Expression | Kuvaus | Esimerkki: |
|---|---|---|
| and | Tämä vertaa kahta argumenttia ja antaa tulokseksi true, jos molemmat arvot ovat tosia. Huomautus: molempien argumenttien täytyy olla totuusarvoja. |
Tämä lauseke antaa tulokseksi false: and(greater(1,10),equals(0,0)) |
| or | Tämä vertaa kahta argumenttia ja antaa arvoksi tosi, jos kumpi tahansa arvo on tosi. Huomautus: molempien argumenttien täytyy olla totuusarvoja. |
Tämä lauseke antaa tulokseksi true: or(greater(1,10),equals(0,0)) |
| equals | Tämä antaa tulokseksi true, jos kaksi arvoa ovat yhtä suuret. | Jos esimerkiksi parameter1 on someValue, tämä lauseke antaa tulokseksi true: equals(parameters('parameter1'), 'someValue') |
| less | Tämä vertaa kahta argumenttia ja antaa tulokseksi true, jos ensimmäinen argumentti on pienempi kuin toinen argumentti. Huomautus: tuettuja tyyppejä ovat kokonaisluku, liukuluku ja merkkijono. |
Tämä lauseke antaa tulokseksi true: less(10,100) |
| lessOrEquals | Tämä vertaa kahta argumenttia ja antaa tulokseksi true, jos ensimmäinen argumentti on pienempi tai yhtä suuri kuin toinen argumentti. Huomautus: tuettuja tyyppejä ovat kokonaisluku, liukuluku ja merkkijono. |
Tämä lauseke antaa tulokseksi true: lessOrEquals(10,10) |
| greater | Tämä vertaa kahta argumenttia ja antaa tulokseksi true, jos ensimmäinen argumentti on suurempi kuin toinen argumentti. Huomautus: tuettuja tyyppejä ovat kokonaisluku, liukuluku ja merkkijono. |
Tämä lauseke antaa tulokseksi false: greater(10,10) |
| greaterOrEquals | Tämä vertaa kahta argumenttia ja antaa tulokseksi true, jos ensimmäinen argumentti on suurempi tai yhtä suuri kuin toinen argumentti. Huomautus: tuettuja tyyppejä ovat kokonaisluku, liukuluku ja merkkijono. |
Tämä lauseke antaa tulokseksi false: greaterOrEquals(10,100) |
| empty | Tämä antaa tulokseksi true, jos objekti, matriisi tai merkkijono on tyhjä. | Tämä lauseke antaa tulokseksi true: empty('') |
| not | Palauttaa totuusarvon vastakohdan. | Tämä lauseke antaa tulokseksi true: not(contains('200 Success','Fail')) |
| if | Tämä antaa tulokseksi tietyn arvon, jos lausekkeen tulos on tosi tai epätosi. | Tämä lauseke antaa tulokseksi yes: if(equals(1, 1), 'yes', 'no') |
edellytykset
Tässä on mitä tarvitset tämän läpikäynnin suorittamiseen.
- Power Automaten käyttöoikeus.
- Oma laskentataulukko ja taulukot kuvataan myöhemmin tässä opastuksessa. Muista tallentaa laskentataulukko Dropboxin tai Microsoft OneDrive kaltaiseen sijaintiin, josta Power Automate voi käyttää sitä.
- Tarvitset Microsoft 365 Outlookin (vaikka käytämmekin tässä Outlookia, voit kuitenkin käyttää työnkuluissasi mitä tahansa tuettua sähköpostipalvelua).
or-lausekkeen käyttäminen
Joskus työnkulun täytyy suorittaa toiminto, jos kohteen arvo on valueA tai valueB. Saatat esimerkiksi seurata tehtävien tilaa laskentataulukon taulukossa. Oletetaan, että taulukossa on sarake nimeltä Status ja että Status-sarakkeen mahdollisia arvoja ovat seuraavat:
- completed
- blocked
- unnecessary
- not started
Tässä on esimerkki siitä, miltä tällainen laskentataulukko voi näyttää:

Oletetaan, että haluat poistaa edellä mainitusta laskentataulukosta Power Automaten avulla kaikki rivit, joiden Tila-sarakkeen arvo on valmis tai tarpeeton.
Luodaan nyt tällainen työnkulku.
Tyhjästä työnkulusta aloittaminen
Kirjaudu Power Automateen.

Valitse Omat työnkulut.

Valitse Uusi työnkulku > Ajoitettu pilvityönkulku.

Käynnistimen lisääminen työnkulkuun
Anna työnkululle nimi.
Määritä aikataulu siten, että työnkulku suoritetaan kerran päivässä.
Siirry seuraavaan vaiheeseen valitsemalla Luo-painike.

Valitse laskentataulukko ja hae kaikki rivit
Valitse Uusi vaihe.

Tee haku hakusanalla rivit ja valitse sitten Excel Online (Business).
Huomautus: Valitse Hae rivi -toiminto, joka vastaa käyttämääsi laskentataulukkoa. Jos käytät esimerkiksi Google Sheetsiä, valitse Google Sheets – Hae rivit.
Valitse Luetteloi taulukossa olevat rivit -toiminto.

Valitse tiedot sisältävä sijainti, tiedostokirjasto, tiedosto ja taulukko.

Kunkin rivin tilan tarkistaminen
Valitse Uusi vaihe.
Hae Käytä kuhunkin ja valitse sitten Käytä kuhunkin -ohjausobjekti.

Lisää Arvo-tunnus Valitse tulosta edellisistä vaiheista -ruutuun.
Tämä arvo-tunnus edustaa laskentataulukkoa ja kaikkia sen tietoja.

Valitse Kohdista kuhunkin -kortiin lisää toiminto.

Hae ehtoa ja valitse sitten Ehto-ohjausobjekti.
Lisää seuraava or-lauseke. Tämä tai-lauseke tarkistaa kunkin taulukon rivin arvon. Jos Status-sarakkeen arvo on completed tai unnecessary, or-lauseke antaa tulokseksi true.
Ehto-korttisi muistuttaa tätä kuvaa:

Vastaavien rivien poistaminen laskentataulukosta
Valitse Lisää toiminto ehdon Jos kyllä -haarassa.
If yes -haara suoritetaan, jos or-ehdon arvoksi tulee tosi.
Hae poista rivi, valitse Excel Online (Business) ja valitse sitten Poista rivi.

Määritä Poista rivi -kortissa Sijainti-, Asiakirjakirjasto-, Tiedosto- ja Taulukko-ruudut täsmälleen samalla tavalla kuin Luetteloi taulukossa olevat rivit -kortissa aiemmin tässä esittelyssä oleville luetteloriville.
Valitse Avainsarake-luettelosta PowerAppsId ja lisää dynaaminen PowerAppsId-arvo Avainarvo-ruutuun.

Muista tallentaa työnkulkusi!
or-lausekkeen sisältävän työnkulun suorittaminen
Työnkulku suoritetaan, kun tallennat sen. Jos loit aiemmin tässä oppaassa näytetyn laskentataulukon, se näyttää tältä suorittamisen jälkeen:

Kuten näet, kaikki tiedot on poistettu niiltä riveiltä, joiden Tila-sarakkeen arvo oli completed tai unnecessary.
and-lausekkeen käyttäminen
Oletetaan, että sinulla on kaksi saraketta sisältävä laskentataulukon taulukko. Sarakkeiden nimet ovat Status ja Assigned. Oletetaan myös, että haluat poistaa kaikki rivit, joiden Status-sarakkeen arvo on blocked ja joiden Assigned-sarakkeen arvo on John Wonder. Voit tehdä tämän toimimalla kaikkien tässä oppaassa annettujen ohjeiden mukaisesti siten, että muokatessasi Ehto-korttia mukautetussa tilassa käytätkin tässä näytettyä and-lauseketta:
@and(equals(item()?['Status'], 'blocked'), equals(item()?['Assigned'], 'John Wonder'))
Ehto-korttisi muistuttaa tätä kuvaa:

and-lausekkeen sisältävän työnkulun suorittaminen
Jos toimit oikein ohjeiden mukaisesti, laskentataulukkosi pitäisi näyttää samalta kuin tässä kuvassa:

Työnkulun suorittamisen jälkeen laskentataulukkosi pitäisi näyttää samalta kuin tässä kuvassa:

empty-lausekkeen käyttäminen
Huomasit varmaan, että nyt laskentataulukossa on useita tyhjiä rivejä. Voit poistaa ne empty-lausekkeella, joka tunnistaa kaikki rivit, joiden Assigned- ja Status-sarakkeissa ei ole mitään tekstiä.
Voit tehdä tämän toimimalla tämän oppaan and-lausekkeen käyttäminen -kohdan kaikkien annettujen ohjeiden mukaisesti siten, että muokatessasi Ehto-korttia mukautetussa tilassa käytätkin tässä näytettyä empty-lauseketta:
@and(empty(item()?['Status']), empty(item()?['Assigned']))
Ehto-korttisi muistuttaa tätä kuvaa:

Työnkulun suorittamisen jälkeen laskentataulukon pitäisi näyttää samalta kuin tässä kuvassa:

Näet, että tyhjät rivit on poistettu taulukosta.
greater-lausekkeen käyttäminen
Kuvittele, että olet ostanut liput futismatsiin työkavereillesi ja että seuraat heidän maksujaan sinulle laskentataulukon avulla. Voit luoda nopeasti pilvityönkulun, joka lähettää päivittäin sähköpostin kaikille, jotka eivät ole vielä maksaneet lippuaan kokonaan.
greater-lausekkeella voit tunnistaa työkaverit, jotka eivät ole vielä maksaneet koko summaa. Tämän jälkeen voit lähettää heille ystävällisen muistutussähköpostin.
Tässä on kuva laskentataulukosta:

Tässä on greater-lauseke, joka tunnistaa kaikki henkilöt, jotka eivät ole vielä maksaneet omaa osuuttaan kokonaan.
@greater(item()?['Due'], item()?['Paid'])
less-lausekkeen käyttäminen
Kuvittele, että olet ostanut liput futismatsiin työkavereillesi ja että seuraat laskentataulukon avulla sitä, että kaikki maksavat oman osuutensa sovittuun päivään mennessä. Voit luoda pilvityönkulun, joka lähettää muistutussähköpostin kaikille, jotka eivät ole maksaneet täyttää summaa vielä päivää ennen määräpäivää.
Sinun täytyy käyttää and- ja less-lausekkeita, koska tarkistettavia ehtoja on kaksi:
| Tarkistettava ehto | Käytettävä lauseke | Esimerkki: |
|---|---|---|
| Onko koko summa maksettu? | greater | @greater(item()?['Due'], item()?['Paid']) |
| Onko määräpäivään aikaa vähemmän kuin yksi päivä? | less | @less(item()?['DueDate'], addDays(utcNow(),1)) |
greater- ja less-lausekkeiden yhdistäminen and-lausekkeessa
greater-lausekkeella tunnistat työkaverit, jotka eivät ole maksaneet täyttä summaa, ja less-lausekkeella voit tarkistaa, onko maksun määräpäivään aikaa vähemmän kuin yksi päivä nykyisestä päivästä. Lähetä sähköposti -toiminnolla voit sitten lähettää ystävällisen muistutussähköpostin niille, jotka eivät ole maksaneet koko summaa siihen mennessä, kun määräpäivään on aikaa alle päivä.
Tässä on kuva laskentataulukosta:

Tässä on and-lauseke, joka tunnistaa kaikki työkaverit, jotka eivät ole maksaneet koko summaa siihen mennessä, kun määräpäivään on aikaa alle päivä nykyisestä päivästä.
@and(greater(item()?['Due'], item()?['Paid']), less(item()?['dueDate'], addDays(utcNow(),1)))
Käytä funktioita lausekkeissa
Jotkin lausekkeet saavat arvot suorituksenaikaisista toiminnoista, joita ei vielä ole välttämättä olemassa, kun pilvityönkulku käynnistyy. Voit viitata tai käsitellä näitä arvoja lausekkeissa, voit käyttää työnkulun määrityskielen tarjoamia funktioita. Lisätietoja: Funktiot viittaavat Power Automaten työnkulun määrityskieleen