Poznámka
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Při vytváření cloudového toku můžete pomocí akce Podmínka v základním režimu rychle porovnat jednu hodnotu s jinou. Někdy je ale potřeba porovnat více hodnot. Například můžete chtít zkontrolovat hodnoty několika sloupců v tabulce nebo databázové tabulce.
V tomto kurzu vytvoříte cloudový tok a použijete podmínku or
. V sekci Scénáře pro jiné běžné výrazy se dozvíte, jak používat jiné výrazy, například and
, empty
, greater
a less
v podmínkách.
Předpoklady
Zde uvádíme, co budete potřebovat k postupu podle tohoto kurzu.
- Přístup k Power Automate.
- Vlastníte tabulkový procesor s tabulkami popsanými dále v tomto kurzu. Nezapomeňte tabulku uložit do umístění, jako je Dropbox nebo Microsoft OneDrive, aby k ní služba Power Automate měla přístup.
- Microsoft 365 Outlook (V tomto kurzu používáme Outlook, ale ve svých tocích můžete použít libovolnou podporovanou e-mailovou službu.)
Vytvoření cloudového toku
Cloudový tok můžete vytvořit pomocí přirozeného jazyka v Copilot nebo ho vytvořit úplně od začátku. Pokud máte přístup ke Copilot, vyberte kartu Použití Copilot a vytvořte tok. Pokud nemáte přístup k Copilot, vyberte kartu Bez kopilota.
Přihlaste se do Power Automate
Požádejte funkci Copilot, aby pro vás vytvořila tok. Zkopírujte následující zadání a vložte ho do pole Copilot:
Every week, list rows in an Excel table, and if the Status column equals Succeeded or claim manager's email is jake@contoso.com, delete Excel row.
Vyberte Generovat.
Vyberte Zachovat a pokračovat.
Zkontrolujte připojení. Pokud jsou zdroje dat správně připojené, zobrazí se vedle aplikace nebo služby zelené zaškrtnutí. Pokud se zelené zaškrtnutí nezobrazí, vyberte aplikaci nebo službu a postupujte podle pokynů.
Po nastavení připojení vyberte Vytvořit tok. Otevře se obrazovka návrháře. Tady můžete v případě potřeby nakonfigurovat cloudový tok.
Přejděte na téma Výběr tabulky a získání všech řádků.
Výběr tabulky a získání všech řádků
Po vytvoření cloudového toku získáte tabulku, která má sloupec tabulky Stav. Možné hodnoty ve sloupci Stav jsou:
Někdy je potřeba, aby pracovní postup provedl akci, pokud je hodnota položky valueA
nebo valueB
. Například můžete v tabulce sledovat stav úloh. Předpokládejme, že tabulka obsahuje sloupec Stav a možné hodnoty v tomto sloupci:
completed
blocked
unnecessary
not started
Příklad, jak tabulka může vypadat:
Chcete-li pracovat s tabulkou, začněte v návrháři. Udělejte to buď v novém návrháři, nebo v klasickém návrháři. Postup je v obou návrhářích podobný. Další informace (s příklady) najdete v tématu Identifikace rozdílů mezi novým návrhářem a klasickým návrhářem cloudových toků.
Vytvořte cloudový tok nebo vyberte jeden ze seznamu existujících cloudových toků tak, že vyberete Moje toky v levém navigačním podokně >Upravit.
V návrháři vyberte kartu akce Vypsat řádky v tabulce.
Na kartě Parametry vyberte Umístění, Knihovna dokumentů, Soubor a Tabulka.
Vybráním (<<) v pravém horním rohu podokno konfigurace sbalte.
Přejděte na téma Přidání podmínky.
Přidání podmínky
Než budete moct přidat podmínku pro kontrolu hodnoty sloupce Stav v každém řádku tabulky, ujistěte se, že jste v tomto kurzu provedli následující postupy:
-
Vytvoření cloudového toku
- Nebo vytvořte cloudový tok nebo vyberte jeden ze seznamu existujících cloudových toků tak, že vyberete Moje toky v levém navigačním podokně >Upravit.
- Výběr tabulky a získání všech řádků
V návrháři přidejte nový krok tak, že vyberete znaménko plus (+) >Přidat akci.
Na obrazovce Přidat akci vyhledejte použít na všechny a poté vyberte Použít na všechny v části Ovládací prvek.
Přidejte token hodnota do pole Vyberte výstup z předchozích kroků výběrem uvnitř pole a následným výběrem ikony blesku.
Tento token hodnota představuje tabulku a všechna její data.
Na kartě Použít na všechny přidejte nový krok výběrem znaménka plus (+) >Přidat akci.
Vyhledejte podmínka a poté vyberte ovládací prvek Podmínka.
Přidejte následující výraz OR. Tento výraz OR kontroluje hodnotu každého řádku v tabulce.
Pokud je ve sloupci Stav hodnota dokončenonebonení potřeba, výraz OR se vyhodnotí jako true.
Zde je příklad karty Stav.
Přejděte na téma Odstranění odpovídajících řádků z tabulky.
Odstranění odpovídajících řádků z tabulky
V tomto kurzu použijete podmínku Nebo k odstranění řádků s hodnotou completed
nebo unnecessary
z tabulky. Než budete moci přidat akci Odstranit řádek, ujistěte se, že jste provedli následující postupy:
-
Vytvoření cloudového toku
- Nebo vytvořte cloudový tok nebo vyberte jeden ze seznamu existujících cloudových toků tak, že vyberete Moje toky v levém navigačním podokně >Upravit.
- Výběr tabulky a získání všech řádků
- Přidat podmínku
V návrháři vyberte znaménko plus (+), pokud chcete přidat akci do větve podmínky True.
Větev True se spustí, pokud je podmínka Or vyhodnocena jako true.
Vyhledejte Excel Online (Business) a potom vyberte Odstranit řádek.
Na panelu Odstranění řádku nastavte pole Umístění, Knihovna dokumentů, Soubor a Tabulka přesně tak, jak jste ke nastavili na kartě Vypsat řádky v tabulce dříve v tomto návodu.
V rozevíracím seznamu Klíčový sloupec vyberte _PowerAppsId_.
Do pole Klíčová hodnota vložte dynamickou hodnotu _PowerAppsId_.
Přejděte na Uložení a otestování cloudového toku.
Uložení a otestování cloudového toku
- V návrháři vyberte možnost Uložit. Zobrazí se zelená zpráva, že váš tok je připraven k použití. Doporučujeme ho otestovat.
- Zvolte Test a spusťte tok.
- Na panelu Otestování toku vyberte Ručně>Otestovat.
- Na panelu Spuštění toku vyberte Spustit tok. Pokud je tok správně nastavený, zobrazí se zpráva Spuštění toku bylo úspěšně zahájeno. Pokud ho chcete monitorovat, přejděte na stránku Spuštění toku.
- Panel Spustit toku zavřete výběrem možnosti Hotovo.
Blahopřejeme! Vytvořili jste cloudový tok, který odstraní řádky z tabulky, pokud hodnota sloupce Stav je buď completed
, anebo unnecessary
. Tabulka by měla po dokončení spuštění vypadat takto.
Všimněte si, že se odstranila všechna data z řádků, které ve sloupci Stav měly hodnotu completednebo unnecessary.
Scénáře pro další běžné výrazy
V této části se dozvíte, jak používat další výrazy v podmínkách. V každém scénáři se ujistěte, že jste v kurzu provedli následující postupy.
-
Vytvoření cloudového toku
- Nebo vytvořte cloudový tok nebo vyberte jeden ze seznamu existujících cloudových toků tak, že vyberete Moje toky v levém navigačním podokně >Upravit.
- Výběr tabulky a získání všech řádků
-
Přidat podmínku
- V proceduře Přidat podmínku použijte výraz z této sekce, který chcete použít na kartě Podmínka.
Ve svých podmínkách můžete použít jakoukoli kombinaci následujících logických výrazů.
Expression | Popis | Příklad |
---|---|---|
and | Přebírá dva argumenty a vrací hodnotu True, pokud jsou obě hodnoty pravdivé. Poznámka: Oba argumenty musí být typu boolean (logická hodnota). |
Tento výraz vrátí hodnotu False:and(greater(1,10),equals(0,0)) |
or | Přebírá dva argumenty a vrací hodnotu True, pokud je některý z nich pravdivý. Poznámka: Oba argumenty musí být typu boolean (logická hodnota). |
Tento výraz vrátí hodnotu True:or(greater(1,10),equals(0,0)) |
rovná se | Vrací hodnotu True, pokud se dvě hodnoty rovnají. | Například pokud má parametr1 hodnotu nějaká_hodnota, tento výraz vrátí hodnotu True:equals(parameters('parameter1'), 'someValue') |
less | Přebírá dva argumenty a vrací hodnotu True, pokud je první argument menší než druhý argument. Poznámka: Podporované typy jsou integer (celé číslo), float (plovoucí desetinná čárka) a string (řetězec). |
Tento výraz vrátí hodnotu True:less(10,100) |
lessOrEquals | Přebírá dva argumenty a vrací hodnotu True, pokud je první argument menší než nebo roven druhému argumentu. Poznámka: Podporované typy jsou integer (celé číslo), float (plovoucí desetinná čárka) a string (řetězec). |
Tento výraz vrátí hodnotu True:lessOrEquals(10,10) |
greater | Přebírá dva argumenty a vrací hodnotu True, pokud je první argument větší než druhý argument. Poznámka: Podporované typy jsou integer (celé číslo), float (plovoucí desetinná čárka) a string (řetězec). |
Tento výraz vrátí hodnotu False:greater(10,10) |
greaterOrEquals | Přebírá dva argumenty a vrací hodnotu True, pokud je první argument větší než nebo roven druhému argumentu. Poznámka: Podporované typy jsou integer (celé číslo), float (plovoucí desetinná čárka) a string (řetězec). |
Tento výraz vrátí hodnotu False:greaterOrEquals(10,100) |
empty | Vrací hodnotu True, pokud je objekt, pole nebo řetězec prázdný. | Tento výraz vrátí hodnotu True:empty('') |
not | Vrátí opak logické hodnoty. | Tento výraz vrátí hodnotu True:not(contains('200 Success','Fail')) |
if | Vrací určitou hodnotu podle toho, jestli je výsledek podmínky pravdivý, nebo nepravdivý. | Tento výraz vrátí „ano“:if(equals(1, 1), 'yes', 'no') |
Použití výrazu 'and'
Předpokládejme, že máte tabulku se dvěma sloupci. Názvy sloupců jsou Stav a Přiřazeno. Předpokládejme také, že chcete odstranit všechny řádky u kterých je ve sloupci Stav hodnota blokováno a ve sloupci Přiřazeno hodnota John Wonder. K provedení tohoto úkolu použijte při úpravě karty Podmínka v sekci Přidání podmínky výraz and zobrazený zde.
@and(equals(item()?['Status'], 'blocked'), equals(item()?['Assigned'], 'John Wonder'))
Zde je příklad karty Stav.
Spuštění toku s výrazem 'and'
Pokud jste postupovali podle kroků v této části, měla by vaše tabulka vypadat podobně jako na následujícím snímku obrazovky.
Po spuštění postupu by tabulka měla vypadat podobně jako na následujícím snímku obrazovky.
Použití výrazu 'empty'
Všimněte si, že teď tabulka obsahuje několik prázdných řádků. Pokud je chcete odebrat, pomocí výrazu empty identifikujte všechny řádky, které ve sloupcích Přiřazeno a Stav neobsahují žádný text.
Chcete-li provést tento úkol, postupujte podle všech kroků uvedených v části Použijte výraz „and“ v tomto kurzu. Když upravíte kartu Podmínka kartu v rozšířeném režimu, použijte následující výraz empty.
@and(empty(item()?['Status']), empty(item()?['Assigned']))
Vaše karta Podmínka by měla vypadat podobně jako následujícíscreenshot.
Po spuštění postupu by tabulka měla vypadat podobně jako na následujícím snímku obrazovky.
Všimněte si, že se z tabulky odebraly nadbytečné řádky.
Použití výrazu 'greater'
Představte si, že jste pro své spolupracovníky koupili lístky na baseball a používáte tabulku, abyste zajistili, že vám za ně všichni zaplatí. Můžete rychle vytvořit cloudový tok, který každý den odešle e-mail všem, kdo ještě nezaplatili celou částku.
Pomocí výrazu greater identifikujte zaměstnance, kteří ještě nezaplatili celou částku. Poté jim můžete automaticky poslat e-mail s připomenutím.
Tady je zobrazení tabulky.
Zde je implementace výrazu greater, který identifikuje všechny osoby, které zaplatily méně, než kolik je jejich dlužná částka.
@greater(item()?['Due'], item()?['Paid'])
Použití výrazu 'less'
Představte si, že jste pro své spolupracovníky koupili lístky na baseball a používáte tabulku, abyste zajistili, že vám za ně všichni zaplatí ve lhůtě, se kterou všichni souhlasili. Můžete vytvořit cloudový tok, který odešle e-mail s připomínkou každému, kdo ještě nezaplatil celou částku, pokud je aktuální datum méně než jeden den před datem splatnosti.
Použijte výraz and s výrazem less, protože se ověřují dvě podmínky.
Podmínka k ověření | Výraz, který se má použít | Příklad |
---|---|---|
Byla zaplacena celá dlužná částka? | greater | @greater(item()?['Due'], item()?['Paid']) |
Je datum splatnosti za méně než jeden den? | less | @less(item()?['DueDate'], addDays(utcNow(),1)) |
Kombinování výrazů 'greater' a 'less' ve výrazu 'and'
Pomocí výrazu greater identifikujte zaměstnance, kteří zaplatili méně než celou dlužnou částku, a pomocí výrazu less určete, jestli je datum splatnosti za méně než jeden den od aktuálního data. Potom můžete pomocí akce Odeslat e-mail odeslat e-mail s připomínkou těm zaměstnancům, kteří ještě úplně nezaplatili a jejichž datum splatnosti je za méně než jeden den.
Tady je zobrazení tabulky.
Tady je implementace výrazu and, který identifikuje všechny zaměstnance, kteří zaplatily méně, než je jejich dlužná částka, a jejichž datum splatnosti je za méně než jeden den od aktuálního data.
@and(greater(item()?['Due'], item()?['Paid']), less(item()?['dueDate'], addDays(utcNow(),1)))
Používání funkcí ve výrazech
Některé výrazy získávají hodnoty z runtime akcí, které ještě při spuštění cloudového toku nemusí existovat. Pokud chcete na tyto hodnoty odkazovat nebo s nimi pracovat ve výrazech, můžete použít funkce poskytované jazykem pro definování pracovních postupů WDL (Workflow Definition Language).
Chcete-li se dozvědět více, přejděte na Referenční příručku k funkcím výrazů pracovního postupu v Azure Logic Apps a Power Automate.