Sdílet prostřednictvím


Vytváření proměnných pro ukládání a správu hodnot v Azure Logic Apps

Platí pro: Azure Logic Apps (Consumption + Standard)

Tento návod ukazuje, jak vytvořit proměnné a pracovat s proměnnými, abyste mohli ukládat a používat hodnoty v pracovním postupu aplikace logiky. Proměnné vám například můžou pomoct sledovat, kolikrát se smyčka spustí. Pokud chcete iterovat pole nebo zkontrolovat matici pro určitou položku, můžete pomocí proměnné odkazovat na číslo indexu pro každou položku pole.

Můžete vytvořit proměnné pro datové typy, například celé číslo, číslo s plovoucí desetinnou čárkou, logický, řetězec, pole a objekt. Po vytvoření proměnné můžete provádět další úkoly, například:

  • Získat nebo odkazovat na hodnotu proměnné.
  • Zvýšit nebo snížit proměnnou o konstantní hodnotu, což je známo také jako přírůstek a úbytek.
  • Přiřadit proměnné jinou hodnotu.
  • Vložit nebo připojit hodnotu proměnné jako poslední položku v řetězci nebo poli.

Proměnné existují a jsou globální pouze v rámci instance pracovního postupu, která je vytvoří. Také se zachovají napříč všemi iteracemi smyčky uvnitř instance pracovního postupu. Když odkazujete na proměnnou, použijte jako token název proměnné, nikoli název akce, což je obvyklý způsob odkazování na výstupy akce.

Důležité

Ve výchozím nastavení se iterace v každé smyčce spouští paralelně. Při použití proměnných ve smyčce spusťte smyčku postupně , aby proměnné vrátily předvídatelné výsledky.

Požadavky

  • Účet a předplatné Azure. Pokud předplatné nemáte, zaregistrujte si bezplatný účet Azure.

  • Pracovní postup aplikace logiky, ve kterém chcete vytvořit proměnnou a aktivační událost, která spouští pracovní postup.

    Než budete moct přidat akce pro vytváření a práci s proměnnými, musí pracovní postup začínat triggerem jako prvním krokem v pracovním postupu. Další informace najdete v tématu Vytvoření pracovního postupu s triggerem nebo akcí.

Následující kroky používají Azure Portal, ale s příslušným rozšířením Azure Logic Apps můžete k vytváření pracovních postupů aplikace logiky použít také následující nástroje:

Na základě toho, jestli máte pracovní postup Consumption nebo Standard, postupujte podle odpovídajících kroků:

Inicializovat proměnnou

Proměnnou můžete vytvořit a deklarovat její datový typ a počáteční hodnotu pomocí jediné akce v pracovním postupu. Proměnné můžete deklarovat pouze na globální úrovni, nikoli v rámci rozsahů, podmínek a smyček.

  1. Na webu Azure Portal otevřete pracovní postup v návrháři.

  2. V návrháři přidejte akci s názvem Initialize variable (Inicializovat proměnnou) podle těchto obecných kroků.

  3. Zadejte následující informace o proměnné:

    Vlastnost Požaduje se Hodnota Popis
    Jméno Ano <variable-name> Název proměnné, jejíž hodnotu chcete zvýšit
    Typ Ano <variable-type> Popis datového typu proměnné
    Hodnota No <start-value> Počáteční hodnota proměnné

    Tip: I když je tato hodnota volitelná, nastavte ji jako osvědčený postup, abyste vždy znali počáteční hodnotu proměnné.

    Následující příklad ukazuje počáteční hodnoty pro tuto ukázkovou proměnnou:

    Snímek obrazovky s webem Azure Portal, pracovním postupem příjemce a akcí s názvem Inicializovat proměnnou

  4. Teď pokračujte v přidávání požadovaných akcí pro váš scénář. Jakmile budete hotovi, na panelu nástrojů návrháře vyberte Uložit.

Pokud přepnete z návrháře na zobrazení kódu, následující příklad ukazuje, jak se v definici pracovního postupu zobrazuje akce Inicializace proměnné , která je ve formátu JSON (JavaScript Object Notation):

"actions": {
   "Initialize_variable": {
      "type": "InitializeVariable",
      "inputs": {
         "variables": [ 
            {
               "name": "Count",
               "type": "Integer",
               "value": 0
            }
         ]
      },
      "runAfter": {}
   }
},

Poznámka:

I když akce Inicializace proměnné"variables" objekt strukturovaný jako pole, akce může vytvořit pouze jednu proměnnou najednou. Každá nová proměnná vyžaduje samostatnou akci Inicializovat proměnnou.

Následující příklady ukazují další typy proměnných:

Logická proměnná

