Creare azioni switch che eseguono azioni del flusso di lavoro in base a valori specifici in App per la logica di Azure

Si applica a: App per la logica di Azure (consumo)

Per eseguire azioni specifiche in base ai valori di oggetti, espressioni o token, aggiungere un'azione switch . Questa struttura valuta l'oggetto, l'espressione o il token, sceglie il case corrispondente al risultato, ed esegue azioni specifiche solo per tale case. Quando viene eseguita l'azione switch, un solo caso deve corrispondere al risultato.

Si supponga, ad esempio, che sia necessaria un'app per la logica che esegue passaggi diversi in base a un'opzione selezionata nel messaggio di posta elettronica. In questo esempio l'app per la logica verifica la presenza di nuovo contenuto nel feed RSS di un sito Web. Quando un nuovo elemento viene visualizzato nel feed RSS, l'app per la logica invia il messaggio di posta elettronica a un responsabile approvazione. A seconda che il responsabile approvazione selezioni "Approve" o "Reject", l'app per la logica segue passaggi diversi.

Suggerimento

Come tutti i linguaggi di programmazione, le azioni switch supportano solo gli operatori di uguaglianza. Se sono necessari altri operatori relazionali, ad esempio "maggiore di", usare un'azione condizione. Per garantire il comportamento di esecuzione deterministico, i case devono contenere un valore univoco e statico invece di token o espressioni dinamiche.

Prerequisiti

  • Una sottoscrizione di Azure. Se non si ha una sottoscrizione, è possibile iscriversi per creare un account Azure gratuito.

  • Per seguire l'esempio in questo articolo, creare il flusso di lavoro dell'app per la logica a consumo con un account Outlook.com o un account aziendale o dell'istituto di istruzione.

    1. Quando si aggiunge l'azione per inviare posta elettronica, individuare e selezionare invece l'azione Invia messaggio di posta elettronica di approvazione.

      Select

    2. Compilare i campi obbligatori, ad esempio l'indirizzo di posta elettronica della persona che riceve il messaggio di posta elettronica di approvazione. In Opzioni utente, inserire "Approve, Reject".

      Enter email details

Aggiungere un'azione switch

  1. Per questo esempio, aggiungere un'azione switch alla fine del flusso di lavoro di esempio. Dopo l'ultimo passaggio, scegliere Nuovo passaggio.

    Quando si desidera aggiungere un'azione switch tra i passaggi, spostare il puntatore sulla freccia in cui si desidera aggiungere l'azione switch. Scegliere il segno più (+) visualizzato, quindi Aggiungi un'azione.

  2. Nella casella di ricerca digitare "switch" come filtro. Selezionare questa azione: Switch - Controllo

    Add switch

    Viene visualizzata un'azione switch con un caso e un caso predefinito. Per impostazione predefinita, un'azione switch richiede almeno un caso più il caso predefinito.

    Empty default switch action

  3. Fare clic all'interno della casella On (Su) per visualizzare l'elenco di contenuti dinamici. Nell'elenco selezionare il campo SelectedOption il cui output determina l'azione da eseguire.

    Select

  4. Per gestire i case in cui il responsabile approvazione seleziona Approve o Reject, aggiungere un altro case tra Case e Predefinito.

    Add another case

  5. Aggiungere queste azioni ai case corrispondenti:

    N. case SelectedOption Azione
    Case 1 Approve Aggiungere l'azione Invia un messaggio di posta elettronica di Outlook per inviare i dettagli dell'elemento RSS solo quando il responsabile approvazione ha selezionato Approve.
    Caso 2 Reject Aggiungere l'azione Invia un messaggio di posta elettronica di Outlook per notificare agli altri responsabili approvazione che l'elemento RSS è stato rifiutato.
    Predefiniti None Nessuna azione necessaria. In questo esempio il case predefinito è vuoto perché SelectedOption ha solo due opzioni.

    Finished switch action

  6. Salvare l'app per la logica.

    Per testare manualmente questo esempio, scegliere Esegui finché l'app per la logica non trova un nuovo elemento RSS e invia un messaggio di posta elettronica di approvazione. Selezionare Approve per osservare i risultati.

Definizione JSON

Ora che è stata creata un'app per la logica usando un'azione switch, si esaminerà la definizione di codice di alto livello dietro l'azione switch.

"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"
      ]
   }
}
Etichetta Descrizione
"Switch" Nome dell'azione switch, che è possibile rinominare per la leggibilità
"type": "Switch" Specifica che l'azione è un'azione switch
"expression" In questo esempio specifica l'opzione selezionata dal responsabile approvazione che viene valutata in ogni case dichiarato successivamente nella definizione
"cases" Definisce qualsiasi numero di case. Per ogni case, "Case_*" è il nome predefinito di tale case, che è possibile rinominare per migliorare la leggibilità
"case" Specifica il valore del case, che deve essere un valore costante e univoco usato dall'azione switch per il confronto. Se nessun case corrisponde al risultato dell'espressione switch, vengono eseguite le azioni nella sezione "default".

Ottenere supporto

Passaggi successivi