Kontrola viacerých hodnôt pomocou výrazov v podmienkach
V tomto návode sa naučíte používať výrazy a podmienky na porovnanie viacerých hodnôt v Rozšírenom režime.
Keď vytvoríte cloudový tok, môžete použiť kartu Stav v základnom režime na rýchle porovnanie jednej hodnoty s inou hodnotou. V niektorých prípadoch však potrebujete porovnať viacero hodnôt. Môžete napríklad chcieť skontrolovať hodnotu niekoľkých stĺpcov v tabuľkovom hárku alebo databázovej tabuľke.
V podmienkach môžete použiť ľubovoľnú kombináciu týchto logických výrazov.
Expression | Popis | Príklad |
---|---|---|
a | Má dva argumenty a vráti hodnotu true, ak pre obe hodnoty platí hodnota true. Poznámka:: Obidva argumenty musia byť booleovské hodnoty. |
Tento výraz vráti hodnotu false:and(greater(1,10),equals(0,0)) |
alebo | Má dva argumenty a vráti hodnotu true, ak pre jednu z hodnôt platí hodnota true. Poznámka:: Obidva argumenty musia byť booleovské hodnoty. |
Tento výraz vráti hodnotu true:or(greater(1,10),equals(0,0)) |
equals | Vráti hodnotu true, ak sa dve hodnoty rovnajú. | Ak má napríklad parameter1 hodnotu nejaká_hodnota, tento výraz vráti hodnotu true:equals(parameters('parameter1'), 'someValue') |
menej | Má dva argumenty a vráti hodnotu true, ak je prvý argument menší ako druhý argument. Poznámka:: Podporované typy sú celé číslo, číslo s pohyblivou desatinnou čiarkou a reťazec. |
Tento výraz vráti hodnotu true:less(10,100) |
lessOrEquals | Má dva argumenty a vráti hodnotu true, ak je prvý argument menší alebo rovnaký ako druhý argument. Poznámka:: Podporované typy sú celé číslo, číslo s pohyblivou desatinnou čiarkou a reťazec. |
Tento výraz vráti hodnotu true:lessOrEquals(10,10) |
väčší | Má dva argumenty a vráti hodnotu true, ak je prvý argument väčší ako druhý argument. Poznámka:: Podporované typy sú celé číslo, číslo s pohyblivou desatinnou čiarkou a reťazec. |
Tento výraz vráti hodnotu false:greater(10,10) |
greaterOrEquals | Má dva argumenty a vráti hodnotu true, ak je prvý argument väčší alebo rovnaký ako druhý argument. Poznámka:: Podporované typy sú celé číslo, číslo s pohyblivou desatinnou čiarkou a reťazec. |
Tento výraz vráti hodnotu false:greaterOrEquals(10,100) |
prázdny | Vráti hodnotu true, ak je objekt, pole alebo reťazec prázdny. | Tento výraz vráti hodnotu true:empty('') |
not | Vráti opak booleovskej hodnoty. | Tento výraz vráti hodnotu true:not(contains('200 Success','Fail')) |
if | Vráti určitú hodnotu, ak je výsledkom výrazu hodnota true alebo false. | Tento výraz vráti hodnotu „áno“:if(equals(1, 1), 'yes', 'no') |
Požiadavky
V tejto časti je uvedené, čo budete potrebovať na dokončenie tohto návodu.
- Prístup k Power Automate.
- Váš vlastný tabuľkový hárok s tabuľkami opísanými ďalej v tomto návode. Uistite sa, že tabuľkový hárok uložíte do umiestnenia, ako je napríklad Dropbox alebo Microsoft OneDrive, aby k nemu mala prístup služba Power Automate.
- Microsoft 365 Outlook (Aj keď tu používame Outlook, vo svojich tokoch môžete použiť akúkoľvek podporovanú e-mailovú službu.)
Použite výraz „alebo“.
Ak je hodnota položky hodnota A alebo hodnotaB, niekedy musí váš pracovný postup vykonať akciu. Môžete napríklad sledovať stav úloh v tabuľke v tabuľkovom hárku. Predpokladajme, že tabuľka má stĺpec s názvom Stav a možné hodnoty v tomto stĺpci sú:
- dokončené
- zablokované
- zbytočné
- nezačaté
V tomto príklade vidíte, ako by tabuľkový hárok mohol vyzerať:
Vzhľadom na predchádzajúcu tabuľku chcete použiť Power Automate na odstránenie všetkých riadkov so stĺpcom Stav , ktorý je nastavený na dokončené alebo /a37>nepotrebné.38>
Vytvorme takýto postup.
Začnite s prázdnym postupom
Prihláste sa do Power Automate.
Na ľavej table vyberte Moje toky.
Vyberte Nový tok>Plánovaný tok oblakov.
Pridajte spúšťač do postupu
Zadajte názov postupu.
Nastavte plán, aby sa postup spúšťal raz za deň.
Ak chcete prejsť na ďalší krok, vyberte tlačidlo Vytvoriť .
Poznámka
- Power Automate používa buď klasického návrhára cloudových tokov, alebo nového moderného návrhára s funkciami Copilot. Ak chcete zistiť, ktorého návrhára používate, prejdite do časti Poznámka v časti Preskúmajte návrhára cloudových tokov.
- Pri prepínaní medzi klasickým a novým návrhárom sa zobrazí výzva na uloženie postupu. Nemôžete ukladať a prepínať, kým sa nevyriešia všetky chyby .
Vyberte tabuľkový hárok a načítajte všetky riadky
Požiadajte Copilota, aby pre vás vytvoril tok. Zadajte nasledujúcu výzvu v programe Copilot:
Každý týždeň uveďte riadky v excelovej tabuľke a ak sa stĺpec Stav rovná Úspešné alebo e-mail správcu nároku je jake@contoso.com, odstráňte riadok Excelu
Vyberte Odoslať
.
Prípadne môžete podľa nasledujúcich krokov vytvoriť rovnaký postup manuálne:
Pridajte nový krok výberom znamienka plus (+) >Pridať akciu.
Vyhľadajte riadky, vyberte Excel Online (Business) a potom vyberte akciu Získať riadok , ktorá zodpovedá tabuľke, ktorú používate.
Ak napríklad používate Tabuľky Google, vyberte Tabuľky Google – Získať riadky.
Vyberte Zoznam riadkov prítomných v akcii tabuľky .
Vyberte Umiestnenie, Knižnicu dokumentov, Súbor a Tabuľku , ktoré obsahujú vaše údaje.
Skontrolujte stav stĺpca v každom riadku
Pridajte nový krok výberom znamienka plus (+) >Pridať akciu.
Na obrazovke Pridať akciu vyhľadajte použiť na každú a potom vyberte možnosť Použiť na každú v časti Kontrola
Pridajte hodnotu do poľa Vyberte výstup z predchádzajúcich krokov výberom ikony podväzovacej tyče.
Tento hodnota token predstavuje tabuľku tabuľky a všetky jej údaje.
Na karte Použiť na každú kartu pridajte nový krok výberom znamienka plus (+) >Pridať akciu.
Vyhľadajte stav a potom vyberte ovládací prvok Podmienka .
Pridajte nasledujúci výraz ALEBO . Tento výraz ALEBO kontroluje hodnotu každého riadku v tabuľke.
Ak je hodnota v stĺpci Stav vyplnená vyplnenáAlebonepotrebná, vyhodnotí sa OR
pravdu . Tu je príklad karty Stav .
Odstráňte zodpovedajúce riadky z tabuľkového hárka
Vyberte Pridať akciu na vetve podmienky Ak áno .
Vetva Ak áno sa spustí, ak sa podmienka Alebo vyhodnotí ako pravda.
Vyhľadajte Odstrániť riadok, vyberte Excel Online (Business) a potom vyberte Odstrániť riadok.
Na karte Odstrániť riadok nastavte Umiestnenie, Knižnica dokumentov, Súbor
Tabuľka políčka presne tak, ako ste tieto polia nastavili na riadky zoznamu na karte tabuľky vyššie v tomto návode. V rozbaľovacom zozname Kľúčový stĺpec vyberte _PowerAppsId_.
Do poľa Hodnota kľúča vložte dynamickú hodnotu _PowerAppsId_ .
Uložte svoj postup.
Spustite tok s výrazom „alebo“.
Po uložení sa postup spustí. Ak ste vytvorili tabuľku zobrazenú skôr v tomto návode, tu je návod, ako vyzerá po dokončení behu.
Všimnite si, že všetky údaje z riadkov, ktoré boli vyplnené alebo nepotrebné v stĺpci Stav , boli odstránené.
Použite výraz „a“.
Predpokladajme, že máte v tabuľkovom hárku tabuľku s dvoma stĺpcami. Názvy stĺpcov sú Stav a Priradené. Predpokladajme tiež, že chcete odstrániť všetky riadky, ak je hodnota stĺpca Stav blokovaná a52> a stĺpec Priradené Johna55' Div . Ak chcete vykonať túto úlohu, vykonajte všetky kroky uvedené vyššie v tomto návode, ale keď upravujete kartu Stav v rozšírenom režime, použite výraz a , ktorý je tu zobrazený.
@and(equals(item()?['Status'], 'blocked'), equals(item()?['Assigned'], 'John Wonder'))
Tu je príklad karty Stav .
Spustite tok s výrazom „a“.
Ak ste postupovali podľa krokov v tomto návode, vaša tabuľka by mala vyzerať podobne ako nasledujúca snímka obrazovky.
Po spustení postupu by vaša tabuľka mala vyzerať podobne ako nasledujúca snímka obrazovky.
Použite výraz „prázdny“.
Všimnite si, že v tabuľkovom hárku sa teraz nachádza viacero prázdnych riadkov. Ak ich chcete odstrániť, použite prázdny výraz na identifikáciu všetkých riadkov, ktoré nemajú text v stĺpcoch Priradené a Stav .
Ak chcete vykonať túto úlohu, vykonajte všetky kroky uvedené v časti Použite výraz „a“ vyššie v tomto návode. Keď upravujete kartu Stav v rozšírenom režime, použite nasledujúci výraz prázdny .
@and(empty(item()?['Status']), empty(item()?['Assigned']))
Vaša karta Stav by mala vyzerať podobne ako na nasledujúcej snímke obrazovky.
Po spustení postupu by tabuľka mala vyzerať podobne ako nasledujúca snímka obrazovky.
Z tabuľky sa odstránia prázdne riadky.
Použite výraz „väčší“.
Predstavte si, že ste kúpili lístky na športový zápas pre svojich spolupracovníkov a pomocou tabuľkového hárka sa chcete uistiť, že vám za ne všetci zaplatili. Môžete rýchlo vytvoriť postup v cloude, ktorý každý deň odošle e-mail každej osobe, ktorá ešte neuhradila celú sumu.
Na identifikáciu zamestnancov, ktorí nezaplatili celú sumu, použite väčší výraz. Tým, ktorí nezaplatili celú sumu, potom môžete automaticky poslať e-mail s pripomenutím.
Tu je pohľad na tabuľku.
Tu je implementácia väčšieho výrazu, ktorý identifikuje všetky osoby, ktoré od nich zaplatili menej, ako je dlžná suma.
@greater(item()?['Due'], item()?['Paid'])
Použite výraz „menej“.
Predstavte si, že ste kúpili lístky na športový zápas pre svojich spolupracovníkov a pomocou tabuľkového hárka sa chcete uistiť, že vám za ne všetci zaplatili do dátumu, ktorý ste si s nimi dohodli. Môžete vytvoriť postup v cloude, ktorý každý deň odošle e-mail s pripomenutím každej osobe, ktorá neuhradila celú sumu, ak je aktuálny dátum menej ako jeden deň pred dátumom splatnosti.
Použite a výraz s menej výrazom, pretože sa overujú dve podmienky.
Podmienka na overenie | Výraz na použitie | Príklad |
---|---|---|
Bola uhradená celá suma? | greater | @greater(item()?['Due'], item()?['Paid']) |
Nastane dátum splatnosti za menej ako jeden deň? | less | @less(item()?['DueDate'], addDays(utcNow(),1)) |
Skombinujte výrazy „väčšie“ a „menej“ vo výraze „a“.
Použite väčší výraz na identifikáciu zamestnancov, ktorí zaplatili menej ako celú splatnú sumu, a použite menej výraz na určenie, či je dátum splatnosti menej ako jeden deň od aktuálneho dátumu. Potom môžete použiť akciu Poslať e-mail na odoslanie e-mailov s pripomienkou tým zamestnancom, ktorí nezaplatili celú sumu a dátum splatnosti je menej ako jeden deň.
Tu je pohľad na tabuľku tabuľky.
Tu je implementácia výrazu a , ktorý identifikuje všetkých zamestnancov, ktorí od nich zaplatili menej, ako je splatná suma, a dátum splatnosti je menej ako jeden deň od aktuálneho dátumu.
@and(greater(item()?['Due'], item()?['Paid']), less(item()?['dueDate'], addDays(utcNow(),1)))
Používanie funkcií vo výrazoch
Niektoré výrazy načítavajú svoje hodnoty z akcií runtime, ktoré v čase spustenia postupu v cloude ešte nemusia existovať. Ak chcete odkazovať na tieto hodnoty alebo s nimi pracovať vo výrazoch, môžete použiť funkcie, ktoré poskytuje jazyk definície pracovného postupu. Ďalšie informácie. Ak sa chcete dozvedieť viac, prejdite na Referenčnú príručku k funkciám vyjadrenia pracovného toku v Azure Logic Apps a Power Automate.