"actions": {
   "Initialize_variable": {
      "type": "InitializeVariable",
      "inputs": {
         "variables": [
            {
               "name": "myBooleanVariable",
               "type": "boolean",
               "value": false
            }
         ]
      },
      "runAfter": {}
   }
},

Plovoucí proměnná

"actions": {
   "Initialize_variable": {
      "type": "InitializeVariable",
      "inputs": {
         "variables": [
            {
               "name": "myFloatVariable",
               "type": "float",
               "value": 1.99999
            }
         ]
      },
      "runAfter": {}
   }
},

Řetězcová proměnná

"actions": {
   "Initialize_variable": {
      "type": "InitializeVariable",
      "inputs": {
         "variables": [
            {
               "name": "myStringVariable",
               "type": "string",
               "value": "lorem ipsum"
            }
         ]
      },
      "runAfter": {}
   }
},

Proměnná objektu

"actions": {
   "Initialize_variable": {
      "type": "InitializeVariable",
      "inputs": {
         "variables": [
            {
               "name": "MyObjectVariable",
               "type": "object",
               "value": {
                  "ProductItem": {
                     "Name": "myProductName",
                     "ProductID": "000000"
                  }
               }
            }
         ]
      },
      "runAfter": {}
   }
},

Pole s celými čísly

"actions": {
   "Initialize_variable": {
      "type": "InitializeVariable",
      "inputs": {
         "variables": [
            {
               "name": "myArrayVariable",
               "type": "array",
               "value": [1, 2, 3]
            }
         ]
      },
      "runAfter": {}
   }
},

Pole s řetězci

"actions": {
   "Initialize_variable": {
      "type": "InitializeVariable",
      "inputs": {
         "variables": [
            {
               "name": "myArrayVariable",
               "type": "array",
               "value": ["red", "orange", "yellow"]
            }
         ]
      },
      "runAfter": {}
   }
},

Získání hodnoty proměnné

Pokud chcete načíst nebo odkazovat na obsah proměnné, můžete použít funkci variables() v návrháři pracovního postupu a editoru zobrazení kódu. Když odkazujete na proměnnou, použijte jako token název proměnné, nikoli název akce, což je obvyklý způsob odkazování na výstupy akce.

Například následující výraz získá položky z proměnné pole vytvořené v této příručce pomocí variables() funkce. Funkce string() vrací obsah proměnné ve formátu řetězce: "1, 2, 3, red"

@{string(variables('myArrayVariable'))}

Zvýšení hodnoty proměnné

Chcete-li zvýšit nebo zvýšit proměnnou o určitou konstantní hodnotu, přidejte do pracovního postupu akci přírůstkové proměnné . Tato akce funguje pouze s proměnnými typu celé číslo nebo číslo s plovoucí desetinnou čárkou.

  1. V návrháři pracovního postupu přidejte pomocí těchto obecných kroků akci s názvem Increment variable.

  2. Zadejte následující informace pro tuto akci:

    Vlastnost Požaduje se Hodnota Popis
    Jméno Ano <variable-name> Název proměnné, jejíž hodnotu chcete zvýšit
    Hodnota Ne <increment-value> Hodnota použitá pro zvýšení hodnoty proměnné. Výchozí hodnota je 1.

    Tip: I když tato hodnota není povinná, nastavte ji jako osvědčený postup, abyste vždy věděli, jakou konkrétní hodnotu chcete zvýšit.

    Následující příklad ukazuje ukázkové hodnoty pro tuto akci:

    Snímek obrazovky s webem Azure Portal, pracovním postupem Consumption a akcí s názvem Increment variable

  3. Po dokončení uložte pracovní postup. Na panelu nástrojů návrháře vyberte Uložit.

Pokud přepnete z návrháře na zobrazení kódu, následující příklad ukazuje, jak se v definici pracovního postupu zobrazuje akce přírůstkové proměnné , která je ve formátu JSON:

"actions": {
   "Increment_variable": {
      "type": "IncrementVariable",
      "inputs": {
         "name": "Count",
         "value": 1
      },
      "runAfter": {}
   }
},

Příklad: Vytvoření počitadla smyčky

