Share via


Schakelacties maken die werkstroomacties uitvoeren op basis van specifieke waarden in Azure Logic Apps

Van toepassing op: Azure Logic Apps (verbruik)

Als u specifieke acties wilt uitvoeren op basis van de waarden van objecten, expressies of tokens, voegt u een schakelactie toe. Deze structuur evalueert het object, de expressie of het token, kiest de case die overeenkomt met het resultaat en voert alleen specifieke acties uit voor dat geval. Wanneer de schakelactie wordt uitgevoerd, moet slechts één case overeenkomen met het resultaat.

Stel dat u een logische app wilt die verschillende stappen uitvoert op basis van een optie die is geselecteerd in e-mail. In dit voorbeeld controleert de logische app de RSS-feed van een website op nieuwe inhoud. Wanneer een nieuw item wordt weergegeven in de RSS-feed, verzendt de logische app een e-mail naar een fiatteur. Op basis van of de fiatteur 'Goedkeuren' of 'Weigeren' selecteert, volgt de logische app verschillende stappen.

Tip

Net als alle programmeertalen ondersteunen schakelacties alleen gelijkheidsoperators. Als u andere relationele operatoren nodig hebt, zoals 'groter dan', gebruikt u een voorwaardeactie. Om het gedrag van deterministische uitvoering te garanderen, moeten cases een unieke en statische waarde bevatten in plaats van dynamische tokens of expressies.

Vereisten

  • Een Azure-abonnement. Als u nog geen abonnement hebt, meld u dan aan voor een gratis Azure-account.

  • Als u het voorbeeld in dit artikel wilt volgen, maakt u de werkstroom voor de logische app Verbruik met een Outlook.com-account of een werk- of schoolaccount.

    1. Wanneer u de actie toevoegt om e-mail te verzenden, zoekt en selecteert u deze actie: Een goedkeurings-e-mail verzenden

      Select

    2. Geef de vereiste velden op, zoals het e-mailadres voor de persoon die de goedkeurings-e-mail ontvangt. Voer onder Gebruikersopties 'Goedkeuren, Weigeren' in.

      Enter email details

Een schakelactie toevoegen

  1. Voeg voor dit voorbeeld een schakelactie toe aan het einde van uw voorbeeldwerkstroom. Kies Na de laatste stap de optie Nieuwe stap.

    Wanneer u een schakelactie tussen stappen wilt toevoegen, verplaatst u de aanwijzer over de pijl waar u de schakelactie wilt toevoegen. Kies het plusteken (+) dat wordt weergegeven en kies vervolgens Een actie toevoegen.

  2. Voer in het zoekvak 'Schakelen' in als uw filter. Selecteer deze actie: Schakelen - Besturingselement

    Add switch

    Er wordt een schakelactie weergegeven met één case en een standaardcase. Voor een schakelactie is standaard ten minste één case plus de standaardcase vereist.

    Empty default switch action

  3. Klik in het vak Aan , zodat de lijst met dynamische inhoud wordt weergegeven. Selecteer in die lijst het veld SelectedOption waarvan de uitvoer bepaalt welke actie moet worden uitgevoerd.

    Select

  4. Als u de gevallen wilt afhandelen waarin de fiatteur selecteert Approve of Reject, voegt u een andere case toe tussen Case en Default.

    Add another case

  5. Voeg deze acties toe aan de bijbehorende gevallen:

    Geval # SelectedOption Actie
    Geval 1 Goedkeuren Voeg outlook een e-mailactie toe voor het verzenden van details over het RSS-item alleen wanneer de fiatteur goedkeuren heeft geselecteerd.
    Geval 2 Verwerpen Voeg de e-mailactie Outlook verzenden toe om andere goedkeurders op de hoogte te stellen dat het RSS-item is geweigerd.
    Standaardinstelling Geen Geen actie nodig. In dit voorbeeld is de standaardcase leeg omdat SelectedOption slechts twee opties heeft.

    Finished switch action

  6. Sla uw logische app op.

    Als u dit voorbeeld handmatig wilt testen, kiest u Uitvoeren totdat de logische app een nieuw RSS-item vindt en een goedkeurings-e-mail verzendt. Selecteer Goedkeuren om de resultaten te bekijken.

JSON-definitie

Nu u een logische app hebt gemaakt met behulp van een schakelactie, gaan we kijken naar de codedefinitie op hoog niveau achter de switchactie.

"Switch": {
   "type": "Switch",
   "expression": "@body('Send_approval_email')?['SelectedOption']",
   "cases": {
      "Case": {
         "actions": {
           "Send_an_email": {}
         },
         "case" : "Approve"
      },
      "Case_2": {
         "actions": {
           "Send_an_email_2": {}
         },
         "case": "Reject"
      }
   },
   "default": {
      "actions": {}
   },
   "runAfter": {
      "Send_approval_email": [
         "Succeeded"
      ]
   }
}
Etiket Beschrijving
"Switch" De naam van de schakelactie, waarvan u de naam kunt wijzigen voor leesbaarheid
"type": "Switch" Hiermee geeft u op dat de actie een schakelactie is
"expression" In dit voorbeeld geeft u de geselecteerde optie van de fiatteur op die wordt geëvalueerd voor elk geval, zoals later in de definitie wordt gedeclareerd
"cases" Definieert een willekeurig aantal gevallen. Voor elk geval is dit de standaardnaam voor dat geval "Case_*" , waarvan u de naam kunt wijzigen voor leesbaarheid
"case" Hiermee geeft u de waarde van de case op, die een constante en unieke waarde moet zijn die de schakelactie gebruikt voor vergelijking. Als er geen gevallen overeenkomen met het resultaat van de schakelexpressie, worden de acties in de "default" sectie uitgevoerd.

Support krijgen

Volgende stappen