Proměnné se běžně používají k počítání počtu spuštění smyčky. Tento příklad ukazuje, jak můžete vytvořit a použít proměnné pro tuto úlohu vytvořením smyčky, která spočítá přílohy v e-mailu.

  1. Na webu Azure Portal vytvořte prostředek aplikace logiky Consumption s prázdným pracovním postupem. Přidejte trigger, který rozpozná nový e-mail a všechny přílohy.

    Tento příklad používá trigger Office 365 Outlook pro Při přijetí nového e-mailu. Tento trigger můžete nastavit tak, aby se spouštěl pouze v případě, že e-mail obsahuje přílohy. Můžete však použít jakýkoli konektor, který kontroluje nové e-maily s přílohami, například konektor Outlook.com.

  2. Pokud chcete v triggeru vyhledat přílohy a předat je do pracovního postupu, vyberte u následujících vlastností ano:

    • Pouze s přílohou
    • Zahrnout přílohy

    Snímek obrazovky znázorňující web Azure Portal, pracovní postup Consumption a vlastnosti vybrané ke kontrole a zahrnutí příloh

  3. Přidejte akci Inicializovat proměnnou pro vytvoření celočíselné proměnné s názvem Count, která má počáteční hodnotu nastavenou na 0.

  4. Pokud chcete iterovat jednotlivé přílohy, postupujte podle těchto obecných kroků a přidejte akci nazvanou For each loop.

  5. Ve smyčce vyberte uvnitř pole s názvem Vyberte výstup z předchozích kroků. Jakmile se zobrazí seznam dynamického obsahu, vyberte v části Při přijetí nového e-mailu přílohy.

    Snímek obrazovky znázorňující pracovní postup Consumption, pro každou smyčku, otevřený seznam dynamického obsahu a vybraný výstup Přílohy

    Vlastnost Přílohy předá pole, které obsahuje e-mailové přílohy z výstupu triggeru do smyčky pro váš pracovní postup iterace.

  6. Ve smyčce Pro každou smyčku vyberte Přidat akci.

  7. Pomocí těchto obecných kroků přidejte do smyčky akci nazvanou Přírůstková proměnná.

    Poznámka:

    Ujistěte se, že se uvnitř smyčky zobrazí akce proměnné přírůstku. Pokud se akce zobrazí mimo smyčku, přetáhněte akci do smyčky.

  8. V akci Zvýšit hodnotu proměnné v seznamu Název vyberte proměnnou Počet. Nastavte vlastnost Value na 1hodnotu .

    Snímek obrazovky znázorňující pracovní postup Consumption s vybranou proměnnou s názvem Count

  9. Do smyčky přidejte jakoukoli akci, která vám odešle počet příloh. Do akce přidejte hodnotu z proměnné Count, například:

    Snímek obrazovky znázorňující pracovní postup Consumption a akci, která odesílá výsledky

  10. Po dokončení uložte pracovní postup. Na panelu nástrojů návrháře vyberte Uložit.

Otestování pracovního postupu

  1. Pokud chcete pracovní postup aktivovat ručně, postupujte podle odpovídajícího kroku:

    Pracovní postup Consumption

    Na panelu nástrojů pracovního postupu návrháře vyberte Spustit spuštění triggeru>, abyste mohli pracovní postup spustit ručně.

    Standardní pracovní postup

    V nabídce pracovního postupu vyberte Přehled. Na panelu nástrojů vyberte Spustit>spuštění.

  2. Odešlete e-mail s jednou nebo více přílohami k e-mailovému účtu, který jste použili v tomto příkladu.

    Tento krok aktivuje trigger pracovního postupu, který vytvoří a spustí instanci pracovního postupu. V důsledku toho vám pracovní postup pošle zprávu nebo e-mail, který zobrazuje počet příloh v e-mailu, který jste odeslali.

Pokud přepnete z návrháře na zobrazení kódu, následující příklad ukazuje, jak se zobrazí smyčka For each spolu s akcí Proměnné přírůstku v definici pracovního postupu, která je ve formátu JSON:

"actions": {
   "For_each": {
      "type": "Foreach",
      "actions": {
         "Increment_variable": {
           "type": "IncrementVariable",
            "inputs": {
               "name": "Count",
               "value": 1
            },
            "runAfter": {}
         }
      },
      "foreach": "@triggerBody()?['Attachments']",
      "runAfter": {
         "Initialize_variable": [ "Succeeded" ]
      }
   }
},

Snížení hodnoty proměnné

Pokud chcete proměnnou snížit nebo snížit o určitou konstantní hodnotu, postupujte podle kroků pro zvýšení proměnné s tím rozdílem, že do pracovního postupu přidáte akci dekrementace proměnné. Tato akce funguje pouze s proměnnými typu celé číslo nebo číslo s plovoucí desetinnou čárkou.

Následující tabulka popisuje informace o akci proměnné dekrementace:

Vlastnost Požaduje se Hodnota Popis
Jméno Ano <variable-name> Název proměnné, jejíž hodnotu chcete snížit
Hodnota Ne <increment-value> Hodnota použitá pro snížení hodnoty proměnné. Výchozí hodnota je 1.

Tip: I když je to volitelné, nastavte zde osvědčenou hodnotu, abyste si vždy pamatovali konkrétní hodnotu, o kterou snižujete svou proměnnou.

Pokud přepnete z návrháře na zobrazení kódu, následující příklad ukazuje, jak se v definici pracovního postupu zobrazuje akce dekrementace proměnné , která je ve formátu JSON:

"actions": {
   "Decrement_variable": {
      "type": "DecrementVariable",
      "inputs": {
         "name": "Count",
         "value": 1
      },
      "runAfter": {}
   }
},

Nastavit proměnnou

Pokud chcete stávající proměnné přiřadit jinou hodnotu, postupujte podle kroků pro zvýšení proměnné s následujícími výjimkami:

  1. Vyhledejte a vyberte akci Nastavit proměnnou.

  2. Zadejte název proměnné a hodnotu, kterou chcete přiřadit. Nová hodnota i proměnná musí mít stejný datový typ. Hodnota je povinná, protože tato akce nemá výchozí hodnotu.

Následující tabulka popisuje informace o akci Nastavit proměnnou :

Vlastnost Požaduje se Hodnota Popis
Jméno Ano <variable-name> Název proměnné, jejíž hodnotu chcete změnit
Hodnota Ano <new-value> Hodnota, kterou chcete přiřadit proměnné. Obě musí mít stejný datový typ.

Poznámka:

Pokud nevytvoříte přírůstky nebo dekrementace proměnných, může změna proměnných uvnitř smyček vytvořit neočekávané výsledky, protože smyčky se spouští paralelně nebo souběžně. V těchto případech zkuste nastavit smyčku tak, aby běžela postupně. Pokud například chcete odkazovat na hodnotu proměnné uvnitř smyčky a očekávat stejnou hodnotu na začátku a konci instance smyčky, změňte způsob spuštění smyčky pomocí následujícího postupu:

  1. Ve smyčce vyhledejte a otevřete nastavení smyčky.

  2. Na základě typu pracovního postupu postupujte podle odpovídajících kroků:

    • Spotřeba: Změňte nastavení řízení souběžnosti z Vypnuto na Zapnuto.

    • Standardní: V části Obecné změňte nastavení Řízení souběžnosti z vypnuto na Zapnuto.

  3. Přetáhněte posuvník Stupně paralelismu na 1.

Pokud přepnete z návrháře na zobrazení kódu, následující příklad ukazuje, jak se v definici pracovního postupu zobrazuje akce Nastavit proměnnou , která je ve formátu JSON:

Následující příklad změní Count aktuální hodnotu proměnné na jinou hodnotu:

"actions": {
   "Initialize_variable": {
      "type": "InitializeVariable",
      "inputs": {
         "variables": [ {
               "name": "Count",
               "type": "Integer",
               "value": 0
          } ]
      },
      "runAfter": {}
   },
   "Set_variable": {
      "type": "SetVariable",
      "inputs": {
         "name": "Count",
         "value": 100
      },
      "runAfter": {
         "Initialize_variable": [ "Succeeded" ]
      }
   }
},

Připojení k proměnné

V případě proměnných, které uchovávají řetězce nebo pole, můžete vložit nebo připojit hodnotu proměnné jako poslední položku v těchto řetězcích nebo polích. Můžete postupovat podle kroků pro zvýšení proměnné s následujícími výjimkami:

  1. Najděte a vyberte jednu z těchto akcí na základě toho, jestli je proměnná řetězec nebo pole:

    • Připojení k proměnné řetězce
    • Připojení k proměnné pole
  2. Zadejte hodnotu, která se má připojit jako poslední položka v řetězci nebo poli. Tato hodnota je povinná.

Následující tabulka popisuje informace o akcích Připojit k... :

Vlastnost Požaduje se Hodnota Popis
Jméno Ano <variable-name> Název proměnné, jejíž hodnotu chcete změnit
Hodnota Ano <append-value> Hodnota, kterou chcete připojit, která může mít libovolný typ

Pokud přepnete z návrháře do zobrazení kódu, následující příklad ukazuje, jak se v definici pracovního postupu zobrazuje akce Připojit k maticové proměnné , která je ve formátu JSON.

Následující příklad vytvoří proměnnou pole a přidá další hodnotu jako poslední položku v poli. Výsledkem je aktualizovaná proměnná, která obsahuje toto pole: [1,2,3,"red"]

"actions": {
   "Initialize_variable": {
      "type": "InitializeVariable",
      "inputs": {
         "variables": [ {
            "name": "myArrayVariable",
            "type": "Array",
            "value": [1, 2, 3]
         } ]
      },
      "runAfter": {}
   },
   "Append_to_array_variable": {
      "type": "AppendToArrayVariable",
      "inputs": {
         "name": "myArrayVariable",
         "value": "red"
      },
      "runAfter": {
        "Initialize_variable": [ "Succeeded" ]
      }
   }
},

Další kroky