Condividi tramite


Guida di riferimento alle funzioni nelle espressioni per i flussi di lavoro in App per la logica di Azure e Power Automate

Si applica a: Azure Logic Apps (Consumo + Standard)

Per la definizione dei flussi di lavoro in App per la logica di Azure e Power Automate, alcune espressioni ottengono i rispettivi valori da azioni di runtime che potrebbero non esistere all'inizio dell'esecuzione del flusso di lavoro. Per fare riferimento o elaborare i valori in queste espressioni, è possibile usare le funzioni di espressione fornite dal linguaggio di definizione del flusso di lavoro.

Annotazioni

Questa guida di riferimento si applica sia ad App per la logica di Azure che a Power Automate, ma esiste nella documentazione di App per la logica di Azure. Anche se la guida si riferisce in modo specifico ai flussi di lavoro delle app per la logica, queste funzioni funzionano sia per i flussi in Power Automate che per i flussi di lavoro in App per la logica di Azure. Per altre informazioni sulle funzioni e le espressioni in Power Automate, vedere Usare espressioni in condizioni.

È ad esempio possibile calcolare i valori usando le funzioni matematiche, ad esempio la funzione add() quando si desidera la somma di numeri interi o di float. Ecco altri esempi di attività che possono essere eseguite con le funzioni:

Attività Sintassi della funzione Risultato
Restituisce una stringa in formato minuscolo. toLower('<testo>')

Ad esempio toLower('Hello')
"hello"
Restituisce un identificatore univoco globale (GUID). guid() "c2ecc88d-88c8-4096-912c-d6f2e2b138ce"

Per trovare le funzioni in base all'utilizzo generico, esaminare le tabelle seguenti. Oppure, per informazioni dettagliate su ogni funzione, vedere l'elenco in ordine alfabetico.

Funzioni nelle espressioni

Per capire come usare una funzione in un’espressione, questo esempio mostra come ottenere il valore dal parametro customerName e assegnarlo alla proprietà accountName usando la funzione parameters() in un'espressione:

"accountName": "@parameters('customerName')"

Di seguito sono indicati altri modi generali per l'uso delle funzioni nelle espressioni:

Attività Sintassi della funzione in un'espressione
Eseguire operazioni con un elemento passandolo a una funzione. "@<funzioneNome>(<elemento>)"
1. Ottenere il valore di parameterName usando la funzione parameters() nidificata.
2. Eseguire il lavoro con il risultato passando tale valore a functionName.
"@<funzioneNome>(parametri('<parameterName>'))"
1. Ottenere il risultato dalla funzione interna annidata functionName.
2. Passare il risultato alla funzione esterna functionName2.
"@<functionName2>(<(><item>))"
1. Ottenere il risultato da functionName.
2. Dal momento che il risultato è un oggetto con proprietà propertyName, ottenere il valore della proprietà.
"@<funzioneNome>(<oggetto>).<NomeProprietà>"

Ad esempio, la funzione concat() può accettare due o più valori di stringa come parametri. Questa funzione combina queste stringhe in un'unica stringa. È possibile passare valori letterali di stringa, ad esempio, "Sophia" e "Owen", in modo da ottenere una stringa combinata, ovvero "SophiaOwen":

"customerName": "@concat('Sophia', 'Owen')"

In alternativa, è possibile ottenere i valori delle stringhe dai parametri. Questo esempio usa la funzione parameters() in ogni parametro concat() e i parametri firstName e lastName. Si passano quindi le stringhe risultanti alla funzione concat() in modo da ottenere una stringa combinata, ad esempio "SophiaOwen":

"customerName": "@concat(parameters('firstName'), parameters('lastName'))"

In entrambi i casi, gli esempi assegnano il risultato alla proprietà customerName.

Considerazioni sull'uso delle funzioni

  • La finestra di progettazione non valuta le espressioni di runtime usate come parametri di funzione in fase di progettazione. La finestra di progettazione richiede che tutte le espressioni possano essere valutate completamente in fase di progettazione.

  • I parametri della funzione sono valutati da sinistra a destra.

  • Nella sintassi per le definizioni dei parametri, un punto interrogativo (?) visualizzato dopo un parametro indica che il parametro è facoltativo. Vedere, ad esempio, getFutureTime().

  • Le espressioni di funzione visualizzate inline con testo normale richiedono invece di racchiudere parentesi graffe ({}) per usare il formato interpolato dell'espressione. Questo formato consente di evitare problemi di analisi. Se l'espressione di funzione non viene visualizzata inline con testo normale, non sono necessarie parentesi graffe.

    L'esempio seguente mostra la sintassi corretta ed errata:

    Corretta: "<text>/@{<function-name>('<parameter-name>')}/<text>"

    Non corretta: "<text>/@<function-name>('<parameter-name>')/<text>"

    OK:"@<function-name>('<parameter-name>')"

Le sezioni seguenti organizzano le funzioni in base al loro utilizzo generico, oppure è possibile esplorarle in ordine alfabetico.

Funzioni per i valori stringa

Per eseguire operazioni con le stringhe, è possibile usare queste funzioni di stringa e alcune funzioni di raccolta. Le funzioni di stringa funzionano solo sulle stringhe.

Funzione di stringa Attività
chunk Dividere una stringa o una raccolta in blocchi di lunghezza uguale.
concat Combina due o più stringhe e restituisce la stringa combinata.
endsWith Verifica se una stringa termina con la sottostringa specificata.
formatNumber Restituisce un numero come stringa in base al formato specificato
guid Generare un identificatore univoco globale (GUID) sotto forma di stringa.
indexOf Restituisce la posizione iniziale di una sottostringa.
isFloat Restituisce un valore booleano che indica se una stringa è un numero a virgola mobile.
isInt Restituisce un valore booleano che indica se una stringa è un numero intero.
lastIndexOf Restituisce la posizione iniziale o il valore di indice per l'ultima occorrenza di una sottostringa.
length Restituisce il numero di elementi in una stringa o matrice.
nthIndexOf Restituisce la posizione iniziale o il valore di indice in cui la na occorrenza di una sottostringa viene visualizzata in una stringa.
sostituire Sostituisce una sottostringa con la stringa specificata e restituisce la stringa aggiornata.
slice Restituisce una sottostringa specificando la posizione iniziale e finale o il valore. Vedere anche sottostringa.
suddividere Restituisce una matrice che contiene le sottostringhe, separate da virgole, da una stringa più grande in base al carattere delimitatore specificato nella stringa originale.
startsWith Verifica se una stringa inizia con una sottostringa specifica.
substring Restituisce i caratteri di una stringa, partendo dalla posizione specificata. Vedere anche sezione.
toLower Restituisce una stringa in formato minuscolo.
toUpper Restituisce una stringa in formato maiuscolo.
Trim Rimuove gli spazi iniziali e finali da una stringa e restituisce la stringa aggiornata.

Funzioni di raccolta

Per eseguire operazioni con le raccolte, generalmente matrici, stringhe e talvolta dizionari, è possibile usare queste funzioni di raccolta.

Funzione di raccolta Attività
chunk Dividere una stringa o una raccolta in blocchi di lunghezza uguale.
contiene Verifica se una raccolta include un elemento specifico.
empty Verifica se una raccolta è vuota.
primo Restituisce il primo elemento di una raccolta.
intersection Restituisce una raccolta che contiene solo gli elementi comuni alle raccolte specificate.
item Se questa funzione viene visualizzata all'interno di un'azione ripetuta su una matrice, restituire l'elemento corrente nella matrice durante l'iterazione corrente dell'azione.
unire Restituisce una stringa con tutti gli elementi di una matrice, separati dal carattere specificato.
ultimo Restituisce l'ultimo elemento di una raccolta.
length Restituisce il numero di elementi in una stringa o matrice.
reverse Invertire l'ordine degli elementi in una matrice.
skip Rimuove gli elementi dall'inizio di una raccolta e restituisce tutti gli altri elementi.
sort Ordinare gli elementi in una raccolta.
take Restituisce gli elementi dall'inizio di una raccolta.
union Restituisce una raccolta che contiene tutti gli elementi delle raccolte specificate.

Funzioni di confronto logico

Per eseguire operazioni con le condizioni, confrontare i valori e i risultati delle espressioni o valutare vari tipi di logica, è possibile usare queste funzioni di confronto logico. Per informazioni dettagliate su ogni funzione, vedere l'elenco in ordine alfabetico.

Annotazioni

Se si usano funzioni logiche o condizioni per confrontare i valori, i valori Null vengono convertiti in valori stringa vuota (""). Il comportamento delle condizioni è diverso quando si confronta con una stringa vuota anziché un valore Null. Per altre informazioni, vedere la funzione string().

Funzione di confronto logico Attività
e Verifica se tutte le espressioni sono true.
equals Verifica se entrambi i valori sono equivalenti.
maggiore Verifica se il primo valore è maggiore del secondo valore.
greaterOrEquals Verifica se il primo valore è maggiore o uguale al secondo valore.
if Verifica se un'espressione è true o false. In base al risultato, restituisce un valore specificato.
isFloat Restituisce un valore booleano che indica se una stringa è un numero a virgola mobile.
isInt Restituisce un valore booleano che indica se una stringa è un numero intero.
meno Verifica se il primo valore è minore del secondo valore.
minore o uguale Verifica se il primo valore è minore o uguale al secondo valore.
non Verifica se un'espressione è false.
o Verifica se almeno un'espressione è vera.

Funzioni di conversione

Per modificare il tipo o il formato di un valore, è possibile usare queste funzioni di conversione. Ad esempio, è possibile modificare un valore da booleano a intero. Per altre informazioni su come App per la logica di Azure gestisce i tipi di contenuto durante la conversione, vedere Gestire i tipi di contenuto. Per informazioni dettagliate su ogni funzione, vedere l'elenco in ordine alfabetico.

Annotazioni

App per la logica di Azure esegue automaticamente o in modo implicito la codifica e la decodifica base64, quindi non è necessario eseguire manualmente queste conversioni usando le funzioni di codifica e decodifica. Tuttavia, se si usano comunque queste funzioni nella finestra di progettazione, è possibile che si verifichino comportamenti di rendering imprevisti nella finestra di progettazione. Questi comportamenti influiscono solo sulla visibilità delle funzioni e non sul relativo effetto, a meno che non si modifichino i valori dei parametri delle funzioni, che rimuove le funzioni e i relativi effetti dal codice. Per altre informazioni vedere Conversioni implicite di tipi di dati.

Funzione di conversione Attività
array Restituisce una matrice da un singolo input specificato. Per più input, vedere createArray.
base64 Restituisce la versione di una stringa con codifica base64.
base64ToBinary Restituisce la versione binaria di una stringa con codifica base64.
base64ToString Restituisce la versione stringa di una stringa con codifica base64.
binario Restituisce la versione binaria di un valore di input.
Bool Restituisce la versione booleana di un valore di input.
createArray Restituisce una matrice da più input.
dataUri Restituisce l'URI dati di un valore di input.
dataUriToBinary Restituisce la versione binaria di un URI dati.
dataUriToString Restituisce la versione in formato stringa di un'URI di dati.
decimal Restituisce il numero decimale per una stringa decimale.
decodeBase64 Restituisce la versione stringa di una stringa con codifica base64.
decodeDataUri Restituisce la versione binaria di un URI dati.
decodeUriComponent Restituisce una stringa che sostituisce i caratteri di escape con le versioni decodificate.
encodeUriComponent Restituisce una stringa che sostituisce i caratteri non sicuri dell'URL con caratteri di escape.
float Restituisce un numero a virgola mobile per un valore di input.
Int Restituisce la versione integer di una stringa.
json Restituisce il valore o l'oggetto di tipo JSON (JavaScript Object Notation ) per una stringa o un elemento XML.
string Restituisce la versione stringa di un valore di input.
uriComponent Restituisce la versione codificata in formato URI per un valore di input sostituendo i caratteri non sicuri dell'URL con caratteri di escape.
uriComponentToBinary Restituisce la versione binaria di una stringa con codifica URI.
uriComponentToString Restituisce la versione stringa di una stringa con codifica URI.
XML Restituisce la versione XML di una stringa.

Conversioni implicite di tipi di dati

App per la logica di Azure converte automaticamente o in modo implicito tra alcuni tipi di dati, quindi non è necessario eseguire manualmente queste conversioni. Ad esempio, se si usano valori non stringa in cui sono previste le stringhe come input, App per la logica di Azure converte automaticamente i valori non stringa in stringhe.

Si supponga, ad esempio, che un trigger restituisca un valore numerico come output:

triggerBody()?['123']

Se si usa questo output numerico in cui è previsto l'input stringa, ad esempio un URL, App per la logica di Azure converte automaticamente il valore in una stringa usando la notazione parentesi graffe ({}):

@{triggerBody()?['123']}

Codifica e decodifica Base64

App per la logica di Azure esegue automaticamente o in modo implicito la codifica o la decodifica base64, pertanto non è necessario eseguire manualmente queste conversioni usando le funzioni corrispondenti:

  • base64(<value>)
  • base64ToBinary(<value>)
  • base64ToString(<value>)
  • base64(decodeDataUri(<value>))
  • concat('data:;base64,',<value>)
  • concat('data:,',encodeUriComponent(<value>))
  • decodeDataUri(<value>)

Annotazioni

Se si aggiunge manualmente una di queste funzioni durante l'uso della finestra di progettazione, direttamente a un trigger o a un'azione o usando l'editor di espressioni, ci si allontana dalla finestra di progettazione e quindi si torna alla finestra di progettazione, la funzione scompare dalla finestra di progettazione, lasciando dietro solo i valori dei parametri. Questo comportamento si verifica anche se si seleziona un trigger o un'azione che usa questa funzione senza modificare i valori dei parametri della funzione. Questo risultato influisce solo sulla visibilità della funzione e non sull'effetto. Nella visualizzazione codice la funzione non è interessata. Tuttavia, se si modificano i valori dei parametri della funzione, la funzione e il relativo effetto vengono entrambi rimossi dalla visualizzazione codice, lasciando dietro solo i valori dei parametri della funzione.

Funzioni matematiche

Per eseguire operazioni con numeri interi o float, è possibile usare queste funzioni matematiche. Per informazioni dettagliate su ogni funzione, vedere l'elenco in ordine alfabetico.

Funzione matematica Attività
aggiungi Restituisce il risultato della somma di due numeri.
div Restituisce il risultato della divisione di due numeri.
massimo Restituisce il valore più alto di un set di numeri o una matrice.
minuti Restituisce il valore più basso di un set di numeri o una matrice.
mod Restituisce il resto della divisione di due numeri.
mul Restituisce il prodotto della moltiplicazione di due numeri.
rand Restituisce un numero intero casuale da un intervallo specificato.
intervallo Restituisce una matrice di valori interi che inizia da un valore intero specificato.
sub Restituisce il risultato della sottrazione del secondo numero dal primo.

Funzioni di data e ora

Per eseguire operazioni con date e ore, è possibile usare queste funzioni di data e ora. Per informazioni dettagliate su ogni funzione, vedere l'elenco in ordine alfabetico.

Funzione di data e ora Attività
addDays Aggiungere giorni a un timestamp.
aggiungiOre Aggiungere ore a un timestamp.
aggiungiMinuti Aggiungere minuti a un timestamp.
addSeconds Aggiungere secondi a un timestamp.
addToTime Aggiungere unità di tempo specificate a un timestamp. Vedere anche getFutureTime.
convertFromUtc Converte un timestamp da UTC (Universal Time Coordinated) al fuso orario di destinazione.
convertTimeZone Converte un timestamp dal fuso orario di origine al fuso orario di destinazione.
convertToUtc Converte un timestamp dal fuso orario di origine a UTC (Universal Time Coordinated).
dateDifference Restituisce la differenza tra due date come intervallo di tempo.
dayOfMonth Restituisce il giorno del componente di mese di un timestamp.
dayOfWeek Restituisce il giorno del componente settimana di un timestamp.
dayOfYear Restituisce il giorno del componente anno di un timestamp.
formatDateTime Restituisce la data di un timestamp.
getFutureTime Restituisce il timestamp corrente più le unità di tempo specificate. Vedere anche addToTime.
getPastTime Restituisce il timestamp corrente meno le unità di tempo specificate. Vedere anche subtractFromTime.
parseDateTime Restituisce il timestamp da una stringa contenente un timestamp.
startOfDay Restituisce l'inizio del giorno per un timestamp.
startOfHour Restituisce l'inizio dell'ora per un timestamp.
startOfMonth Restituisce l'inizio del mese per un timestamp.
subtractFromTime Sottrae un numero di unità di tempo da un timestamp. Vedere anche getPastTime.
ticks Restituisce il valore della proprietà ticks per un timestamp specificato.
utcNow Restituisce il timestamp corrente come stringa.

Funzioni del flusso di lavoro

Queste funzioni del flusso di lavoro consentono di eseguire queste operazioni:

  • Ottenere dettagli su un'istanza del flusso di lavoro al momento dell'esecuzione.
  • Eseguire operazioni con gli input usati per creare istanze di app per la logica o dei flussi.
  • Fare riferimento agli output da azioni e trigger.

Ad esempio, è possibile fare riferimento agli output di un'azione e usare i dati in un'azione successiva. Per informazioni dettagliate su ogni funzione, vedere l'elenco in ordine alfabetico.

Funzione del flusso di lavoro Attività
action Restituisce l'output dell'azione corrente in fase di esecuzione o i valori di altre coppie di nomi e valori JSON. Vedere anche actions.
actions Restituisce l'output di un'azione in fase di esecuzione o i valori di altre coppie di nomi e valori JSON. Vedere anche action.
body Restituisce l'oggetto body di output di un'azione in fase di esecuzione.
formDataMultiValues Creare una matrice con i valori corrispondenti a un nome chiave negli ouput di azione form-data o form-encoded.
formDataValue Restituisce un singolo valore che corrisponde a un nome chiave nell'output form-data o form-encoded di un'azione.
item Se questa funzione viene visualizzata all'interno di un'azione ripetuta su una matrice, restituire l'elemento corrente nella matrice durante l'iterazione corrente dell'azione.
Elementi Se questa funzione viene visualizzata all'interno di un ciclo Foreach o Until, restituire l'elemento corrente dal ciclo specificato.
indiciDiIterazione Se questa funzione viene visualizzata all'interno di un ciclo Until, restituire il valore di indice per l'iterazione corrente. È possibile usare questa funzione all'interno di cicli Until annidati.
listCallbackUrl Restituisce l'"URL di callback" che chiama un trigger o un'azione.
multipartBody Restituisce il corpo per una parte specifica dell'output di un'azione con più parti.
output Restituisce l'output di un'azione in fase di esecuzione.
Parametri Restituisce il valore per un parametro descritto nella definizione del flusso di lavoro.
risultato Restituisce gli input e gli output dalle azioni di primo livello all'interno dell'azione con ambito specificata, ad esempio For_each, Until e Scope.
trigger Restituisce l'output di un trigger in fase di esecuzione o i valori di altre coppie di nomi e valori JSON. Vedere anche triggerOutputs e triggerBody.
triggerBody Restituisce l'oggetto body di output di un trigger in fase di esecuzione. Vedere trigger.
triggerFormDataValue Restituisce un singolo valore corrispondente a un nome di chiave negli output form-data o form-encoded del trigger.
triggerMultipartBody Restituisce il corpo di una parte specifica di un output a più parti di un trigger.
triggerFormDataMultiValues Crea una matrice i cui valori corrispondono a un nome di chiave negli output form-data o form-encoded di un trigger.
triggerOutputs Restituisce l'output di un trigger in fase di esecuzione o i valori di altre coppie nome-valore JSON. Vedere trigger.
variables Restituisce il valore per una variabile specificata.
workflow Restituisce tutti i dettagli del flusso di lavoro stesso in fase di esecuzione.

Funzioni di analisi dell'URI

Per eseguire operazioni con URI (Uniform Resource Identifier) e ottenere vari valori di proprietà per questi URI, è possibile usare queste funzioni di analisi dell'URI. Per informazioni dettagliate su ogni funzione, vedere l'elenco in ordine alfabetico.

Funzione di analisi dell'URI Attività
uriHost Restituisce il valore host per un URI (Uniform Resource Identifier).
uriPath Restituisce il valore path per un URI (Uniform Resource Identifier).
uriPathAndQuery Restituisce i valori path e query per un URI (Uniform Resource Identifier).
uriPort Restituisce il valore port per un URI (Uniform Resource Identifier).
uriQuery Restituisce il valore query per un URI (Uniform Resource Identifier).
uriScheme Restituisce il valore scheme per un URI (Uniform Resource Identifier).

Funzioni di manipolazione: JSON & XML

Per eseguire operazioni con gli oggetti JSON e i nodi XML, è possibile usare queste funzioni di manipolazione. Per informazioni dettagliate su ogni funzione, vedere l'elenco in ordine alfabetico.

Funzione di manipolazione Attività
addProperty Aggiunge una proprietà e il suo valore o una coppia nome-valore a un oggetto JSON e restituisce l'oggetto aggiornato.
coalesce Restituisce il primo valore non Null da uno o più parametri.
removeProperty Rimuove una proprietà da un oggetto JSON e restituisce l'oggetto aggiornato.
setProperty Imposta il valore per la proprietà di un oggetto JSON e restituisce l'oggetto aggiornato.
xpath Verifica nel codice XML la presenza di nodi o valori che corrispondono a un'espressione XPath (XML Path Language) e restituisce i nodi o i valori corrispondenti.

---------------------------------

Tutte le funzioni in ordine alfabetico

Questa sezione elenca tutte le funzioni disponibili in ordine alfabetico.

Una

action

Restituisce l'output dell'azione corrente in fase di esecuzione oppure i valori di altre coppie nome-valore JSON che è possibile assegnare a un'espressione. Per impostazione predefinita, questa funzione fa riferimento all'intero oggetto azione, ma è possibile specificare una proprietà con il valore desiderato. Vedere anche actions().

È possibile usare la funzione action() solo in queste posizioni:

  • Proprietà unsubscribe per un'azione webhook, in modo che sia possibile accedere al risultato dalla richiesta subscribe originale
  • Proprietà trackedProperties per un'azione
  • Condizione di ciclo do-until per un'azione
action()
action().outputs.body.<property>
Parametro Obbligatorio TIPO Descrizione
< proprietà> NO string Nome della proprietà dell'oggetto azione con il valore desiderato: name, startTime, endTime, inputs, outputs, status, code, trackingId e clientTrackingId. Nel portale di Azure è possibile trovare queste proprietà esaminando i dettagli di una cronologia di esecuzione specifica. Per altre informazioni, vedere REST API - Workflow Run Actions (API REST - Azioni di esecuzione del flusso di lavoro).
Valore restituito TIPO Descrizione
< Azione-Output> Oggetto Output dell'oggetto JSON dall'azione o dalla proprietà corrente

Azioni

Restituisce l'output di un'azione in fase di esecuzione oppure i valori di altre coppie nome-valore JSON che è possibile assegnare a un'espressione. Per impostazione predefinita, questa funzione fa riferimento all'intero oggetto azione, ma è possibile specificare una proprietà con il valore desiderato. Per le versioni abbreviate, vedere body(). Per l'azione corrente, vedere action().

Annotazioni

In precedenza, era possibile usare la funzione actions() o l'elemento conditions per specificare che un'azione veniva eseguita in base all'output di un'altra azione. Tuttavia, per dichiarare in modo esplicito le dipendenze tra le azioni, ora è necessario usare la proprietà runAfter dell'azione dipendente. Per altre informazioni sulla proprietà runAfter, vedere Rilevare e gestire gli errori con la proprietà RunAfter.

actions('<actionName>')
actions('<actionName>').outputs.body.<property>
Parametro Obbligatorio TIPO Descrizione
< actionName> string Nome per l'oggetto azione di cui si vuole ottenere l'output
< proprietà> NO string Nome della proprietà dell'oggetto azione con il valore desiderato: name, startTime, endTime, inputs, outputs, status, code, trackingId e clientTrackingId. Nel portale di Azure è possibile trovare queste proprietà esaminando i dettagli di una cronologia di esecuzione specifica. Per altre informazioni, vedere REST API - Workflow Run Actions (API REST - Azioni di esecuzione del flusso di lavoro).
Valore restituito TIPO Descrizione
< Azione-Output> Oggetto Output dell'oggetto JSON dall'azione o dalla proprietà specificata

Esempio

Questo esempio ottiene il valore della proprietà status dall'azione X Get user in fase di esecuzione:

actions('Get_user').outputs.body.status

E viene restituito questo risultato: "Succeeded"

Aggiungere

Restituisce il risultato della somma di due numeri.

add(<summand_1>, <summand_2>)
Parametro Obbligatorio TIPO Descrizione
< >summand_1, <summand_2> Integer, float o misto Numeri da sommare
Valore restituito TIPO Descrizione
< Somma dei risultati> Integer o float Risultato della somma dei numeri specificati

Esempio

Questo esempio somma i numeri specificati:

add(1, 1.5)

E viene restituito questo risultato: 2.5

addDays

Aggiungere giorni a un timestamp.

addDays('<timestamp>', <days>, '<format>'?)
Parametro Obbligatorio TIPO Descrizione
< Timestamp> string Stringa contenente il timestamp
< giorni> Integer Numero positivo o negativo di giorni da aggiungere
< formato> NO string Stringa di formato numerico che è un singolo identificatore di formato o un modello di formato personalizzato. Il formato predefinito per il timestamp è "o" (aaaa-MM-ddTHH:mm:ss:fffffffK), conforme a ISO 8601 e con informazioni sul fuso orario.

Se il formato non è un valore valido, viene generato un errore.
Valore restituito TIPO Descrizione
< Timestamp aggiornato> string Timestamp con l'aggiunta del numero di giorni specificato

Esempio 1

Questo esempio aggiunge 10 giorni al timestamp specificato:

addDays('2018-03-15T00:00:00Z', 10)

E viene restituito questo risultato: "2018-03-25T00:00:00.0000000Z"

Esempio 2

Questo esempio sottrae cinque giorni dal timestamp specificato:

addDays('2018-03-15T00:00:00Z', -5)

E viene restituito questo risultato: "2018-03-10T00:00:00.0000000Z"

addHours

Aggiungere ore a un timestamp.

addHours('<timestamp>', <hours>, '<format>'?)
Parametro Obbligatorio TIPO Descrizione
< Timestamp> string Stringa contenente il timestamp
< ore> Integer Numero positivo o negativo di ore da aggiungere
< formato> NO string Stringa di formato numerico che è un singolo identificatore di formato o un modello di formato personalizzato. Il formato predefinito per il timestamp è "o" (aaaa-MM-ddTHH:mm:ss:fffffffK), conforme a ISO 8601 e con informazioni sul fuso orario.

Se il formato non è un valore valido, viene generato un errore.
Valore restituito TIPO Descrizione
< Timestamp aggiornato> string Timestamp con l'aggiunta del numero di ore specificato

Esempio 1

Questo esempio aggiunge 10 ore al timestamp specificato:

addHours('2018-03-15T00:00:00Z', 10)

E viene restituito questo risultato: "2018-03-15T10:00:00.0000000Z"

Esempio 2

Questo esempio sottrae cinque ore dal timestamp specificato:

addHours('2018-03-15T15:00:00Z', -5)

E viene restituito questo risultato: "2018-03-15T10:00:00.0000000Z"

addMinutes

Aggiungere minuti a un timestamp.

addMinutes('<timestamp>', <minutes>, '<format>'?)
Parametro Obbligatorio TIPO Descrizione
< Timestamp> string Stringa contenente il timestamp
< minuti> Integer Numero positivo o negativo di minuti da aggiungere
< formato> NO string Stringa di formato numerico che è un singolo identificatore di formato o un modello di formato personalizzato. Il formato predefinito per il timestamp è "o" (aaaa-MM-ddTHH:mm:ss:fffffffK), conforme a ISO 8601 e con informazioni sul fuso orario.

Se il formato non è un valore valido, viene generato un errore.
Valore restituito TIPO Descrizione
< Timestamp aggiornato> string Timestamp con l'aggiunta del numero di minuti specificato

Esempio 1

Questo esempio aggiunge 10 minuti al timestamp specificato:

addMinutes('2018-03-15T00:10:00Z', 10)

E viene restituito questo risultato: "2018-03-15T00:20:00.0000000Z"

Esempio 2

Questo esempio sottrae cinque minuti dal timestamp specificato:

addMinutes('2018-03-15T00:20:00Z', -5)

E viene restituito questo risultato: "2018-03-15T00:15:00.0000000Z"

addProperty

Aggiunge una proprietà e il suo valore o una coppia nome-valore a un oggetto JSON e restituisce l'oggetto aggiornato. Se la proprietà esiste già nel runtime, la funzione ha esito negativo e genera un errore.

addProperty(<object>, '<property>', <value>)
Parametro Obbligatorio TIPO Descrizione
< oggetto> Oggetto Oggetto JSON a cui si vuole aggiungere una proprietà
< proprietà> string Nome della proprietà da aggiungere
< valore> Qualsiasi Valore per la proprietà
Valore restituito TIPO Descrizione
< oggetto aggiornato> Oggetto Oggetto JSON aggiornato con la proprietà specificata

Per aggiungere una proprietà padre a una proprietà esistente, usare la funzione setProperty(), non la funzione addProperty(). Altrimenti, la funzione restituisce solo l'oggetto figlio come output.

setProperty(<object>, '<parent-property>', addProperty(<object>['<parent-property>'], '<child-property>', <value>)
Parametro Obbligatorio TIPO Descrizione
< oggetto> Oggetto Oggetto JSON a cui si vuole aggiungere una proprietà
< Proprietà genitore> string Nome della proprietà padre in cui si desidera aggiungere la proprietà figlio
< Proprietà dei figli> string Nome della proprietà figlio da aggiungere
< valore> Qualsiasi Valore da impostare per la proprietà specificata
Valore restituito TIPO Descrizione
< oggetto aggiornato> Oggetto Oggetto JSON aggiornato di cui si imposta la proprietà

Esempio 1

Questo esempio aggiunge la proprietà middleName all'oggetto JSON, di cui viene eseguita la conversione da stringa a JSON con la funzione JSON(). L'oggetto include già le proprietà firstName e surName. La funzione assegna il valore specificato alla nuova proprietà e restituisce l'oggetto aggiornato:

addProperty(json('{ "firstName": "Sophia", "lastName": "Owen" }'), 'middleName', 'Anne')

Ecco l'oggetto JSON corrente:

{
   "firstName": "Sophia",
   "surName": "Owen"
}

Ecco l'oggetto JSON aggiornato:

{
   "firstName": "Sophia",
   "middleName": "Anne",
   "surName": "Owen"
}

Esempio 2

Questo esempio aggiunge la proprietà figlio middleName alla proprietà customerName esistente in un oggetto JSON, di cui viene eseguita la conversione da stringa a JSON con la funzione JSON(). La funzione assegna il valore specificato alla nuova proprietà e restituisce l'oggetto aggiornato:

setProperty(json('{ "customerName": { "firstName": "Sophia", "surName": "Owen" } }'), 'customerName', addProperty(json('{ "customerName": { "firstName": "Sophia", "surName": "Owen" } }')['customerName'], 'middleName', 'Anne'))

Ecco l'oggetto JSON corrente:

{
   "customerName": {
      "firstName": "Sophia",
      "surName": "Owen"
   }
}

Ecco l'oggetto JSON aggiornato:

{
   "customerName": {
      "firstName": "Sophia",
      "middleName": "Anne",
      "surName": "Owen"
   }
}

aggiungiSecondi

Aggiungere secondi a un timestamp.

addSeconds('<timestamp>', <seconds>, '<format>'?)
Parametro Obbligatorio TIPO Descrizione
< Timestamp> string Stringa contenente il timestamp
< secondi> Integer Numero positivo o negativo di secondi da aggiungere
< formato> NO string Stringa di formato numerico che è un singolo identificatore di formato o un modello di formato personalizzato. Il formato predefinito per il timestamp è "o" (aaaa-MM-ddTHH:mm:ss:fffffffK), conforme a ISO 8601 e con informazioni sul fuso orario.

Se il formato non è un valore valido, viene generato un errore.
Valore restituito TIPO Descrizione
< Timestamp aggiornato> string Timestamp con l'aggiunta del numero di secondi specificato

Esempio 1

Questo esempio aggiunge 10 secondi al timestamp specificato:

addSeconds('2018-03-15T00:00:00Z', 10)

E viene restituito questo risultato: "2018-03-15T00:00:10.0000000Z"

Esempio 2

Questo esempio sottrae cinque secondi dal timestamp specificato:

addSeconds('2018-03-15T00:00:30Z', -5)

E viene restituito questo risultato: "2018-03-15T00:00:25.0000000Z"

addToTime

Aggiungere le unità di tempo specificate a un timestamp. Vedere anche getFutureTime().

addToTime('<timestamp>', <interval>, '<timeUnit>', '<format>'?)
Parametro Obbligatorio TIPO Descrizione
< Timestamp> string Stringa contenente il timestamp
< intervallo> Integer Numero di unità di tempo specificate da aggiungere
< timeUnit> string Unità di tempo da usare con interval: "Second", "Minute", "Hour", "Day", "Week", "Month", "Year"
< formato> NO string Stringa di formato numerico che è un singolo identificatore di formato o un modello di formato personalizzato. Il formato predefinito per il timestamp è "o" (aaaa-MM-ddTHH:mm:ss:fffffffK), conforme a ISO 8601 e con informazioni sul fuso orario.

Se il formato non è un valore valido, viene generato un errore.
Valore restituito TIPO Descrizione
< Timestamp aggiornato> string Timestamp con l'aggiunta del numero di unità di tempo specificato

Esempio 1

Questo esempio aggiunge un giorno al timestamp specificato:

addToTime('2018-01-01T00:00:00Z', 1, 'Day')

E viene restituito questo risultato: "2018-01-02T00:00:00.0000000Z"

Esempio 2

Questo esempio aggiunge un giorno al timestamp specificato:

addToTime('2018-01-01T00:00:00Z', 1, 'Day', 'D')

E restituisce il risultato usando il formato "D" facoltativo: "Tuesday, January 2, 2018"

e

Verifica se tutte le espressioni sono true. Restituisce true se tutte le espressioni sono true o false se almeno un'espressione è false.

and(<expression1>, <expression2>, ...)
Parametro Obbligatorio TIPO Descrizione
< Espressione1>, <Espressione2>, ... Boolean Espressioni da verificare
Valore restituito TIPO Descrizione
vero o falso Boolean Restituisce true se tutte le espressioni sono true. Restituisce false se almeno un'espressione è false.

Esempio 1

Questi esempi verificano se i valori booleani specificati sono tutti true:

and(true, true)
and(false, true)
and(false, false)

E vengono restituiti questi risultati:

  • Primo esempio: entrambe le espressioni sono true, quindi restituisce true.
  • Secondo esempio: una espressione è false, quindi restituisce false.
  • Terzo esempio: entrambe le espressioni sono false, quindi restituisce false.

Esempio 2

Questi esempi verificano se le espressioni specificate sono tutte true:

and(equals(1, 1), equals(2, 2))
and(equals(1, 1), equals(1, 2))
and(equals(1, 2), equals(1, 3))

E vengono restituiti questi risultati:

  • Primo esempio: entrambe le espressioni sono true, quindi restituisce true.
  • Secondo esempio: una espressione è false, quindi restituisce false.
  • Terzo esempio: entrambe le espressioni sono false, quindi restituisce false.

array

Restituisce una matrice da un singolo input specificato. Per più input, vedere createArray().

array('<value>')
Parametro Obbligatorio TIPO Descrizione
< valore> string Stringa per la creazione di una matrice
Valore restituito TIPO Descrizione
[<valore>] Array Matrice che contiene il singolo input specificato

Esempio

Questo esempio crea una matrice dalla stringa "hello":

array('hello')

E viene restituito questo risultato: ["hello"]

b

base64

Restituisce la versione di una stringa con codifica base64.

Annotazioni

App per la logica di Azure esegue automaticamente o in modo implicito la codifica e la decodifica base64, quindi non è necessario eseguire manualmente queste conversioni usando le funzioni di codifica e decodifica. Tuttavia, se si usano comunque queste funzioni, è possibile che si verifichino comportamenti di rendering imprevisti nella finestra di progettazione. Questi comportamenti influiscono solo sulla visibilità delle funzioni e non sul relativo effetto, a meno che non si modifichino i valori dei parametri delle funzioni, che rimuove le funzioni e i relativi effetti dal codice. Per altre informazioni, vedere Codifica e decodifica Base64.

base64('<value>')
Parametro Obbligatorio TIPO Descrizione
< valore> string Stringa di input
Valore restituito TIPO Descrizione
< Base 64 corde> string Versione della stringa di input con codifica base64

Esempio

Questo esempio converte la stringa "hello" in una stringa con codifica base64:

base64('hello')

E viene restituito questo risultato: "aGVsbG8="

base64ToBinary

Restituisce la versione binaria di una stringa con codifica base64.

Annotazioni

App per la logica di Azure esegue automaticamente o in modo implicito la codifica e la decodifica base64, quindi non è necessario eseguire manualmente queste conversioni usando le funzioni di codifica e decodifica. Tuttavia, se si usano comunque queste funzioni nella finestra di progettazione, è possibile che si verifichino comportamenti di rendering imprevisti nella finestra di progettazione. Questi comportamenti influiscono solo sulla visibilità delle funzioni e non sul relativo effetto, a meno che non si modifichino i valori dei parametri delle funzioni, che rimuove le funzioni e i relativi effetti dal codice. Per altre informazioni, vedere Codifica e decodifica Base64.

base64ToBinary('<value>')
Parametro Obbligatorio TIPO Descrizione
< valore> string Stringa con codifica base64 da convertire
Valore restituito TIPO Descrizione
< binario per base64-string> string Versione binaria della stringa con codifica base64

Esempio

Questo esempio converte la stringa "aGVsbG8=" con codifica base64 in una stringa binaria:

base64ToBinary('aGVsbG8=')

Si supponga, ad esempio, di usare un'azione HTTP per inviare una richiesta. È possibile usare base64ToBinary() per convertire una stringa con codifica Base64 in dati binari e inviare tali dati usando il tipo di contenuto application/octet-stream nella richiesta.

base64ToString

Restituisce la versione stringa di una stringa con codifica base64, decodificando in modo efficace la stringa base64. Usare questa funzione al posto di decodeBase64(), che è deprecata.

Annotazioni

App per la logica di Azure esegue automaticamente o in modo implicito la codifica e la decodifica base64, quindi non è necessario eseguire manualmente queste conversioni usando le funzioni di codifica e decodifica. Tuttavia, se si usano comunque queste funzioni nella finestra di progettazione, è possibile che si verifichino comportamenti di rendering imprevisti nella finestra di progettazione. Questi comportamenti influiscono solo sulla visibilità delle funzioni e non sul relativo effetto, a meno che non si modifichino i valori dei parametri delle funzioni, che rimuove le funzioni e i relativi effetti dal codice. Per altre informazioni, vedere Codifica e decodifica Base64.

base64ToString('<value>')
Parametro Obbligatorio TIPO Descrizione
< valore> string Stringa con codifica base64 da decodificare
Valore restituito TIPO Descrizione
< decodificato-base64-string> string Versione stringa di una stringa con codifica base64

Esempio

Questo esempio converte la stringa "aGVsbG8=" con codifica base64 in una semplice stringa:

base64ToString('aGVsbG8=')

E viene restituito questo risultato: "hello"

binario

Restituisce la versione binaria con codifica Base64 di una stringa.

binary('<value>')
Parametro Obbligatorio TIPO Descrizione
< valore> string Stringa da convertire
Valore restituito TIPO Descrizione
< binario-per-valore di input> string Versione binaria con codifica Base64 per la stringa specificata

Esempio

Ad esempio, si usa un'azione HTTP che restituisce un'immagine o un file video. È possibile usare binary() per convertire il valore in un modello di busta di contenuto con codifica base 64. È quindi possibile riutilizzare la busta di contenuto in altre azioni, ad esempio Compose. È possibile usare questa espressione di funzione per inviare i byte stringa con il tipo di contenuto application/octet-stream nella richiesta.

Corpo

Restituisce l'oggetto body di output di un'azione in fase di esecuzione. Sintassi abbreviata per actions('<actionName>').outputs.body. Vedere actions().

body('<actionName>')
Parametro Obbligatorio TIPO Descrizione
< actionName> string Nome per l'oggetto body di output dell'azione desiderato
Valore restituito TIPO Descrizione
< Azione-corpo-uscita> string Oggetto body di output dell'azione specificata

Esempio

Questo esempio ottiene l'output body dall'azione X Get user:

body('Get_user')

E viene restituito questo risultato:

"body": {
    "FullName": "Contoso Corporation",
    "Location": "Generic Town, USA",
    "Id": 283541717,
    "UserName": "ContosoInc",
    "FollowersCount": 172,
    "Description": "Leading the way in transforming the digital workplace.",
    "StatusesCount": 93,
    "FriendsCount": 126,
    "FavouritesCount": 46,
    "ProfileImageUrl": "https://pbs.twimg.com/profile_images/908820389907722240/gG9zaHcd_400x400.jpg"
}

bool

Restituisce la versione booleana di un valore.

bool(<value>)
Parametro Obbligatorio TIPO Descrizione
< valore> Qualsiasi Valore da convertire in booleano.

Se si usa bool() con un oggetto, il valore dell'oggetto deve essere una stringa o un numero intero che può essere convertito in booleano.

Valore restituito TIPO Descrizione
true o false Boolean Versione booleana del valore specificato.

Risultati

Questi esempi mostrano i diversi tipi di input supportati per bool():

Valore di input TIPO Valore restituito
bool(1) Integer true
bool(0) Integer false
bool(-1) Integer true
bool('true') string true
bool('false') string false

C

blocco

Dividere una stringa o una matrice in blocchi di lunghezza uguale.

chunk('<collection>', '<length>')
chunk([<collection>], '<length>')
Parametro Obbligatorio TIPO Descrizione
< raccolta> String o array Raccolta da dividere
< durata> Lunghezza di ogni blocco
Valore restituito TIPO Descrizione
< raccolta> Array Matrice di blocchi con la lunghezza specificata

Esempio 1

Questo esempio suddivide una stringa in blocchi di lunghezza 10:

chunk('abcdefghijklmnopqrstuvwxyz', 10)

E viene restituito questo risultato: ['abcdefghij', 'klmnopqrst', 'uvwxyz']

Esempio 2

Questo esempio suddivide una matrice in blocchi di lunghezza 5.

chunk(createArray(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12), 5)

E viene restituito questo risultato: [ [1,2,3,4,5], [6,7,8,9,10], [11,12] ]

coalesce

Restituisce il primo valore non Null da uno o più parametri. Le stringhe vuote, le matrici vuote e gli oggetti vuoti non sono Null.

coalesce(<object_1>, <object_2>, ...)
Parametro Obbligatorio TIPO Descrizione
< >object_1, <object_2>, ... Qualsiasi, è possibile una combinazione di tipi Uno o più elementi da verificare per determinare se sono Null
Valore restituito TIPO Descrizione
< Primo-non-nullo-elemento> Qualsiasi Primo elemento o valore che non è Null. Se tutti i parametri sono Null, questa funzione restituisce Null.

Esempio

Questi esempi restituiscono il primo valore non Null dai valori specificati oppure Null quando tutti i valori sono Null:

coalesce(null, true, false)
coalesce(null, 'hello', 'world')
coalesce(null, null, null)

E vengono restituiti questi risultati:

  • Primo esempio: true
  • Secondo esempio: "hello"
  • Terzo esempio: null

concat

Combina due o più stringhe e restituisce la stringa combinata.

concat('<text1>', '<text2>', ...)
Parametro Obbligatorio TIPO Descrizione
< testo1>, <messaggio2>, ... string Almeno due stringhe da combinare
Valore restituito TIPO Descrizione
< messaggio1testo2...> string Stringa creata dalle stringhe di input combinate.



Nota: la lunghezza del risultato non deve superare 104.857.600 caratteri.

Annotazioni

App per la logica di Azure esegue automaticamente o in modo implicito la codifica e la decodifica base64, quindi non è necessario eseguire manualmente queste conversioni quando si usa la funzione concat() con i dati che devono essere codificati o decodificati:

  • concat('data:;base64,',<value>)
  • concat('data:,',encodeUriComponent(<value>))

Tuttavia, se si usa comunque questa funzione nella finestra di progettazione, è possibile che si verifichino comportamenti di rendering imprevisti nella finestra di progettazione. Questi comportamenti influiscono solo sulla visibilità della funzione e non sull'effetto, a meno che non si modifichino i valori dei parametri della funzione, che rimuove la funzione e l'effetto dal codice. Per altre informazioni, vedere Codifica e decodifica Base64.

Esempio

Questo esempio combina le stringhe "Hello" e "World":

concat('Hello', 'World')

E viene restituito questo risultato: "HelloWorld"

contains

Verifica se una raccolta include un elemento specifico. Restituisce true se l'elemento viene trovato o false se non viene trovato. Questa funzione fa distinzione tra maiuscole e minuscole.

contains('<collection>', '<value>')
contains([<collection>], '<value>')

In particolare, questa funzione può essere usata con questi tipi di raccolta:

  • Una stringa per trovare una sottostringa
  • Una matrice per trovare un valore
  • Un dizionario per trovare una chiave
Parametro Obbligatorio TIPO Descrizione
< raccolta> String, array o dictionary Raccolta da verificare
< valore> String, array o dictionary, rispettivamente Elemento da trovare
Valore restituito TIPO Descrizione
vero o falso Boolean Restituisce true se l'elemento viene trovato. Restituisce false se l'elemento non viene trovato.

Esempio 1

Questo esempio verifica la stringa "hello world" per cercare la sottostringa "world" e restituisce true:

contains('hello world', 'world')

Esempio 2

Questo esempio verifica la stringa "hello world" per cercare la sottostringa "universe" e restituisce false:

contains('hello world', 'universe')

convertFromUtc

Converte un timestamp da UTC (Universal Time Coordinated) al fuso orario di destinazione.

convertFromUtc('<timestamp>', '<destinationTimeZone>', '<format>'?)
Parametro Obbligatorio TIPO Descrizione
< Timestamp> string Stringa contenente il timestamp
< destinationTimeZone> string Nome del fuso orario di destinazione. Per i nomi del fuso orario, vedere Fusi orari predefiniti di Microsoft Windows.
< formato> NO string Stringa di formato numerico che è un singolo identificatore di formato o un modello di formato personalizzato. Il formato predefinito per il timestamp è "o" (aaaa-MM-ddTHH:mm:ss:fffffffK), conforme a ISO 8601 e con informazioni sul fuso orario.

Se il formato non è un valore valido, viene generato un errore.
Valore restituito TIPO Descrizione
< timestamp convertito> string Timestamp convertito nel fuso orario di destinazione senza l'offset UTC del fuso orario.

Esempio 1

Questo esempio converte un timestamp nel fuso orario specificato:

convertFromUtc('2018-01-01T08:00:00.0000000Z', 'Pacific Standard Time')

E viene restituito questo risultato: "2018-01-01T00:00:00.0000000"

Esempio 2

Questo esempio converte un timestamp nel fuso orario e nel formato specificati:

convertFromUtc('2018-01-01T08:00:00.0000000Z', 'Pacific Standard Time', 'D')

E viene restituito questo risultato: "Monday, January 1, 2018"

convertTimeZone

Converte un timestamp dal fuso orario di origine al fuso orario di destinazione.

convertTimeZone('<timestamp>', '<sourceTimeZone>', '<destinationTimeZone>', '<format>'?)
Parametro Obbligatorio TIPO Descrizione
< Timestamp> string Stringa contenente il timestamp
< sourceTimeZone> string Nome del fuso orario di origine. Per i nomi del fuso orario, vedi Fusi orari predefiniti di Microsoft Windows, ma potrebbe essere necessario rimuovere qualsiasi punteggiatura dal nome del fuso orario.
< destinationTimeZone> string Nome del fuso orario di destinazione. Per i nomi del fuso orario, vedi Fusi orari predefiniti di Microsoft Windows, ma potrebbe essere necessario rimuovere qualsiasi punteggiatura dal nome del fuso orario.
< formato> NO string Stringa di formato numerico che è un singolo identificatore di formato o un modello di formato personalizzato. Il formato predefinito per il timestamp è "o" (aaaa-MM-ddTHH:mm:ss:fffffffK), conforme a ISO 8601 e con informazioni sul fuso orario.

Se il formato non è un valore valido, viene generato un errore.
Valore restituito TIPO Descrizione
< timestamp convertito> string Timestamp convertito nel fuso orario di destinazione

Esempio 1

Questo esempio converte il fuso orario di origine nel fuso orario di destinazione:

convertTimeZone('2018-01-01T08:00:00.0000000Z', 'UTC', 'Pacific Standard Time')

E viene restituito questo risultato: "2018-01-01T00:00:00.0000000"

Esempio 2

Questo esempio converte un fuso orario nel fuso orario e nel formato specificati:

convertTimeZone('2018-01-01T80:00:00.0000000Z', 'UTC', 'Pacific Standard Time', 'D')

E viene restituito questo risultato: "Monday, January 1, 2018"

convertToUtc

Converte un timestamp dal fuso orario di origine a UTC (Universal Time Coordinated).

convertToUtc('<timestamp>', '<sourceTimeZone>', '<format>'?)
Parametro Obbligatorio TIPO Descrizione
< Timestamp> string Stringa contenente il timestamp
< sourceTimeZone> string Nome del fuso orario di origine. Per i nomi del fuso orario, vedi Fusi orari predefiniti di Microsoft Windows, ma potrebbe essere necessario rimuovere qualsiasi punteggiatura dal nome del fuso orario.
< formato> NO string Stringa di formato numerico che è un singolo identificatore di formato o un modello di formato personalizzato. Il formato predefinito per il timestamp è "o" (aaaa-MM-ddTHH:mm:ss:fffffffK), conforme a ISO 8601 e con informazioni sul fuso orario.

Se il formato non è un valore valido, viene generato un errore.
Valore restituito TIPO Descrizione
< timestamp convertito> string Timestamp convertito nell'ora UTC

Esempio 1

Questo esempio converte un timestamp nell'ora UTC:

convertToUtc('01/01/2018 00:00:00', 'Pacific Standard Time')

E viene restituito questo risultato: "2018-01-01T08:00:00.0000000Z"

Esempio 2

Questo esempio converte un timestamp nell'ora UTC:

convertToUtc('01/01/2018 00:00:00', 'Pacific Standard Time', 'D')

E viene restituito questo risultato: "Monday, January 1, 2018"

createArray

Restituisce una matrice da più input. Per le matrici con input singolo, vedere array().

createArray('<object1>', '<object2>', ...)
Parametro Obbligatorio TIPO Descrizione
< oggetto1>, <oggetto2>, ... Qualsiasi, ma non sono possibili combinazioni di tipi Almeno due elementi per creare la matrice
Valore restituito TIPO Descrizione
[<oggetto1>, <oggetto2>, ...] Array Matrice creata da tutti gli elementi di input

Esempio

Questo esempio crea una matrice da questi input:

createArray('h', 'e', 'l', 'l', 'o')

E viene restituito questo risultato: ["h", "e", "l", "l", "o"]

D

dataUri

Restituisce un URI (Uniform Resource Identifier) di dati per una stringa.

dataUri('<value>')
Parametro Obbligatorio TIPO Descrizione
< valore> string Stringa da convertire
Valore restituito TIPO Descrizione
< data-uri> string URI di dati per la stringa di input

Esempio

Questo esempio crea un URI di dati per la stringa "hello":

dataUri('hello')

E viene restituito questo risultato: "data:text/plain;charset=utf-8;base64,aGVsbG8="

dataUriToBinary

Restituisce la versione binaria di un URI (Uniform Resource Identifier) di dati. Usare questa funzione al posto di decodeDataUri(). Anche se entrambe le funzioni hanno un comportamento analogo, è preferibile usare dataUriBinary().

dataUriToBinary('<value>')
Parametro Obbligatorio TIPO Descrizione
< valore> string URI di dati da convertire
Valore restituito TIPO Descrizione
< binary-for-data-uri> string Versione binaria dell'URI di dati

Esempio

Questo esempio crea una versione binaria di questo URI di dati:

dataUriToBinary('data:text/plain;charset=utf-8;base64,aGVsbG8=')

E viene restituito questo risultato:

"01100100011000010111010001100001001110100111010001100101011110000111010000101111011100000 1101100011000010110100101101110001110110110001101101000011000010111001001110011011001010111 0100001111010111010101110100011001100010110100111000001110110110001001100001011100110110010 10011011000110100001011000110000101000111010101100111001101100010010001110011100000111101"

dataUriToString

Restituisce la versione stringa di un URI (Uniform Resource Identifier) di dati.

dataUriToString('<value>')
Parametro Obbligatorio TIPO Descrizione
< valore> string URI di dati da convertire
Valore restituito TIPO Descrizione
< string-for-data-uri> string Versione stringa dell'URI di dati

Esempio

Questo esempio crea una stringa per questo URI di dati:

dataUriToString('data:text/plain;charset=utf-8;base64,aGVsbG8=')

E viene restituito questo risultato: "hello"

dateDifference

Restituisce la differenza tra due timestamp come intervallo di tempo. Questa funzione sottrae startDate da endDate e restituisce il risultato come timestamp in formato stringa.

dateDifference('<startDate>', '<endDate>')
Parametro Obbligatorio TIPO Descrizione
< Data di inizio> string Stringa contenente un timestamp
< Fine Giorno> string Stringa contenente un timestamp
Valore restituito TIPO Descrizione
< Intervallo di tempo> string Differenza tra i due timestamp, ovvero un timestamp in formato stringa. Se startDate è più recente di endDate, il risultato è un valore negativo.

Esempio

In questo esempio viene sottratto il primo valore dal secondo valore:

dateDifference('2015-02-08', '2018-07-30')

E viene restituito questo risultato: "1268.00:00:00"

dayOfMonth

Restituisce il giorno del mese da un timestamp.

dayOfMonth('<timestamp>')
Parametro Obbligatorio TIPO Descrizione
< Timestamp> string Stringa contenente il timestamp
Valore restituito TIPO Descrizione
< giorno del mese> Integer Giorno del mese dal timestamp specificato

Esempio

Questo esempio restituisce il numero del giorno del mese da questo timestamp:

dayOfMonth('2018-03-15T13:27:36Z')

E viene restituito questo risultato: 15

dayOfWeek

Restituisce il giorno della settimana da un timestamp.

dayOfWeek('<timestamp>')
Parametro Obbligatorio TIPO Descrizione
< Timestamp> string Stringa contenente il timestamp
Valore restituito TIPO Descrizione
< giorno della settimana> Integer Giorno della settimana dal timestamp specificato, dove domenica corrisponde a 0, lunedì a 1 e così via

Esempio

Questo esempio restituisce il numero del giorno della settimana da questo timestamp:

dayOfWeek('2018-03-15T13:27:36Z')

E viene restituito questo risultato: 4

giornoDellAnno

Restituisce il giorno dell'anno da un timestamp.

dayOfYear('<timestamp>')
Parametro Obbligatorio TIPO Descrizione
< Timestamp> string Stringa contenente il timestamp
Valore restituito TIPO Descrizione
< giorno dell'anno> Integer Giorno dell'anno dal timestamp specificato

Esempio

Questo esempio restituisce il numero del giorno dell'anno da questo timestamp:

dayOfYear('2018-03-15T13:27:36Z')

E viene restituito questo risultato: 74

decimal

Restituisce un numero decimale in una stringa come numero decimale. È possibile usare questa funzione quando si usano dati che richiedono precisione decimale e anche come input per funzioni di confronto logiche e funzioni matematiche. Per acquisire e mantenere la precisione quando si usa il risultato della funzione decimal(), eseguire il wrapping di qualsiasi output decimale con la funzione stringa. Questo utilizzo è illustrato negli esempi seguenti in cui è possibile perdere precisione se si usa il risultato decimale come numero.

Annotazioni

La precisione decimale descritta nel contesto per questa funzione e il runtime di App per la logica di Azure corrisponde alla precisione decimale .NET.

decimal('<value>')
Parametro Obbligatorio TIPO Descrizione
< valore> string Numero decimale in una stringa
Valore restituito TIPO Descrizione
< decimale> Numero decimale Numero decimale per la stringa di input

Esempio 1

In questo esempio viene creato un separatore decimale usato come numero:

decimal('1.2345678912312131') // Returns 1.234567891231213.

Esempio 2

Questo esempio crea un decimale e quindi converte il risultato in una stringa per la conservazione della precisione:

string(decimal('1.2345678912312131')) // Returns "1.2345678912312131".

esempio 3

Questo esempio usa una funzione matematica su due numeri decimali e usa il risultato come numero:

add(decimal('1.2345678912312131'), decimal('1.2345678912312131')) // Returns 2.469135782462426.

Esempio 4

Questo esempio usa una funzione matematica su due numeri decimali e converte il risultato in una stringa per la conservazione della precisione:

string(add(decimal('1.2345678912312131'), decimal('1.2345678912312131'))) // Returns "2.4691357824624262".

decodeBase64 (deprecata)

Questa funzione è deprecata, quindi usare invece base64ToString().

decodeDataUri

Restituisce la versione binaria di un URI (Uniform Resource Identifier) di dati. Usare dataUriToBinary() al posto di decodeDataUri(). Anche se entrambe le funzioni hanno un comportamento analogo, è preferibile usare dataUriToBinary().

Annotazioni

App per la logica di Azure esegue automaticamente o in modo implicito la codifica e la decodifica base64, quindi non è necessario eseguire manualmente queste conversioni usando le funzioni di codifica e decodifica. Tuttavia, se si usano comunque queste funzioni nella finestra di progettazione, è possibile che si verifichino comportamenti di rendering imprevisti nella finestra di progettazione. Questi comportamenti influiscono solo sulla visibilità delle funzioni e non sul relativo effetto, a meno che non si modifichino i valori dei parametri delle funzioni, che rimuove le funzioni e i relativi effetti dal codice. Per altre informazioni, vedere Codifica e decodifica Base64.

decodeDataUri('<value>')
Parametro Obbligatorio TIPO Descrizione
< valore> string Stringa dell'URI di dati da decodificare
Valore restituito TIPO Descrizione
< binary-for-data-uri> string Versione binaria di una stringa di URI di dati

Esempio

Questo esempio crea la versione binaria per questo URI di dati:

decodeDataUri('data:text/plain;charset=utf-8;base64,aGVsbG8=')

E viene restituito questo risultato: "hello"

decodeUriComponent

Restituisce una stringa che sostituisce i caratteri di escape con le versioni decodificate.

decodeUriComponent('<value>')
Parametro Obbligatorio TIPO Descrizione
< valore> string Stringa con i caratteri di escape da decodificare
Valore restituito TIPO Descrizione
< decodificato-uri> string Stringa aggiornata con i caratteri di escape decodificati

Esempio

Questo esempio sostituisce i caratteri di escape in questa stringa con le versioni decodificate:

decodeUriComponent('https%3A%2F%2Fcontoso.com')

E viene restituito questo risultato: "https://contoso.com"

div

Restituisce il risultato della divisione di due numeri. Per ottenere il resto, vedere mod().

div(<dividend>, <divisor>)
Parametro Obbligatorio TIPO Descrizione
< dividendo> Integer o float Numero da dividere per l'oggetto divisor
< divisore> Integer o float Numero che divide il dividendo, ma non può essere zero
Valore restituito TIPO Descrizione
< Risultato quoziente> Integer o float Risultato della divisione del primo numero per il secondo numero. Se il dividendo o il divisore ha tipo Float, il risultato ha tipo Float.



Nota: per convertire il risultato float in un numero intero, provare a creare e chiamare una funzione in Azure dall'app per la logica.

Esempio 1

Entrambi gli esempi restituiscono questo valore con tipo Integer: 2

div(10,5)
div(11,5)

Esempio 2

Entrambi gli esempi restituiscono questo valore con tipo Float: 2.2

div(11,5.0)
div(11.0,5)

E

encodeUriComponent

Restituisce la versione con codifica URI (Uniform Resource Identifier) per una stringa sostituendo i caratteri non sicuri per gli URL con caratteri di escape. Usare uriComponent() al posto di encodeUriComponent(). Anche se entrambe le funzioni hanno un comportamento analogo, è preferibile usare uriComponent().

Annotazioni

App per la logica di Azure esegue automaticamente o in modo implicito la codifica e la decodifica base64, quindi non è necessario eseguire manualmente queste conversioni usando le funzioni di codifica e decodifica. Tuttavia, se si usano comunque queste funzioni nella finestra di progettazione, è possibile che si verifichino comportamenti di rendering imprevisti nella finestra di progettazione. Questi comportamenti influiscono solo sulla visibilità delle funzioni e non sul relativo effetto, a meno che non si modifichino i valori dei parametri delle funzioni, che rimuove le funzioni e i relativi effetti dal codice. Per altre informazioni, vedere Codifica e decodifica Base64.

encodeUriComponent('<value>')
Parametro Obbligatorio TIPO Descrizione
< valore> string Stringa da convertire nel formato con codifica URI
Valore restituito TIPO Descrizione
< encoded-uri> string Stringa con codifica URI con i caratteri di escape

Esempio

Questo esempio crea una versione con codifica URI per questa stringa:

encodeUriComponent('https://contoso.com')

E viene restituito questo risultato: "https%3A%2F%2Fcontoso.com"

empty

Verifica se una raccolta è vuota. Restituisce true se la raccolta è vuota o false se non lo è.

empty('<collection>')
empty([<collection>])
Parametro Obbligatorio TIPO Descrizione
< raccolta> String, array o object Raccolta da verificare
Valore restituito TIPO Descrizione
vero o falso Boolean Restituisce true se la raccolta è vuota. Restituisce false se non è vuota.

Esempio

Questi esempi verificano se le raccolte specificate sono vuote:

empty('')
empty('abc')

E vengono restituiti questi risultati:

  • Primo esempio: passa una stringa vuota, quindi la funzione restituisce true.
  • Secondo esempio: passa la stringa "abc", quindi la funzione restituisce false.

endsWith

Verifica se una stringa termina con una sottostringa specifica. Restituisce true se la sottostringa viene trovata o false se non viene trovata. Questa funzione non fa distinzione tra maiuscole e minuscole.

endsWith('<text>', '<searchText>')
Parametro Obbligatorio TIPO Descrizione
< Testo> string Stringa da verificare
< searchText> string Sottostringa finale da trovare
Valore restituito TIPO Descrizione
vero o falso Boolean Restituisce true se la sottostringa finale viene trovata. Restituisce false se l'elemento non viene trovato.

Esempio 1

Questo esempio verifica se la stringa "hello world" termina con la stringa "world":

endsWith('hello world', 'world')

E viene restituito questo risultato: true

Esempio 2

Questo esempio verifica se la stringa "hello world" termina con la stringa "universe":

endsWith('hello world', 'universe')

E viene restituito questo risultato: false

equals

Verifica se entrambi i valori, le espressioni o gli oggetti sono equivalenti. Restituisce true se entrambi gli elementi sono equivalenti o false se non lo sono.

equals('<object1>', '<object2>')
Parametro Obbligatorio TIPO Descrizione
< oggetto1>, <oggetto2> Vari Valori, espressioni o oggetti da confrontare
Valore restituito TIPO Descrizione
vero o falso Boolean Restituisce true se entrambi gli elementi sono equivalenti. Restituisce false se gli elementi non sono equivalenti.

Esempio

Questi esempi verificano se gli input specificati sono equivalenti.

equals(true, 1)
equals('abc', 'abcd')

E vengono restituiti questi risultati:

  • Primo esempio: entrambi i valori sono equivalenti, quindi la funzione restituisce true.
  • Secondo esempio: entrambi i valori non sono equivalenti, quindi la funzione restituisce false.

F

first

Restituisce il primo elemento di una stringa o una matrice.

first('<collection>')
first([<collection>])
Parametro Obbligatorio TIPO Descrizione
< raccolta> String o array Raccolta in cui trovare il primo elemento
Valore restituito TIPO Descrizione
< Prima raccolta> Qualsiasi Primo elemento nella raccolta

Esempio

Questi esempi trovano il primo elemento in queste raccolte:

first('hello')
first(createArray(0, 1, 2))

E vengono restituiti questi risultati:

  • Primo esempio: "h"
  • Secondo esempio: 0

galleggiare

Converte una versione stringa per un numero a virgola mobile in un numero a virgola mobile effettivo. È possibile usare questa funzione solo quando si passano parametri personalizzati a un'app, ad esempio un flusso di lavoro dell'app per la logica o un flusso di Power Automate. Per convertire stringhe a virgola mobile rappresentate in formati specifici delle impostazioni locali, è possibile specificare facoltativamente un codice delle impostazioni locali RFC 4646.

float('<value>', '<locale>'?)
Parametro Obbligatorio TIPO Descrizione
< valore> string Stringa con un numero a virgola mobile valido da convertire. I valori minimo e massimo corrispondono ai limiti per il tipo di dati float.
< scena> NO string Codice delle impostazioni locali RFC 4646 da usare.

Se non specificato, vengono utilizzate le impostazioni locali predefinite.

Se le impostazioni locali non sono un valore valido, viene generato un errore che indica che le impostazioni locali specificate non sono valide o non hanno impostazioni locali associate.
Valore restituito TIPO Descrizione
< Valore flottante> Float Numero a virgola mobile per la stringa specificata. I valori minimo e massimo corrispondono ai limiti per il tipo di dati float.

Esempio 1

Questo esempio crea una versione stringa per questo numero a virgola mobile:

float('10,000.333')

E viene restituito questo risultato: 10000.333

Esempio 2

In questo esempio viene creata una versione stringa per questo numero a virgola mobile in stile tedesco:

float('10.000,333', 'de-DE')

E viene restituito questo risultato: 10000.333

esempio 3

Esempi di input non validi in modo imprevisto:

float('12,3,4,5678')  //Returns   12345678
float('1234567,8+')   //Returns   12345678
float('12345,6,78,-') //Returns  -12345678
float('-12,345,678,') //Returns  -12345678
float('12345678.-')   //Returns  -12345678
float('.12345678')    //Returns 0.12345678

formatDateTime

Restituisce un timestamp nel formato specificato.

formatDateTime('<timestamp>', '<format>'?, '<locale>'?)
Parametro Obbligatorio TIPO Descrizione
< Timestamp> string Stringa contenente il timestamp
< formato> NO string Stringa di formato numerico che è un singolo identificatore di formato o un modello di formato personalizzato. Il formato predefinito per il timestamp è "o" (aaaa-MM-ddTHH:mm:ss:fffffffK), conforme a ISO 8601 e con informazioni sul fuso orario.
< scena> NO string Impostazioni locali da usare. Se non specificato, il valore è en-us. Se le impostazioni locali non sono un valore valido, viene generato un errore.
Valore restituito TIPO Descrizione
< timestamp riformattato> string Timestamp aggiornato nel formato e nelle impostazioni locali specificate, se specificato.

esempi

formatDateTime('03/15/2018') // Returns '2018-03-15T00:00:00.0000000'.
formatDateTime('03/15/2018 12:00:00', 'yyyy-MM-ddTHH:mm:ss') // Returns '2018-03-15T12:00:00'.
formatDateTime('01/31/2016', 'dddd MMMM d') // Returns 'Sunday January 31'.
formatDateTime('01/31/2016', 'dddd MMMM d', 'fr-fr') // Returns 'dimanche janvier 31'.
formatDateTime('01/31/2016', 'dddd MMMM d', 'fr-FR') // Returns 'dimanche janvier 31'.
formatDateTime('01/31/2016', 'dddd MMMM d', 'es-es') // Returns 'domingo enero 31'.

formDataMultiValues

Restituisce una matrice con i valori corrispondenti a un nome di chiave nell'output di dati del modulo o codifica per il modulo di un'azione.

formDataMultiValues('<actionName>', '<key>')
Parametro Obbligatorio TIPO Descrizione
< actionName> string Azione il cui output include il valore della chiave desiderato
< chiave> string Nome della chiave di cui si vuole ottenere il valore
Valore restituito TIPO Descrizione
[<array con valori> chiave] Array Matrice con tutti i valori che corrispondono alla chiave specificata

Esempio

Questo esempio crea una matrice dal valore della chiave "Subject" nell'output di dati del modulo o codifica per il modulo dell'azione specificata:

formDataMultiValues('Send_an_email', 'Subject')

E restituisce il testo dell'oggetto in una matrice, ad esempio: ["Hello world"]

formDataValue

Restituisce un singolo valore corrispondente a un nome di chiave nell'output di dati del modulo o codifica per il modulo di un'azione. Se la funzione trova più corrispondenze, genera un errore.

formDataValue('<actionName>', '<key>')
Parametro Obbligatorio TIPO Descrizione
< actionName> string Azione il cui output include il valore della chiave desiderato
< chiave> string Nome della chiave di cui si vuole ottenere il valore
Valore restituito TIPO Descrizione
< chiave-valore> string Valore nella chiave specificata

Esempio

Questo esempio crea una stringa dal valore della chiave "Subject" nell'output di dati del modulo o codifica per il modulo dell'azione specificata:

formDataValue('Send_an_email', 'Subject')

E restituisce il testo dell'oggetto come stringa, ad esempio: "Hello world"

formattaNumero

Restituisce un numero come stringa in base al formato specificato.

formatNumber(<number>, <format>, <locale>?)
Parametro Obbligatorio TIPO Descrizione
< numero> Intero o doppio Valore che si desidera per il formato.
< formato> string Stringa in formato composto che specifica il formato che si desidera usare. Per le stringhe in formato numerico supportate, vedere Stringhe in formato numerico standard, che sono supportate da number.ToString(<format>, <locale>).
< scena> NO string Impostazioni locali da usare come supportate da number.ToString(<format>, <locale>). Se non specificato, il valore è en-us. Se le impostazioni locali non sono un valore valido, viene generato un errore.
Valore restituito TIPO Descrizione
< numero formattato> string Numero specificato come stringa nel formato specificato. È possibile eseguire il cast di questo valore restituito in int o float.

Esempio 1

Si supponga di voler formattare il numero 1234567890. Questo esempio formatta il numero come stringa "1.234.567.890,00".

formatNumber(1234567890, '#,##0.00', 'en-US')

*Esempio 2"

Si supponga di voler formattare il numero 1234567890. Questo esempio formatta il numero come stringa "1.234.567.890,00".

formatNumber(1234567890, '#,##0.00', 'is-IS')

esempio 3

Si supponga di voler formattare il numero 17.35. Questo esempio formatta il numero come stringa "$17,35".

formatNumber(17.35, 'C2')

Esempio 4

Si supponga di voler formattare il numero 17.35. Questo esempio formatta il numero come stringa "17,35 kr".

formatNumber(17.35, 'C2', 'is-IS')

G

getFutureTime

Restituisce il timestamp corrente più le unità di tempo specificate.

getFutureTime(<interval>, <timeUnit>, <format>?)
Parametro Obbligatorio TIPO Descrizione
< intervallo> Integer Numero di unità di tempo da aggiungere
< timeUnit> string Unità di tempo da usare con interval: "Second", "Minute", "Hour", "Day", "Week", "Month", "Year"
< formato> NO string Identificatore di formato singolo o modello di formato personalizzato. Il formato predefinito per il timestamp è "o" (aaaa-MM-ddTHH:mm:ss:fffffffK), conforme a ISO 8601 e con informazioni sul fuso orario.

Se il formato non è un valore valido, viene generato un errore che indica che il formato specificato non è valido e deve essere una stringa di formato numerico.
Valore restituito TIPO Descrizione
< Timestamp aggiornato> string Timestamp corrente con l'aggiunta del numero di unità di tempo specificato

Esempio 1

Si supponga che il timestamp corrente sia "2018-03-01T00:00:00.0000000Z". Questo esempio aggiunge cinque giorni al timestamp:

getFutureTime(5, 'Day')

E viene restituito questo risultato: "2018-03-06T00:00:00.0000000Z"

Esempio 2

Si supponga che il timestamp corrente sia "2018-03-01T00:00:00.0000000Z". Questo esempio aggiunge cinque giorni e converte il risultato nel formato "D":

getFutureTime(5, 'Day', 'D')

E viene restituito questo risultato: "Tuesday, March 6, 2018"

getPastTime

Restituisce il timestamp corrente meno le unità di tempo specificate.

getPastTime(<interval>, <timeUnit>, <format>?)
Parametro Obbligatorio TIPO Descrizione
< intervallo> Integer Numero di unità di tempo specificate da sottrarre
< timeUnit> string Unità di tempo da usare con interval: "Second", "Minute", "Hour", "Day", "Week", "Month", "Year"
< formato> NO string Identificatore di formato singolo o modello di formato personalizzato. Il formato predefinito per il timestamp è "o" (aaaa-MM-ddTHH:mm:ss:fffffffK), conforme a ISO 8601 e con informazioni sul fuso orario.

Se il formato non è un valore valido, viene generato un errore che indica che il formato specificato non è valido e deve essere una stringa di formato numerico.
Valore restituito TIPO Descrizione
< Timestamp aggiornato> string Timestamp corrente meno il numero di unità di tempo specificato

Esempio 1

Si supponga che il timestamp corrente sia "2018-02-01T00:00:00.0000000Z". Questo esempio sottrae cinque giorni dal timestamp:

getPastTime(5, 'Day')

E viene restituito questo risultato: "2018-01-27T00:00:00.0000000Z"

Esempio 2

Si supponga che il timestamp corrente sia "2018-02-01T00:00:00.0000000Z". Questo esempio sottrae cinque giorni e converte il risultato nel formato "D":

getPastTime(5, 'Day', 'D')

E viene restituito questo risultato: "Saturday, January 27, 2018"

greater

Verifica se il primo valore è maggiore del secondo valore. Restituisce true se il primo valore è maggiore o false se è minore.

greater(<value>, <compareTo>)
greater('<value>', '<compareTo>')
Parametro Obbligatorio TIPO Descrizione
< valore> Integer, float o string Primo valore da verificare per determinare se è maggiore del secondo
< confronteTo> Integer, float o string, rispettivamente Valore di confronto
Valore restituito TIPO Descrizione
vero o falso Boolean Restituisce true se il primo valore è maggiore del secondo. Restituisce false se il primo valore è minore o uguale al secondo.

Esempio

Questi esempi verificano se il primo valore è maggiore del secondo:

greater(10, 5)
greater('apple', 'banana')

E vengono restituiti questi risultati:

  • Primo esempio: true
  • Secondo esempio: false

greaterOrEquals

Verifica se il primo valore è maggiore o uguale al secondo valore. Restituisce true se il primo valore è maggiore o uguale o false se è minore.

greaterOrEquals(<value>, <compareTo>)
greaterOrEquals('<value>', '<compareTo>')
Parametro Obbligatorio TIPO Descrizione
< valore> Integer, float o string Primo valore da verificare per determinare se è maggiore o uguale al secondo
< confronteTo> Integer, float o string, rispettivamente Valore di confronto
Valore restituito TIPO Descrizione
vero o falso Boolean Restituisce true se il primo valore è maggiore o uguale al secondo. Restituisce false se il primo valore è minore del secondo.

Esempio

Questi esempi verificano se il primo valore è maggiore o uguale al secondo:

greaterOrEquals(5, 5)
greaterOrEquals('apple', 'banana')

E vengono restituiti questi risultati:

  • Primo esempio: true
  • Secondo esempio: false

guid

Genera un identificatore univoco globale (GUID) sotto forma di stringa, ad esempio "c2ecc88d-88c8-4096-912c-d6f2e2b138ce":

guid()

È anche possibile specificare un formato per il GUID diverso da quello predefinito, "D", che è costituito da 32 cifre separate da trattini.

guid('<format>')
Parametro Obbligatorio TIPO Descrizione
< formato> NO string Identificatore di formato singolo per il GUID restituito. Per impostazione predefinita, il formato è "D", ma è possibile usare "N", "D", "B", "P" o "X".
Valore restituito TIPO Descrizione
< Valore GUID> string GUID generato in modo casuale

Esempio

Questo esempio genera lo stesso GUID, ma in formato a 32 cifre, separate da trattini e racchiuse tra parentesi:

guid('P')

E viene restituito questo risultato: "(c2ecc88d-88c8-4096-912c-d6f2e2b138ce)"

I

if

Verifica se un'espressione è true o false. In base al risultato, restituisce un valore specificato. I parametri sono valutati da sinistra a destra.

if(<expression>, <valueIfTrue>, <valueIfFalse>)
Parametro Obbligatorio TIPO Descrizione
< espressione> Boolean Espressione da verificare
< valueIfTrue> Qualsiasi Valore da restituire se l'espressione è true
< valueIfFalse> Qualsiasi Valore da restituire se l'espressione è false
Valore restituito TIPO Descrizione
< specificato-return-value> Qualsiasi Valore specificato restituito a seconda del fatto che l'espressione sia true o false

Esempio

Questo esempio restituisce "yes" perché l'espressione specificata restituisce true. In caso contrario, l'esempio restituisce "no":

if(equals(1, 1), 'yes', 'no')

indexOf

Restituisce la posizione iniziale o il valore di indice di una sottostringa. Questa funzione non fa distinzione tra maiuscole e minuscole e gli indici iniziano con il numero 0.

indexOf('<text>', '<searchText>')
Parametro Obbligatorio TIPO Descrizione
< Testo> string Stringa che contiene la sottostringa da trovare
< searchText> string Sottostringa da trovare
Valore restituito TIPO Descrizione
< valore indice> Integer Posizione iniziale o valore di indice per la sottostringa specificata.

Se la stringa non viene trovata, restituire il numero -1.

Esempio

Questo esempio trova il valore di indice iniziale della sottostringa "world" nella stringa "hello world":

indexOf('hello world', 'world')

E viene restituito questo risultato: 6

INT

Convertire la versione stringa per un numero intero in un numero intero effettivo.

int('<value>')
Parametro Obbligatorio TIPO Descrizione
< valore> string Versione stringa per l'intero da convertire. I valori minimo e massimo corrispondono ai limiti per il tipo di dati Integer.
Valore restituito TIPO Descrizione
< Risultato intero> Integer Versione integer della stringa specificata. I valori minimo e massimo corrispondono ai limiti per il tipo di dati Integer.

Esempio

Questo esempio crea una versione integer per la stringa "10":

int('10')

E viene restituito questo risultato: 10

isFloat

Restituisce un valore booleano che indica se una stringa è un numero a virgola mobile. Per impostazione predefinita, questa funzione usa le impostazioni cultura inglese non dipendenti da paese/area geografica per il formato a virgola mobile. Per identificare i numeri a virgola mobile rappresentati in altri formati specifici delle impostazioni locali, è possibile specificare facoltativamente un codice delle impostazioni locali RFC 4646.

isFloat('<string>', '<locale>'?)
Parametro Obbligatorio TIPO Descrizione
< valore> string Stringa da esaminare
< scena> NO string Codice delle impostazioni locali RFC 4646 da usare
Valore restituito TIPO Descrizione
< Risultato booleano> Boolean Valore booleano che indica se la stringa è un numero a virgola mobile

Esempio 1

In questo esempio viene verificato se una stringa è un numero a virgola mobile nelle impostazioni cultura inglese non dipendenti da paese/area geografica:

isFloat('10,000.00')

E viene restituito questo risultato: true

Esempio 2

In questo esempio viene verificato se una stringa è un numero a virgola mobile nelle impostazioni locali tedesche:

isFloat('10.000,00', 'de-DE')

E viene restituito questo risultato: true

isInt

Restituisce un valore booleano che indica se una stringa è un numero intero.

isInt('<string>')
Parametro Obbligatorio TIPO Descrizione
< corda> string Stringa da esaminare
Valore restituito TIPO Descrizione
< Risultato booleano> Boolean Valore booleano che indica se la stringa è un numero intero

Esempio

In questo esempio viene verificato se una stringa è un numero intero:

isInt('10')

E viene restituito questo risultato: true

oggetto

Quando la funzione viene usata all'interno di un'azione ripetuta su una matrice, restituisce l'elemento corrente nella matrice durante l'iterazione corrente dell'azione. È anche possibile ottenere i valori dalle proprietà dell'elemento.

item()
Valore restituito TIPO Descrizione
< elemento-matrice-corrente> Qualsiasi Elemento corrente nella matrice per l'iterazione corrente dell'azione

Esempio

Questo esempio ottiene l'elemento body dal messaggio corrente per l'azione "Send_an_email" all'interno dell'iterazione corrente di un ciclo for-each:

item().body

items

Restituisce l'elemento corrente da ogni ciclo in un ciclo for-each. Usare questa funzione all'interno del ciclo for-each.

items('<loopName>')
Parametro Obbligatorio TIPO Descrizione
< Nome loop> string Nome del ciclo for-each
Valore restituito TIPO Descrizione
< articolo> Qualsiasi Elemento del ciclo corrente nel ciclo for-each specificato

Esempio

Questo esempio ottiene l'elemento corrente dal ciclo for-each specificato:

items('myForEachLoopName')

iterationIndexes

Restituisce il valore di indice per l'iterazione corrente all'interno del ciclo Until. È possibile usare questa funzione all'interno di cicli Until annidati.

iterationIndexes('<loopName>')
Parametro Obbligatorio TIPO Descrizione
< Nome loop> string Nome del ciclo Until
Valore restituito TIPO Descrizione
< indice> Integer Il valore di indice per l'iterazione corrente all'interno del ciclo Until specificato

Esempio

Questo esempio crea una variabile contatore e la incrementa di uno durante ogni iterazione in un ciclo Until fino a quando il valore del contatore non raggiunge cinque. L'esempio crea anche una variabile che tiene traccia dell'indice corrente per ogni iterazione. Durante ogni iterazione nel ciclo Until, l'esempio incrementa il valore del contatore e quindi assegna il valore del contatore al valore di indice corrente e quindi incrementa il valore del contatore. Nel ciclo questo esempio fa riferimento all'indice di iterazione corrente usando la funzione iterationIndexes:

iterationIndexes('Until_Max_Increment')

{
   "actions": {
      "Create_counter_variable": {
         "type": "InitializeVariable",
         "inputs": {
            "variables": [ 
               {
                  "name": "myCounter",
                  "type": "Integer",
                  "value": 0
               }
            ]
         },
         "runAfter": {}
      },
      "Create_current_index_variable": {
         "type": "InitializeVariable",
         "inputs": {
            "variables": [
               {
                  "name": "myCurrentLoopIndex",
                  "type": "Integer",
                  "value": 0
               }
            ]
         },
         "runAfter": {
            "Create_counter_variable": [ "Succeeded" ]
         }
      },
      "Until_Max_Increment": {
         "type": "Until",
         "actions": {
            "Assign_current_index_to_counter": {
               "type": "SetVariable",
               "inputs": {
                  "name": "myCurrentLoopIndex",
                  "value": "@variables('myCounter')"
               },
               "runAfter": {
                  "Increment_variable": [ "Succeeded" ]
               }
            },
            "Compose": {
               "inputs": "'Current index: ' @{iterationIndexes('Until_Max_Increment')}",
               "runAfter": {
                  "Assign_current_index_to_counter": [
                     "Succeeded"
                    ]
                },
                "type": "Compose"
            },           
            "Increment_variable": {
               "type": "IncrementVariable",
               "inputs": {
                  "name": "myCounter",
                  "value": 1
               },
               "runAfter": {}
            }
         },
         "expression": "@equals(variables('myCounter'), 5)",
         "limit": {
            "count": 60,
            "timeout": "PT1H"
         },
         "runAfter": {
            "Create_current_index_variable": [ "Succeeded" ]
         }
      }
   }
}

J

json

Restituisce il valore del tipo JSON (JavaScript Object Notation), l'oggetto o la matrice di oggetti per una stringa o XML.

json('<value>')
json(xml('value'))

Importante

Senza un XML Schema che definisce la struttura dell'output, la funzione potrebbe restituire risultati in cui la struttura differisce notevolmente dal formato previsto, a seconda dell'input.

Questo comportamento rende questa funzione non adatta agli scenari in cui l'output deve essere conforme a un contratto ben definito, ad esempio in sistemi o soluzioni aziendali critici.

Parametro Obbligatorio TIPO Descrizione
< valore> Stringa o elemento XML Stringa o elemento XML da convertire
Valore restituito TIPO Descrizione
< Risultato JSON> Tipo nativo JSON, oggetto o matrice Valore del tipo nativo JSON, oggetto o matrice di oggetti della stringa di input o XML.



- Se si passa a XML con un singolo elemento figlio nell'elemento radice, la funzione restituisce un singolo oggetto JSON per tale elemento figlio.

- Se si passa XML con più elementi figlio nell'elemento radice, la funzione restituisce una matrice che contiene oggetti JSON per tali elementi figlio.

- Se la stringa è Null, la funzione restituisce un oggetto vuoto.

Esempio 1

Questo esempio converte questa stringa in un valore JSON:

json('[1, 2, 3]')

E viene restituito questo risultato: [1, 2, 3]

Esempio 2

Questo esempio converte questa stringa in JSON:

json('{"fullName": "Sophia Owen"}')

E viene restituito questo risultato:

{
  "fullName": "Sophia Owen"
}

esempio 3

Questo esempio usa le funzioni json() e xml() per convertire XML con un singolo elemento figlio nell'elemento radice in un oggetto JSON denominato person per tale elemento figlio:

json(xml('<?xml version="1.0"?> <root> <person id="1"> <name>Sophia Owen</name> <occupation>Engineer</occupation> </person> </root>'))

E viene restituito questo risultato:

{
   "?xml": { 
      "@version": "1.0" 
   },
   "root": {
      "person": {
         "@id": "1",
         "name": "Sophia Owen",
         "occupation": "Engineer"
      }
   }
}

Esempio 4

Questo esempio usa le funzioni json() e xml() per convertire XML con più elementi figlio nell'elemento radice in una matrice denominata person che contiene oggetti JSON per tali elementi figlio:

json(xml('<?xml version="1.0"?> <root> <person id="1"> <name>Sophia Owen</name> <occupation>Engineer</occupation> </person> <person id="2"> <name>John Doe</name> <occupation>Engineer</occupation> </person> </root>'))

E viene restituito questo risultato:

{
   "?xml": {
      "@version": "1.0"
   },
   "root": {
      "person": [
         {
            "@id": "1",
            "name": "Sophia Owen",
            "occupation": "Engineer"
         },
         {
            "@id": "2",
            "name": "John Doe",
            "occupation": "Engineer"
         }
      ]
   }
}

intersezione

Restituisce una raccolta che contiene solo gli elementi comuni alle raccolte specificate. Per essere incluso nel risultato, un elemento deve essere presente in tutte le raccolte passate alla funzione. Se uno o più elementi hanno lo stesso nome, nel risultato viene incluso l'ultimo elemento con tale nome.

intersection([<collection1>], [<collection2>], ...)
intersection('<collection1>', '<collection2>', ...)
Parametro Obbligatorio TIPO Descrizione
< Collezione1>, <Collezione2>, ... Array o object, ma non entrambi i tipi Raccolte da cui ottenere solo gli elementi comuni
Valore restituito TIPO Descrizione
< elementi comuni> Array o object, rispettivamente Raccolta che contiene solo gli elementi comuni alle raccolte specificate

Esempio

Questo esempio trova gli elementi comuni tra queste matrici:

intersection(createArray(1, 2, 3), createArray(101, 2, 1, 10), createArray(6, 8, 1, 2))

E restituisce una matrice con solo questi elementi: [1, 2]

join

Restituisce una stringa con tutti gli elementi di una matrice, in cui ogni carattere è separato da un delimitatore.

join([<collection>], '<delimiter>')
Parametro Obbligatorio TIPO Descrizione
< raccolta> Array Matrice contenente gli elementi da aggiungere
< delimitatore> string Separatore visualizzato tra ogni carattere nella stringa risultante
Valore restituito TIPO Descrizione
< char1><delimitatore><char2><delimitatore>... string Stringa risultante creata da tutti gli elementi nella matrice specificata.



Nota: la lunghezza del risultato non deve superare 104.857.600 caratteri.

Esempio

Questo esempio crea una stringa da tutti gli elementi in questa matrice usando il carattere specificato come delimitatore:

join(createArray('a', 'b', 'c'), '.')

E viene restituito questo risultato: "a.b.c"

L

ultimo

Restituisce l'ultimo elemento di una raccolta.

last('<collection>')
last([<collection>])
Parametro Obbligatorio TIPO Descrizione
< raccolta> String o array Raccolta dove trovare l'ultimo elemento
Valore restituito TIPO Descrizione
< ultima-raccolta-oggetto> String o array, rispettivamente Ultimo elemento nella raccolta

Esempio

Questi esempi trovano l'ultimo elemento in queste raccolte:

last('abcd')
last(createArray(0, 1, 2, 3))

E vengono restituiti questi risultati:

  • Primo esempio: "d"
  • Secondo esempio: 3

lastIndexOf

Restituire la posizione iniziale o il valore di indice per l'ultima occorrenza di una sottostringa. Questa funzione non fa distinzione tra maiuscole e minuscole e gli indici iniziano con il numero 0.

lastIndexOf('<text>', '<searchText>')
Parametro Obbligatorio TIPO Descrizione
< Testo> string Stringa che contiene la sottostringa da trovare
< searchText> string Sottostringa da trovare
Valore restituito TIPO Descrizione
< end-index-value> Integer La posizione iniziale o il valore di indice per l'ultima occorrenza della sottostringa specificata.

Se il valore stringa o sottostringa è vuoto, si verifica il comportamento seguente:

  • Se solo il valore stringa è vuoto, la funzione restituisce -1.

  • Se i valori stringa e sottostringa sono entrambi vuoti, la funzione restituisce 0.

  • Se solo il valore della sottostringa è vuoto, la funzione restituisce la lunghezza della stringa meno 1.

esempi

In questo esempio viene trovato il valore di indice iniziale per l'ultima occorrenza della sottostringa della sottostringa world nella stringa hello world hello world. Il risultato restituito è 18:

lastIndexOf('hello world hello world', 'world')

In questo esempio manca il parametro di sottostringa, e restituisce un valore di 22 perché il valore della stringa di input (23) meno 1 è maggiore di 0.

lastIndexOf('hello world hello world', '')

length

Restituisce il numero di elementi in una raccolta.

length('<collection>')
length([<collection>])
Parametro Obbligatorio TIPO Descrizione
< raccolta> String o array Raccolta con gli elementi da contare
Valore restituito TIPO Descrizione
< lunghezza o conteggio> Integer Numero di elementi nella raccolta

Esempio

Questi esempi contano il numero di elementi in queste raccolte:

length('abcd')
length(createArray(0, 1, 2, 3))

E viene restituito questo risultato: 4

less

Verifica se il primo valore è minore del secondo valore. Restituisce true se il primo valore è minore o false se è maggiore.

less(<value>, <compareTo>)
less('<value>', '<compareTo>')
Parametro Obbligatorio TIPO Descrizione
< valore> Integer, float o string Primo valore da verificare per determinare se è minore del secondo
< confronteTo> Integer, float o string, rispettivamente Elemento di confronto
Valore restituito TIPO Descrizione
vero o falso Boolean Restituisce true se il primo valore è minore del secondo. Restituisce false se il primo valore è maggiore o uguale al secondo.

Esempio

Questi esempi verificano se il primo valore è minore del secondo.

less(5, 10)
less('banana', 'apple')

E vengono restituiti questi risultati:

  • Primo esempio: true
  • Secondo esempio: false

minore o uguale

Verifica se il primo valore è minore o uguale al secondo valore. Restituisce true se il primo valore è minore o uguale o false se è maggiore.

lessOrEquals(<value>, <compareTo>)
lessOrEquals('<value>', '<compareTo>')
Parametro Obbligatorio TIPO Descrizione
< valore> Integer, float o string Primo valore da verificare per determinare se è minore o uguale al secondo
< confronteTo> Integer, float o string, rispettivamente Elemento di confronto
Valore restituito TIPO Descrizione
vero o falso Boolean Restituisce true se il primo valore è minore o uguale al secondo. Restituisce false se il primo valore è maggiore del secondo.

Esempio

Questi esempi verificano se il primo valore è minore o uguale al secondo valore.

lessOrEquals(10, 10)
lessOrEquals('apply', 'apple')

E vengono restituiti questi risultati:

  • Primo esempio: true
  • Secondo esempio: false

listCallbackUrl

Restituisce l'"URL di callback" che chiama un trigger o un'azione. Questa funzione può essere usata solo con i trigger e le azioni per i tipi di connettore HttpWebhook e ApiConnectionWebhook, ma non con i tipi Manual, Recurrence, HTTP e APIConnection.

listCallbackUrl()
Valore restituito TIPO Descrizione
< callback-URL> string URL di callback per un trigger o un'azione

Esempio

Questo esempio mostra un URL di callback di esempio che questa funzione potrebbe restituire:

"https://prod-01.westus.logic.azure.com:443/workflows/<*workflow-ID*>/triggers/manual/run?api-version=2016-10-01&sp=%2Ftriggers%2Fmanual%2Frun&sv=1.0&sig=<*signature-ID*>"

M

max

Restituisce il valore più alto di un elenco o una matrice con numeri che includono gli estremi.

max(<number1>, <number2>, ...)
max([<number1>, <number2>, ...])
Parametro Obbligatorio TIPO Descrizione
<numero 1>, <numero 2>, ... Integer, float o entrambi Set di numeri da cui si vuole ottenere il valore più alto
[<numero 1>, <numero 2>, ...] Matrice - Integer, float o entrambi Matrice di numeri da cui si vuole ottenere il valore più alto
Valore restituito TIPO Descrizione
< valore massimo> Integer o float Valore più alto nella matrice o nel set di numeri specificato

Esempio

Questi esempi ottengono il valore più alto dal set di numeri e dalla matrice:

max(1, 2, 3)
max(createArray(1, 2, 3))

E viene restituito questo risultato: 3

Min

Restituisce il valore più basso di un set di numeri o una matrice.

min(<number1>, <number2>, ...)
min([<number1>, <number2>, ...])
Parametro Obbligatorio TIPO Descrizione
<numero 1>, <numero 2>, ... Integer, float o entrambi Set di numeri da cui si vuole ottenere il valore più basso
[<numero 1>, <numero 2>, ...] Matrice - Integer, float o entrambi Matrice di numeri da cui si vuole ottenere il valore più basso
Valore restituito TIPO Descrizione
< min-value> Integer o float Valore più basso nella matrice o nel set di numeri specificato

Esempio

Questi esempi ottengono il valore più basso nel set di numeri e nella matrice:

min(1, 2, 3)
min(createArray(1, 2, 3))

E viene restituito questo risultato: 1

mod

Restituisce il resto della divisione di due numeri. Per ottenere il risultato intero, vedere div().

mod(<dividend>, <divisor>)
Parametro Obbligatorio TIPO Descrizione
< dividendo> Integer o float Numero da dividere per l'oggetto divisor
< divisore> Integer o float Numero che divide il dividendo, ma non può essere zero
Valore restituito TIPO Descrizione
< modulo-risultato> Integer o float Resto della divisione del primo numero per il secondo numero

Esempio 1

Questo esempio divide il primo numero per il secondo numero:

mod(3, 2)

E viene restituito questo risultato: 1

Esempio 2

Questo esempio mostra che se uno o entrambi i valori sono negativi, il risultato corrisponde al segno del dividendo:

mod(-5, 2)
mod(4, -3)

L'esempio restituisce questi risultati:

  • Primo esempio: -1
  • Secondo esempio: 1

mul

Restituisce il prodotto della moltiplicazione di due numeri.

mul(<multiplicand1>, <multiplicand2>)
Parametro Obbligatorio TIPO Descrizione
< Multiplicand1> Integer o float Numero da moltiplicare per multiplicand2
< multipliand2> Integer o float Numero che moltiplica multiplicand1
Valore restituito TIPO Descrizione
< prodotto-risultato> Integer o float Prodotto della moltiplicazione del primo numero per il secondo numero

Esempio

Questi esempi moltiplicano il primo numero per il secondo numero:

mul(1, 2)
mul(1.5, 2)

E vengono restituiti questi risultati:

  • Primo esempio: 2
  • Secondo esempio: 3

multipartBody

Restituisce il corpo per una parte specifica dell'output di un'azione con più parti.

multipartBody('<actionName>', <index>)
Parametro Obbligatorio TIPO Descrizione
< actionName> string Nome per l'azione che ha un output con più parti
< indice> Integer Valore di indice per la parte desiderata
Valore restituito TIPO Descrizione
< corpo> string Corpo per la parte specificata

N

non

Verifica se un'espressione è false. Restituisce true se l'espressione è false o false se è true.

not(<expression>)
Parametro Obbligatorio TIPO Descrizione
< espressione> Boolean Espressione da verificare
Valore restituito TIPO Descrizione
vero o falso Boolean Restituisce true se l'espressione è false. Restituisce false se l'espressione è true.

Esempio 1

Questi esempi verificano se le espressioni specificate sono false:

not(false)
not(true)

E vengono restituiti questi risultati:

  • Primo esempio: l'espressione è false, quindi la funzione restituisce true.
  • Secondo esempio: l'espressione è true, quindi la funzione restituisce false.

Esempio 2

Questi esempi verificano se le espressioni specificate sono false:

not(equals(1, 2))
not(equals(1, 1))

E vengono restituiti questi risultati:

  • Primo esempio: l'espressione è false, quindi la funzione restituisce true.
  • Secondo esempio: l'espressione è true, quindi la funzione restituisce false.

nthIndexOf

Restituisce la posizione iniziale o il valore di indice in cui la na occorrenza di una sottostringa viene visualizzata in una stringa.

nthIndexOf('<text>', '<searchText>', <occurrence>)
Parametro Obbligatorio TIPO Descrizione
< Testo> string Stringa contenente la sottostringa da trovare
< searchText> string Sottostringa da trovare
< occorrenza> Integer Numero che specifica la na occorrenza della sottostringa da trovare. Se l'occorrenza è negativa, iniziare la ricerca dalla fine.
Valore restituito TIPO Descrizione
< valore indice> Integer Posizione iniziale o valore di indice per la na occorrenza della sottostringa specificata. Se la sottostringa non viene trovata o se esistono meno di n occorrenze della sottostringa, restituire -1.

esempi

nthIndexOf('123456789123465789', '1', 1) // Returns `0`.
nthIndexOf('123456789123465789', '1', 2) // Returns `9`.
nthIndexOf('123456789123465789', '12', 2) // Returns `9`.
nthIndexOf('123456789123465789', '6', 4) // Returns `-1`.

O

o

Verifica se almeno un'espressione è vera. Restituisce true se almeno un'espressione è true o false se tutte le espressioni sono false.

or(<expression1>, <expression2>, ...)
Parametro Obbligatorio TIPO Descrizione
< Espressione1>, <Espressione2>, ... Boolean Espressioni da verificare
Valore restituito TIPO Descrizione
vero o falso Boolean Restituisce true se almeno un'espressione è true. Restituisce false se tutte le espressioni sono false.

Esempio 1

Questi esempi verificano se almeno un'espressione è true:

or(true, false)
or(false, false)

E vengono restituiti questi risultati:

  • Primo esempio: almeno un'espressione è true, quindi la funzione restituisce true.
  • Secondo esempio: entrambe le espressioni sono false, quindi la funzione restituisce false.

Esempio 2

Questi esempi verificano se almeno un'espressione è true:

or(equals(1, 1), equals(1, 2))
or(equals(1, 2), equals(1, 3))

E vengono restituiti questi risultati:

  • Primo esempio: almeno un'espressione è true, quindi la funzione restituisce true.
  • Secondo esempio: entrambe le espressioni sono false, quindi la funzione restituisce false.

Risultati

Restituisce l'output di un'azione nel runtime.

outputs('<actionName>')
Parametro Obbligatorio TIPO Descrizione
< actionName> string Nome per l'output dell'azione desiderato
Valore restituito TIPO Descrizione
< prodotto> string Output dell'azione specificata

Esempio

Questo esempio ottiene l'output dall'azione X Get user:

outputs('Get_user')

E viene restituito questo risultato:

{
  "statusCode": 200,
  "headers": {
    "Pragma": "no-cache",
    "Vary": "Accept-Encoding",
    "x-ms-request-id": "a916ec8f52211265d98159adde2efe0b",
    "X-Content-Type-Options": "nosniff",
    "Timing-Allow-Origin": "*",
    "Cache-Control": "no-cache",
    "Date": "Mon, 09 Apr 2018 18:47:12 GMT",
    "Set-Cookie": "ARRAffinity=b9400932367ab5e3b6802e3d6158afffb12fcde8666715f5a5fbd4142d0f0b7d;Path=/;HttpOnly;Domain=twitter-wus.azconn-wus.p.azurewebsites.net",
    "X-AspNet-Version": "4.0.30319",
    "X-Powered-By": "ASP.NET",
    "Content-Type": "application/json; charset=utf-8",
    "Expires": "-1",
    "Content-Length": "339"
  },
  "body": {
    "FullName": "Contoso Corporation",
    "Location": "Generic Town, USA",
    "Id": 283541717,
    "UserName": "ContosoInc",
    "FollowersCount": 172,
    "Description": "Leading the way in transforming the digital workplace.",
    "StatusesCount": 93,
    "FriendsCount": 126,
    "FavouritesCount": 46,
    "ProfileImageUrl": "https://pbs.twimg.com/profile_images/908820389907722240/gG9zaHcd_400x400.jpg"
  }
}

P

parametri

Restituisce il valore per un parametro descritto nella definizione del flusso di lavoro.

parameters('<parameterName>')
Parametro Obbligatorio TIPO Descrizione
< ParameterName> string Nome del parametro di cui si vuole ottenere il valore
Valore restituito TIPO Descrizione
< valore parametro> Qualsiasi Valore del parametro specificato

Esempio

Si supponga di avere questo valore JSON:

{
  "fullName": "Sophia Owen"
}

Questo esempio ottiene il valore per il parametro specificato:

parameters('fullName')

E viene restituito questo risultato: "Sophia Owen"

parseDateTime

Restituisce il timestamp da una stringa contenente un timestamp.

parseDateTime('<timestamp>', '<locale>'?, '<format>'?)
Parametro Obbligatorio TIPO Descrizione
< Timestamp> string Stringa contenente il timestamp
< scena> NO string Impostazioni locali da usare.

Se non specificato, le impostazioni locali predefinite sono en-us.

Se le impostazioni locali non sono un valore valido, viene generato un errore.
< formato> NO string Stringa di formato numerico che è un singolo identificatore di formato o un modello di formato personalizzato. Il formato predefinito per il timestamp è "o" (aaaa-MM-ddTHH:mm:ss:fffffffK), conforme a ISO 8601 e con informazioni sul fuso orario. Se il formato non è specificato, provare ad analizzare con più formati compatibili con le impostazioni locali specificate. Se il formato non è un valore valido, viene generato un errore.
Valore restituito TIPO Descrizione
< timestamp analizzato> string Timestamp analizzato in formato "o" (aaaa-MM-ggTOO:mm:ss.fffffffK), che è conforme a ISO 8601 e mantiene le informazioni sul fuso orario.

esempi

parseDateTime('20/10/2014', 'fr-fr') // Returns '2014-10-20T00:00:00.0000000'.
parseDateTime('20 octobre 2010', 'fr-FR') // Returns '2010-10-20T00:00:00.0000000'.
parseDateTime('martes 20 octubre 2020', 'es-es') // Returns '2020-10-20T00:00:00.0000000'.
parseDateTime('21052019', 'fr-fr', 'ddMMyyyy') // Returns '2019-05-21T00:00:00.0000000'.
parseDateTime('20190521', 'fr-fr', 'yyyyMMdd') // Returns '2019-05-21T00:00:00.0000000'.
parseDateTime('10/20/2014 15h', 'en-US', 'MM/dd/yyyy HH\h') // Returns '2014-10-20T15:00:00.0000000'.

R

rand

Restituisce un valore intero casuale da un intervallo specificato, che include solo l'estremo inziale.

rand(<minValue>, <maxValue>)
Parametro Obbligatorio TIPO Descrizione
< minValue> Integer Valore intero più basso nell'intervallo
< maxValue> Integer Valore intero che segue il valore intero più alto nell'intervallo che la funzione può restituire
Valore restituito TIPO Descrizione
< risultato casuale> Integer Valore intero casuale restituito dall'intervallo specificato

Esempio

Questo esempio ottiene un valore intero casuale dall'intervallo specificato, escluso il valore massimo:

rand(1, 5)

E restituisce uno di questi numeri come risultato: 1, 2, 3 o 4

range

Restituisce una matrice di valori interi che inizia da un valore intero specificato.

range(<startIndex>, <count>)
Parametro Obbligatorio TIPO Descrizione
< startIndex> Integer Valore intero che rappresenta il primo elemento da cui inizia la matrice
< contare> Integer Numero di valori interi della matrice. Il valore del parametro count deve essere un numero intero positivo che non supera 100.000.



Nota: la somma dei valori startIndex e count non deve superare 2.147.483.647.
Valore restituito TIPO Descrizione
[<risultato >della portata] Array Matrice di valori interi a partire dall'indice specificato

Esempio

Questo esempio crea una matrice di valori interi che inizia dall'indice specificato e include il numero di valori interi specificato:

range(1, 4)

E viene restituito questo risultato: [1, 2, 3, 4]

removeProperty

Rimuove una proprietà da un oggetto e restituisce l'oggetto aggiornato. Se la proprietà che si tenta di rimuovere non esiste, la funzione restituisce l'oggetto originale.

removeProperty(<object>, '<property>')
Parametro Obbligatorio TIPO Descrizione
< oggetto> Oggetto Oggetto JSON da cui si vuole rimuovere una proprietà
< proprietà> string Nome della proprietà da rimuovere
Valore restituito TIPO Descrizione
< oggetto aggiornato> Oggetto Oggetto JSON aggiornato senza la proprietà specificata

Per rimuovere una proprietà figlio da una proprietà esistente, usare questa sintassi:

removeProperty(<object>['<parent-property>'], '<child-property>')
Parametro Obbligatorio TIPO Descrizione
< oggetto> Oggetto Oggetto JSON di cui si vuole rimuovere la proprietà
< Proprietà genitore> string Nome della proprietà padre con la proprietà figlio che si desidera rimuovere
< Proprietà dei figli> string Nome della proprietà figlio da rimuovere
Valore restituito TIPO Descrizione
< oggetto aggiornato> Oggetto Oggetto JSON aggiornato la cui proprietà figlio è stata rimossa

Esempio 1

Questo esempio rimuove la proprietà middleName da un oggetto JSON, di cui viene eseguita la conversione da stringa a JSON con la funzione JSON() e restituisce l'oggetto aggiornato:

removeProperty(json('{ "firstName": "Sophia", "middleName": "Anne", "surName": "Owen" }'), 'middleName')

Ecco l'oggetto JSON corrente:

{
   "firstName": "Sophia",
   "middleName": "Anne",
   "surName": "Owen"
}

Ecco l'oggetto JSON aggiornato:

{
   "firstName": "Sophia",
   "surName": "Owen"
}

Esempio 2

Questo esempio rimuove la proprietà figlio middleName da una proprietà padre customerName in un oggetto JSON, di cui viene eseguita la conversione da stringa a JSON con la funzione JSON() e restituisce l'oggetto aggiornato:

removeProperty(json('{ "customerName": { "firstName": "Sophia", "middleName": "Anne", "surName": "Owen" } }')['customerName'], 'middleName')

Ecco l'oggetto JSON corrente:

{
   "customerName": {
      "firstName": "Sophia",
      "middleName": "Anne",
      "surName": "Owen"
   }
}

Ecco l'oggetto JSON aggiornato:

{
   "customerName": {
      "firstName": "Sophia",
      "surName": "Owen"
   }
}

sostituire

Sostituisce una sottostringa con la stringa specificata e restituisce la stringa risultante. Questa funzione fa distinzione tra maiuscole e minuscole.

replace('<text>', '<oldText>', '<newText>')
Parametro Obbligatorio TIPO Descrizione
< Testo> string Stringa che contiene la sottostringa da sostituire
< oldText> string Sottostringa da sostituire
< newText> string Stringa da usare per la sostituzione
Valore restituito TIPO Descrizione
< testo aggiornato> string Stringa aggiornata dopo la sostituzione della sottostringa

Se la sottostringa non viene trovata, restituire la stringa originale.

Esempio

Questo esempio trova la sottostringa "old" in "the old string" e sostituisce "old" con "new":

replace('the old string', 'old', 'new')

E viene restituito questo risultato: "the new string"

result

Restituisce i risultati delle azioni di primo livello nell'azione con ambito specificata, ad esempio un'azione For_each, Until o Scope. La funzione result() accetta un singolo parametro, ovvero il nome dell'ambito, e restituisce una matrice che contiene informazioni dalle azioni di primo livello nell'ambito. Questi oggetti azione includono gli stessi attributi degli attributi restituiti dalla funzione actions(), ad esempio l'ora di inizio dell'azione, l'ora di fine, lo stato, gli input, gli ID di correlazione e gli output.

Annotazioni

Questa funzione restituisce informazioni solo dalle azioni di primo livello nell'azione con ambito e non da azioni annidate più approfondite, ad esempio le azioni switch o condition.

Ad esempio, è possibile usare questa funzione per ottenere i risultati da azioni non riuscite in modo da poter diagnosticare e gestire le eccezioni. Per altre informazioni, vedere Ottenere il contesto e i risultati per gli errori.

result('<scopedActionName>')
Parametro Obbligatorio TIPO Descrizione
< scopedActionName> string Nome dell'azione con ambito in cui si desidera che gli input e gli output delle azioni di primo livello all'interno di tale ambito
Valore restituito TIPO Descrizione
< Array-oggetto> Oggetto matrice Matrice che contiene matrici di input e output di ogni azione di primo livello all'interno dell'ambito specificato

Esempio

Questo esempio restituisce gli input e gli output di ogni iterazione di un'azione HTTP all'interno di un ciclo For_each usando la funzione result() nell'azione Compose:

{
   "actions": {
      "Compose": {
         "inputs": "@result('For_each')",
         "runAfter": {
            "For_each": [
               "Succeeded"
            ]
         },
         "type": "compose"
      },
      "For_each": {
         "actions": {
            "HTTP": {
               "inputs": {
                  "method": "GET",
                  "uri": "https://httpstat.us/200"
               },
               "runAfter": {},
               "type": "Http"
            }
         },
         "foreach": "@triggerBody()",
         "runAfter": {},
         "type": "Foreach"
      }
   }
}

Ecco come può apparire la matrice restituita di esempio, dove l'oggetto outputs esterno contiene gli input e gli output di ogni iterazione delle azioni all'interno dell'azione For_each.

[
   {
      "name": "HTTP",
      "outputs": [
         {
            "name": "HTTP",
            "inputs": {
               "uri": "https://httpstat.us/200",
               "method": "GET"
            },
            "outputs": {
               "statusCode": 200,
               "headers": {
                   "X-AspNetMvc-Version": "5.1",
                   "Access-Control-Allow-Origin": "*",
                   "Cache-Control": "private",
                   "Date": "Tue, 20 Aug 2019 22:15:37 GMT",
                   "Set-Cookie": "ARRAffinity=0285cfbea9f2ee7",
                   "Server": "Microsoft-IIS/10.0",
                   "X-AspNet-Version": "4.0.30319",
                   "X-Powered-By": "ASP.NET",
                   "Content-Length": "0"
               },
               "startTime": "2019-08-20T22:15:37.6919631Z",
               "endTime": "2019-08-20T22:15:37.95762Z",
               "trackingId": "6bad3015-0444-4ccd-a971-cbb0c99a7.....",
               "clientTrackingId": "085863526764.....",
               "code": "OK",
               "status": "Succeeded"
            }
         },
         {
            "name": "HTTP",
            "inputs": {
               "uri": "https://httpstat.us/200",
               "method": "GET"
            },
            "outputs": {
            "statusCode": 200,
               "headers": {
                   "X-AspNetMvc-Version": "5.1",
                   "Access-Control-Allow-Origin": "*",
                   "Cache-Control": "private",
                   "Date": "Tue, 20 Aug 2019 22:15:37 GMT",
                   "Set-Cookie": "ARRAffinity=0285cfbea9f2ee7",
                   "Server": "Microsoft-IIS/10.0",
                   "X-AspNet-Version": "4.0.30319",
                   "X-Powered-By": "ASP.NET",
                   "Content-Length": "0"
               },
               "startTime": "2019-08-20T22:15:37.6919631Z",
               "endTime": "2019-08-20T22:15:37.95762Z",
               "trackingId": "9987e889-981b-41c5-aa27-f3e0e59bf69.....",
               "clientTrackingId": "085863526764.....",
               "code": "OK",
               "status": "Succeeded"
            }
         }
      ]
   }
]

reverse

Invertire l'ordine degli elementi in una raccolta. Quando si usa questa funzione con sort(), è possibile ordinare una raccolta in ordine decrescente.

reverse([<collection>])
Parametro Obbligatorio TIPO Descrizione
< raccolta> Array Raccolta da invertire
Valore restituito TIPO Descrizione
[<raccolta >aggiornata] Array Raccolta invertita

Esempio

Questo esempio inverte una matrice di numeri interi:

reverse(createArray(0, 1, 2, 3))

E restituisce questa matrice: [3,2,1,0]

S

setProperty

Imposta il valore per la proprietà dell'oggetto JSON e restituisce l'oggetto aggiornato. Se la proprietà che si tenta di impostare non esiste,viene aggiunta all'oggetto. Per aggiungere una nuova proprietà, usare la funzione addProperty().

setProperty(<object>, '<property>', <value>)
Parametro Obbligatorio TIPO Descrizione
< oggetto> Oggetto Oggetto JSON di cui si vuole impostare la proprietà
< proprietà> string Nome per la proprietà nuova o esistente da impostare
< valore> Qualsiasi Valore da impostare per la proprietà specificata

Per impostare la proprietà figlio in un oggetto figlio, usare invece una chiamata setProperty() annidata. Altrimenti, la funzione restituisce solo l'oggetto figlio come output.

setProperty(<object>, '<parent-property>', setProperty(<object>['parentProperty'], '<child-property>', <value>))
Parametro Obbligatorio TIPO Descrizione
< oggetto> Oggetto Oggetto JSON di cui si vuole impostare la proprietà
< Proprietà genitore> string Nome della proprietà padre con la proprietà figlio che si desidera impostare
< Proprietà dei figli> string Nome della proprietà figlio da impostare
< valore> Qualsiasi Valore da impostare per la proprietà specificata
Valore restituito TIPO Descrizione
< oggetto aggiornato> Oggetto Oggetto JSON aggiornato di cui si imposta la proprietà

Esempio 1

Questo esempio imposta la proprietà surName in un oggetto JSON, di cui viene eseguita la conversione da stringa a JSON con la funzione JSON(). La funzione assegna il valore specificato alla proprietà e restituisce l'oggetto aggiornato:

setProperty(json('{ "firstName": "Sophia", "surName": "Owen" }'), 'surName', 'Hartnett')

Ecco l'oggetto JSON corrente:

{
   "firstName": "Sophia",
   "surName": "Owen"
}

Ecco l'oggetto JSON aggiornato:

{
   "firstName": "Sophia",
   "surName": "Hartnett"
}

Esempio 2

Questo esempio imposta la proprietà figlio surName per la proprietà padre customerName in un oggetto JSON, di cui viene eseguita la conversione da stringa a JSON con la funzione JSON(). La funzione assegna il valore specificato alla proprietà e restituisce l'oggetto aggiornato:

setProperty(json('{ "customerName": { "firstName": "Sophia", "surName": "Owen" } }'), 'customerName', setProperty(json('{ "customerName": { "firstName": "Sophia", "surName": "Owen" } }')['customerName'], 'surName', 'Hartnett'))

Ecco l'oggetto JSON corrente:

{
   "customerName": {
      "firstName": "Sophie",
      "surName": "Owen"
   }
}

Ecco l'oggetto JSON aggiornato:

{
   "customerName": {
      "firstName": "Sophie",
      "surName": "Hartnett"
   }
}

skip

Rimuove gli elementi dall'inizio di una raccolta e restituisce tutti gli altri elementi.

skip([<collection>], <count>)
Parametro Obbligatorio TIPO Descrizione
< raccolta> Array Raccolta da cui rimuovere gli elementi
< contare> Integer Valore intero positivo per il numero di elementi da rimuovere nella parte iniziale
Valore restituito TIPO Descrizione
[<raccolta >aggiornata] Array Raccolta aggiornata dopo la rimozione degli elementi specificati

Esempio

Questo esempio rimuove un elemento, il numero 0, dall'inizio della matrice specificata:

skip(createArray(0, 1, 2, 3), 1)

E restituisce la matrice con gli elementi rimanenti: [1,2,3]

slice

Restituisce una sottostringa specificando la posizione iniziale e finale o il valore. Vedere anche substring().

slice('<text>', <startIndex>, <endIndex>?)
Parametro Obbligatorio TIPO Descrizione
< Testo> string Stringa contenente la sottostringa da trovare
< startIndex> Integer Posizione o valore di partenza a base zero da cui iniziare la ricerca della sottostringa

- Se startIndex è maggiore della lunghezza della stringa, restituire una stringa vuota.

- Se startIndex è negativo, iniziare a cercare il valore di indice che corrisponde alla somma della lunghezza della stringa e di startIndex.
< endIndex> NO Integer Posizione o valore di partenza a base zero in cui terminare la ricerca della sottostringa. Il carattere che si trova in corrispondenza del valore dell'indice finale non è incluso nella ricerca.

- Se endIndex non è specificato o è maggiore della lunghezza della stringa, cercare fino alla fine della stringa.

- Se endIndex è negativo, terminare la ricerca al valore di indice che è la somma della lunghezza della stringa e dell'endIndex.
Valore restituito TIPO Descrizione
< Risultato della fetta> string Nuova stringa contenente la sottostringa trovata

esempi

slice('Hello World', 2) // Returns 'llo World'.
slice('Hello World', 30) // Returns ''.
slice('Hello World', 10, 2) // Returns ''.
slice('Hello World', 0) // Returns 'Hello World'.
slice('Hello World', 2, 5) // Returns 'llo'.
slice('Hello World', 6, 20) // Returns 'World'.
slice('Hello World', -2) // Returns 'ld'.
slice('Hello World', 3, -1) // Returns 'lo Worl'.
slice('Hello World', 3, 3) // Returns ''.

sort

Ordinare gli elementi in una raccolta. Puoi ordinare gli oggetti della raccolta usando qualsiasi chiave che contenga un tipo di dato primitivo supportato dal Workflow Definition Language, come int, float, stringa o bool.

sort([<collection>], <sortBy>?)
Parametro Obbligatorio TIPO Descrizione
< raccolta> Array Raccolta con gli elementi da ordinare
< sortBy> NO string Chiave da utilizzare per l'ordinamento degli oggetti raccolta
Valore restituito TIPO Descrizione
[<raccolta >aggiornata] Array Raccolta ordinata

Esempio 1

In questo esempio viene ordinata una matrice di numeri interi:

sort(createArray(2, 1, 0, 3))

E restituisce questa matrice: [0,1,2,3]

Esempio 2

In questo esempio viene ordinata una matrice di oggetti in base alla chiave:

sort(createArray(json('{ "first": "Amalie", "last": "Rose" }'), json('{ "first": "Elise", "last": "Renee" }')), 'last')

E restituisce questa matrice: [{ "first": "Elise", "last": "Renee" }, {"first": "Amalie", "last": "Rose" }')]

split

Restituisce una matrice che contiene le sottostringhe, separate da virgole, in base al carattere delimitatore specificato nella stringa originale.

split('<text>', '<delimiter>')
Parametro Obbligatorio TIPO Descrizione
< Testo> string Stringa da suddividere in sottostringhe in base al delimitatore specificato nella stringa originale
< delimitatore> string Carattere nella stringa originale da usare come delimitatore
Valore restituito TIPO Descrizione
[<substring1,substring2><>,...] Array Matrice che contiene le sottostringhe della stringa originale, separate da virgole

Esempio 1

Questo esempio crea una matrice con le sottostringhe della stringa specificata in base al carattere specificato come delimitatore:

split('a_b_c', '_')

E restituisce questa matrice come risultato: ["a","b","c"]

Esempio 2

Questo esempio crea una matrice con un singolo elemento quando non esiste alcun delimitatore nella stringa:

split('a_b_c', ' ')

E restituisce questa matrice come risultato: ["a_b_c"]

inizio del giorno

Restituisce l'inizio del giorno per un timestamp.

startOfDay('<timestamp>', '<format>'?)
Parametro Obbligatorio TIPO Descrizione
< Timestamp> string Stringa contenente il timestamp
< formato> NO string Stringa di formato numerico che è un singolo identificatore di formato o un modello di formato personalizzato. Il formato predefinito per il timestamp è "o" (aaaa-MM-ddTHH:mm:ss:fffffffK), conforme a ISO 8601 e con informazioni sul fuso orario.

Se il formato non è un valore valido, viene generato un errore.
Valore restituito TIPO Descrizione
< Timestamp aggiornato> string Timestamp specificato, che inizia in corrispondenza della mezzanotte esatta per il giorno

Esempio

Questo esempio trova l'inizio del giorno per questo timestamp:

startOfDay('2018-03-15T13:30:30Z')

E viene restituito questo risultato: "2018-03-15T00:00:00.0000000Z"

inizioDell'Ora

Restituisce l'inizio dell'ora per un timestamp.

startOfHour('<timestamp>', '<format>'?)
Parametro Obbligatorio TIPO Descrizione
< Timestamp> string Stringa contenente il timestamp
< formato> NO string Stringa di formato numerico che è un singolo identificatore di formato o un modello di formato personalizzato. Il formato predefinito per il timestamp è "o" (aaaa-MM-ddTHH:mm:ss:fffffffK), conforme a ISO 8601 e con informazioni sul fuso orario.

Se il formato non è un valore valido, viene generato un errore.
Valore restituito TIPO Descrizione
< Timestamp aggiornato> string Timestamp specificato, che inizia in corrispondenza dei minuti esatti per l'ora

Esempio

Questo esempio trova l'inizio dell'ora per questo timestamp:

startOfHour('2018-03-15T13:30:30Z')

E viene restituito questo risultato: "2018-03-15T13:00:00.0000000Z"

startOfMonth

Restituisce l'inizio del mese per un timestamp.

startOfMonth('<timestamp>', '<format>'?)
Parametro Obbligatorio TIPO Descrizione
< Timestamp> string Stringa contenente il timestamp
< formato> NO string Stringa di formato numerico che è un singolo identificatore di formato o un modello di formato personalizzato. Il formato predefinito per il timestamp è "o" (aaaa-MM-ddTHH:mm:ss:fffffffK), conforme a ISO 8601 e con informazioni sul fuso orario.

Se il formato non è un valore valido, viene generato un errore.
Valore restituito TIPO Descrizione
< Timestamp aggiornato> string Timestamp specificato, che inizia il primo giorno del mese in corrispondenza della mezzanotte esatta

Esempio 1

Questo esempio restituisce l'inizio del mese per questo timestamp:

startOfMonth('2018-03-15T13:30:30Z')

E viene restituito questo risultato: "2018-03-01T00:00:00.0000000Z"

Esempio 2

Questo esempio restituisce l'inizio del mese nel formato specificato per questo timestamp:

startOfMonth('2018-03-15T13:30:30Z', 'yyyy-MM-dd')

E viene restituito questo risultato: "2018-03-01"

startsWith

Verifica se una stringa inizia con una sottostringa specifica. Restituisce true se la sottostringa viene trovata o false se non viene trovata. Questa funzione non fa distinzione tra maiuscole e minuscole.

startsWith('<text>', '<searchText>')
Parametro Obbligatorio TIPO Descrizione
< Testo> string Stringa da verificare
< searchText> string Stringa iniziale da trovare
Valore restituito TIPO Descrizione
vero o falso Boolean Restituisce true se la sottostringa iniziale viene trovata. Restituisce false se l'elemento non viene trovato.

Esempio 1

Questo esempio verifica se la stringa "hello world" inizia con la sottostringa "hello":

startsWith('hello world', 'hello')

E viene restituito questo risultato: true

Esempio 2

Questo esempio verifica se la stringa "hello world" inizia con la sottostringa "greetings":

startsWith('hello world', 'greetings')

E viene restituito questo risultato: false

string

Restituisce la versione stringa di un valore.

string(<value>)
Parametro Obbligatorio TIPO Descrizione
< valore> Qualsiasi Valore da convertire. Se questo valore è Null o restituisce null, il valore viene convertito in una stringa vuota ("").



Ad esempio, se si assegna una variabile stringa a una proprietà inesistente, accessibile con l'operatore ?, il valore Null viene convertito in una stringa vuota. Tuttavia, il confronto di un valore Null non equivale al confronto di una stringa vuota.
Valore restituito TIPO Descrizione
< valore stringa> string Versione stringa del valore specificato. Se il parametro value è null o restituisce null, questo valore viene restituito come valore stringa vuota ("").

Esempio 1

Questo esempio crea la versione stringa per questo numero:

string(10)

E viene restituito questo risultato: "10"

Esempio 2

Questo esempio crea una stringa per l'oggetto JSON specificato e usa il carattere barra rovesciata (\) come carattere di escape per le virgolette doppie (").

string( { "name": "Sophie Owen" } )

E viene restituito questo risultato: "{ \\"name\\": \\"Sophie Owen\\" }"

sub

Restituisce il risultato della sottrazione del secondo numero dal primo.

sub(<minuend>, <subtrahend>)
Parametro Obbligatorio TIPO Descrizione
< minuendo> Integer o float Numero da cui sottrarre l'oggetto subtrahend
< sottraendo> Integer o float Numero da sottrarre dall'oggetto minuend
Valore restituito TIPO Descrizione
< risultato> Integer o float Risultato della sottrazione del secondo numero dal primo

Esempio

Questo esempio sottrae il secondo numero dal primo:

sub(10.3, .3)

E viene restituito questo risultato: 10

substring

Restituisce i caratteri di una stringa, partendo dalla posizione o dall'indice specificato. I valori di Indice iniziano con il numero 0. Vedere anche slice().

substring('<text>', <startIndex>, <length>)
Parametro Obbligatorio TIPO Descrizione
< Testo> string Stringa da cui ottenere i caratteri
< startIndex> Integer Numero positivo maggiore o uguale a 0 che si desidera usare come posizione iniziale o valore di indice
< durata> NO Integer Numero positivo di caratteri da includere nella sottostringa

Annotazioni

Assicurarsi che la somma dall'aggiunta dei valori dei parametri startIndex e length sia inferiore alla lunghezza della stringa specificata per il parametro text. In caso contrario, viene visualizzato un errore, a differenza di funzioni simili in altri linguaggi in cui il risultato è la sottostringa dall'elemento startIndex alla fine della stringa. Il parametro length (lunghezza) è facoltativo e, se non specificato, la funzione substring() accetta tutti i caratteri che iniziano da startIndex alla fine della stringa.

Valore restituito TIPO Descrizione
< Sottostringa-risultato> string Sottostringa con il numero di caratteri specificato, che inizia in corrispondenza della posizione di indice specificata nella stringa di origine

Esempio

Questo esempio crea una sottostringa di cinque caratteri dalla stringa specificata, a partire dal valore di indice 6:

substring('hello world', 6, 5)

E viene restituito questo risultato: "world"

subtractFromTime

Sottrae un numero di unità di tempo da un timestamp. Vedere anche getPastTime.

subtractFromTime('<timestamp>', <interval>, '<timeUnit>', '<format>'?)
Parametro Obbligatorio TIPO Descrizione
< Timestamp> string Stringa contenente il timestamp
< intervallo> Integer Numero di unità di tempo specificate da sottrarre
< timeUnit> string Unità di tempo da usare con interval: "Second", "Minute", "Hour", "Day", "Week", "Month", "Year"
< formato> NO string Stringa di formato numerico che è un singolo identificatore di formato o un modello di formato personalizzato. Il formato predefinito per il timestamp è "o" (aaaa-MM-ddTHH:mm:ss:fffffffK), conforme a ISO 8601 e con informazioni sul fuso orario.

Se il formato non è un valore valido, viene generato un errore.
Valore restituito TIPO Descrizione
< Timestamp aggiornato> string Timestamp meno il numero di unità di tempo specificato

Esempio 1

Questo esempio sottrae un giorno dal timestamp:

subtractFromTime('2018-01-02T00:00:00Z', 1, 'Day')

E viene restituito questo risultato: "2018-01-01T00:00:00.0000000Z"

Esempio 2

Questo esempio sottrae un giorno dal timestamp:

subtractFromTime('2018-01-02T00:00:00Z', 1, 'Day', 'D')

E restituisce questo risultato usando il formato "D" facoltativo: "Monday, January, 1, 2018"

T

take

Restituisce gli elementi dall'inizio di una raccolta.

take('<collection>', <count>)
take([<collection>], <count>)
Parametro Obbligatorio TIPO Descrizione
< raccolta> String o array Raccolta da cui ottenere gli elementi
< contare> Integer Valore intero positivo per il numero di elementi da ottenere dalla parte iniziale
Valore restituito TIPO Descrizione
< sottoinsieme> o [<subset>] String o array, rispettivamente Stringa o matrice con il numero specificato di elementi presi dall'inizio della raccolta originale

Esempio

Questi esempi ottengono il numero specificato di elementi presi dall'inizio di queste raccolte:

take('abcde', 3)
take(createArray(0, 1, 2, 3, 4), 3)

E vengono restituiti questi risultati:

  • Primo esempio: "abc"
  • Secondo esempio: [0, 1, 2]

ticks

Restituisce il numero di tick, ovvero intervalli di 100 nanosecondi, a partire dal 1° gennaio, 0001 12:00:00 mezzanotte (o DateTime.Ticks in C#) fino al timestamp specificato. Per altre informazioni, vedere questo argomento: Proprietà DateTime.Ticks (System).

ticks('<timestamp>')
Parametro Obbligatorio TIPO Descrizione
< Timestamp> string Stringa per un timestamp
Valore restituito TIPO Descrizione
< numero di secce> Integer Numero di tick dal timestamp specificato

toLower

Restituisce una stringa in formato minuscolo. Se un carattere nella stringa non ha un equivalente minuscolo, viene incluso senza modifiche nella stringa restituita.

toLower('<text>')
Parametro Obbligatorio TIPO Descrizione
< Testo> string Stringa da restituire in formato minuscolo
Valore restituito TIPO Descrizione
< minuscolo-testo> string Stringa originale in formato minuscolo

Esempio

Questo esempio converte questa stringa in caratteri minuscoli:

toLower('Hello World')

E viene restituito questo risultato: "hello world"

toUpper

Restituisce una stringa in formato maiuscolo. Se un carattere nella stringa non ha un equivalente maiuscolo, viene incluso senza modifiche nella stringa restituita.

toUpper('<text>')
Parametro Obbligatorio TIPO Descrizione
< Testo> string Stringa da restituire in formato maiuscolo
Valore restituito TIPO Descrizione
< testo maiuscolo> string Stringa originale in formato maiuscolo

Esempio

Questo esempio converte questa stringa in caratteri maiuscoli:

toUpper('Hello World')

E viene restituito questo risultato: "HELLO WORLD"

Attivatore

Restituisce l'output di un trigger in fase di esecuzione oppure i valori di altre coppie nome-valore JSON che è possibile assegnare a un'espressione.

  • All'interno degli input di un trigger, questa funzione restituisce l'output dell'esecuzione precedente.

  • All'interno di una condizione di un trigger, questa funzione restituisce l'output dell'esecuzione precedente.

Per impostazione predefinita, questa funzione fa riferimento all'intero oggetto trigger, ma è possibile specificare una proprietà con il valore desiderato. Per questa funzione sono anche disponibili le versioni a sintassi abbreviata. Vedere triggerOutputs() e triggerBody().

trigger()
Valore restituito TIPO Descrizione
< Output di trigger> string Output di un trigger in fase di esecuzione

triggerBody

Restituisce l'oggetto body di output di un trigger in fase di esecuzione. Sintassi abbreviata per trigger().outputs.body. Vedere trigger().

triggerBody()
Valore restituito TIPO Descrizione
< Uscita corpo di trigger> string Oggetto body di output del trigger

triggerFormDataMultiValues

Restituisce una matrice con i valori corrispondenti a un nome di chiave nell'output di dati del modulo o codifica per il modulo di un trigger.

triggerFormDataMultiValues('<key>')
Parametro Obbligatorio TIPO Descrizione
< chiave> string Nome della chiave di cui si vuole ottenere il valore
Valore restituito TIPO Descrizione
[<array con valori> chiave] Array Matrice con tutti i valori che corrispondono alla chiave specificata

Esempio

Questo esempio crea una matrice dal valore della chiave "feedUrl" nell'output di dati del modulo o codifica per il modulo di un trigger RSS:

triggerFormDataMultiValues('feedUrl')

E restituisce questa matrice come risultato di esempio: ["https://feeds.a.dj.com/rss/RSSMarketsMain.xml"]

triggerFormDataValue

Restituisce una stringa con un singolo valore corrispondente a un nome di chiave nell'output di dati del modulo o codifica per il modulo di un trigger. Se la funzione trova più corrispondenze, genera un errore.

triggerFormDataValue('<key>')
Parametro Obbligatorio TIPO Descrizione
< chiave> string Nome della chiave di cui si vuole ottenere il valore
Valore restituito TIPO Descrizione
< chiave-valore> string Valore nella chiave specificata

Esempio

Questo esempio crea una stringa dal valore della chiave "feedUrl" nell'output di dati del modulo o codifica per il modulo di un trigger RSS:

triggerFormDataValue('feedUrl')

E restituisce questa stringa come risultato di esempio: "https://feeds.a.dj.com/rss/RSSMarketsMain.xml"

triggerMultipartBody

Restituisce il corpo per una parte specifica dell'output di un trigger con più parti.

triggerMultipartBody(<index>)
Parametro Obbligatorio TIPO Descrizione
< indice> Integer Valore di indice per la parte desiderata
Valore restituito TIPO Descrizione
< corpo> string Corpo della parte specificata di un output a più parti di un trigger

triggerOutputs

Restituisce l'output di un trigger in fase di esecuzione o i valori di altre coppie nome-valore JSON. Sintassi abbreviata per trigger().outputs. Vedere trigger().

triggerOutputs()
Valore restituito TIPO Descrizione
< Output di trigger> string Output di un trigger in fase di esecuzione

Trim

Rimuove gli spazi iniziali e finali da una stringa e restituisce la stringa aggiornata.

trim('<text>')
Parametro Obbligatorio TIPO Descrizione
< Testo> string Stringa da cui rimuovere gli spazi iniziali e finali
Valore restituito TIPO Descrizione
< aggiornatoTesto> string Versione aggiornata della stringa originale senza spazi iniziali o finali

Esempio

Questo esempio rimuove gli spazi iniziali e finali dalla stringa "Hello World ":

trim(' Hello World  ')

E viene restituito questo risultato: "Hello World"

U

union

Restituisce una raccolta che contiene tutti gli elementi delle raccolte specificate. Per essere incluso nel risultato, un elemento può essere presente in qualsiasi raccolta passata alla funzione. Se uno o più elementi hanno lo stesso nome, nel risultato viene incluso l'ultimo elemento con tale nome.

union('<collection1>', '<collection2>', ...)
union([<collection1>], [<collection2>], ...)
Parametro Obbligatorio TIPO Descrizione
< Collezione1>, <Collezione2>, ... Array o object, ma non entrambi i tipi Raccolte da cui ottenere tutti gli elementi
Valore restituito TIPO Descrizione
< aggiornataCollezione> Array o object, rispettivamente Raccolta con tutti gli elementi delle raccolte specificate e senza duplicati

Esempio

Questo esempio ottiene tutti gli elementi da queste raccolte:

union(createArray(1, 2, 3), createArray(1, 2, 10, 101))

E viene restituito questo risultato: [1, 2, 3, 10, 101]

uriComponent

Restituisce la versione con codifica URI (Uniform Resource Identifier) per una stringa sostituendo i caratteri non sicuri per gli URL con caratteri di escape. Usare questa funzione al posto di encodeUriComponent(). Anche se entrambe le funzioni hanno un comportamento analogo, è preferibile usare uriComponent().

uriComponent('<value>')
Parametro Obbligatorio TIPO Descrizione
< valore> string Stringa da convertire nel formato con codifica URI
Valore restituito TIPO Descrizione
< encoded-uri> string Stringa con codifica URI con i caratteri di escape

Esempio

Questo esempio crea una versione con codifica URI per questa stringa:

uriComponent('https://contoso.com')

E viene restituito questo risultato: "https%3A%2F%2Fcontoso.com"

uriComponentToBinary

Restituisce la versione binaria di un componente di un URI (Uniform Resource Identifier).

uriComponentToBinary('<value>')
Parametro Obbligatorio TIPO Descrizione
< valore> string Stringa con codifica URI da convertire
Valore restituito TIPO Descrizione
< binario-for-encoded-uri> string Versione binaria della stringa con codifica URI. Il contenuto binario è con codifica base64 e rappresentato da $content.

Esempio

Questo esempio crea la versione binaria per questa stringa con codifica URI:

uriComponentToBinary('https%3A%2F%2Fcontoso.com')

E viene restituito questo risultato: "aHR0cHM6Ly9jb250b3NvLmNvbQ=="

uriComponentToString

Restituisce la versione stringa di una stringa con codifica URI (Uniform Resource Identifier), decodificando in modo efficace la stringa con codifica URI.

uriComponentToString('<value>')
Parametro Obbligatorio TIPO Descrizione
< valore> string Stringa con codifica URI da decodificare
Valore restituito TIPO Descrizione
< decodificato-uri> string Versione decodificata della stringa con codifica URI

Esempio

Questo esempio crea la versione stringa decodificata per questa stringa con codifica URI:

uriComponentToString('https%3A%2F%2Fcontoso.com')

E viene restituito questo risultato: "https://contoso.com"

uriHost

Restituisce il valore host per un URI (Uniform Resource Identifier).

uriHost('<uri>')
Parametro Obbligatorio TIPO Descrizione
< Uri> string URI di cui restituire il valore host
Valore restituito TIPO Descrizione
< valore host> string Valore host per l'URI specificato

Esempio

Questo esempio trova il valore host per questo URI:

uriHost('https://www.localhost.com:8080')

E viene restituito questo risultato: "www.localhost.com"

uriPath

Restituisce il valore path per un URI (Uniform Resource Identifier).

uriPath('<uri>')
Parametro Obbligatorio TIPO Descrizione
< Uri> string URI di cui restituire il valore path
Valore restituito TIPO Descrizione
< Valore di cammino> string Valore path per l'URI specificato. Se path non ha un valore, viene restituito il carattere "/".

Esempio

Questo esempio trova il valore path per questo URI:

uriPath('https://www.contoso.com/catalog/shownew.htm?date=today')

E viene restituito questo risultato: "/catalog/shownew.htm"

uriPathAndQuery

Restituisce i valori path e query per un URI (Uniform Resource Identifier).

uriPathAndQuery('<uri>')
Parametro Obbligatorio TIPO Descrizione
< Uri> string URI di cui restituire i valori path e query
Valore restituito TIPO Descrizione
< path-query-value> string Valori path e query per l'URI specificato. Se path non specifica un valore, viene restituito il carattere "/".

Esempio

Questo esempio trova i valori path e query per questo URI:

uriPathAndQuery('https://www.contoso.com/catalog/shownew.htm?date=today')

E viene restituito questo risultato: "/catalog/shownew.htm?date=today"

uriPort

Restituisce il valore port per un URI (Uniform Resource Identifier).

uriPort('<uri>')
Parametro Obbligatorio TIPO Descrizione
< Uri> string URI di cui restituire il valore port
Valore restituito TIPO Descrizione
< valore di porto> Integer Valore port per l'URI specificato. Se port non specifica un valore, viene restituita la porta predefinita per il protocollo.

Esempio

Questo esempio restituisce il valore port per questo URI:

uriPort('https://www.localhost:8080')

E viene restituito questo risultato: 8080

uriQuery

Restituisce il valore query per un URI (Uniform Resource Identifier).

uriQuery('<uri>')
Parametro Obbligatorio TIPO Descrizione
< Uri> string URI di cui restituire il valore query
Valore restituito TIPO Descrizione
< query-value> string Valore query per l'URI specificato

Esempio

Questo esempio restituisce il valore query per questo URI:

uriQuery('https://www.contoso.com/catalog/shownew.htm?date=today')

E viene restituito questo risultato: "?date=today"

uriScheme

Restituisce il valore scheme per un URI (Uniform Resource Identifier).

uriScheme('<uri>')
Parametro Obbligatorio TIPO Descrizione
< Uri> string URI di cui restituire il valore scheme
Valore restituito TIPO Descrizione
< Valore dello schema> string Valore scheme per l'URI specificato

Esempio

Questo esempio restituisce il valore scheme per questo URI:

uriScheme('https://www.contoso.com/catalog/shownew.htm?date=today')

E viene restituito questo risultato: "http"

utcNow

Restituisce il timestamp corrente.

utcNow('<format>')

Facoltativamente, è possibile specificare un formato diverso con il parametro <format>.

Parametro Obbligatorio TIPO Descrizione
< formato> NO string Stringa di formato numerico che è un singolo identificatore di formato o un modello di formato personalizzato. Il formato predefinito per il timestamp è "o" (aaaa-MM-ddTHH:mm:ss:fffffffK), conforme a ISO 8601 e con informazioni sul fuso orario.

Se il formato non è un valore valido, viene generato un errore.
Valore restituito TIPO Descrizione
< Timestamp attuale> string Data e ora correnti

esempi

utcNow()                  // Returns 2025-09-25T05:18:31.3384797Z
utcNow('u')               // Returns 2025-09-25 05:18:31Z
utcNow('U')               // Returns Thursday, September 25, 2025 5:18:31 AM
utcNow('d')               // Returns 9/25/2025
utcNow('D')               // Returns Thursday, September 25, 2025
utcNow('t')               // Returns 5:18 AM
utcNow('T')               // Returns 5:18:31 AM
utcNow('y')               // Returns September 2025
utcNow('yyyy')            // Returns 2025
utcNow('ddd, d MMM yyyy') // Returns Thu, 25 Sep 2025

V

variables

Restituisce il valore per una variabile specificata.

variables('<variableName>')
Parametro Obbligatorio TIPO Descrizione
< variabilName> string Nome della variabile di cui si vuole ottenere il valore
Valore restituito TIPO Descrizione
< Valore variabile> Qualsiasi Valore della variabile specificata

Esempio

Si supponga che il valore corrente per una variabile "numItems" sia 20. Questo esempio ottiene il valore intero per questa variabile:

variables('numItems')

E viene restituito questo risultato: 20

W

flusso di lavoro

Restituisce tutti i dettagli del flusso di lavoro stesso in fase di esecuzione.

workflow().<property>
Parametro Obbligatorio TIPO Descrizione
< proprietà> NO string Nome della proprietà del flusso di lavoro di cui si vuole ottenere il valore



Per impostazione predefinita, un oggetto flusso di lavoro ha queste proprietà: name, type, id, location, run e tags.



- Il valore della proprietà run è un oggetto JSON che include queste proprietà: name, type e id.



- La proprietà tags è un oggetto JSON che include i tag associati all'app per la logica in App per la logica di Azure o il flusso in Power Automate e i valori per tali tag. Per altre informazioni sui tag nelle risorse di Azure, vedere Contrassegna risorse, gruppi di risorse e sottoscrizioni per l'organizzazione logica in Azure.



Nota: per impostazione predefinita, un'app per la logica non ha tag, ma un flusso di Power Automate ha i tag flowDisplayName e environmentName.

Esempio 1

Questo esempio restituisce il nome dell'esecuzione corrente di un flusso di lavoro:

workflow().run.name

Esempio 2

Se si usa Power Automate, è possibile creare un'espressione @workflow() che usa la proprietà di output tags per ottenere i valori dalla proprietà flowDisplayName o environmentName del flusso.

Ad esempio, è possibile inviare notifiche di posta elettronica personalizzate dal flusso stesso che si collegano di nuovo al flusso. Queste notifiche possono includere un collegamento HTML che contiene il nome visualizzato del flusso nel titolo del messaggio di posta elettronica e segue questa sintassi:

<a href=https://flow.microsoft.com/manage/environments/@{workflow()['tags']['environmentName']}/flows/@{workflow()['name']}/details>Open flow @{workflow()['tags']['flowDisplayName']}</a>

X

XML

Restituisce la versione XML di una stringa contenente un oggetto JSON.

xml('<value>')
Parametro Obbligatorio TIPO Descrizione
< valore> string Stringa con l'oggetto JSON da convertire

L'oggetto JSON deve avere una sola proprietà radice, che non può essere una matrice.
Il carattere barra rovesciata (\) viene usato come carattere di escape per le virgolette doppie (").
Valore restituito TIPO Descrizione
< Versione XML> Oggetto Elemento XML codificato per la stringa o l'oggetto JSON specificato

Esempio 1

In questo esempio la stringa viene convertita in XML:

xml('<name>Sophia Owen</name>')

E viene restituito questo elemento XML:

<name>Sophia Owen</name>

Esempio 2

Questo esempio crea la versione XML per questa stringa, che contiene un oggetto JSON:

xml(json('{ "name": "Sophia Owen" }'))

E viene restituito questo elemento XML:

<name>Sophia Owen</name>

esempio 3

Si supponga di avere questo oggetto JSON:

{
  "person": {
    "name": "Sophia Owen",
    "city": "Seattle"
  }
}

Questo esempio crea la versione XML per una stringa contenente questo oggetto JSON:

xml(json('{"person": {"name": "Sophia Owen", "city": "Seattle"}}'))

E viene restituito questo elemento XML:

<person>
  <name>Sophia Owen</name>
  <city>Seattle</city>
<person>

Esempio 4

La xml() funzione prevede un oggetto o una stringa contenente codice XML valido. La funzione non accetta una matrice non elaborata come input.

Se i dati sono una stringa JSON, è possibile usare la funzione per convertire la json() stringa in un oggetto JSON prima di passare il risultato alla xml() funzione, ad esempio:

xml(
  json('{"root":{"array":[
    { "ID": 1, "Name": "James" },
    { "ID": 2, "Name": "John" },
    { "ID": 3, "Name": "Sam" }
  ]}}')
)

Se si dispone di una matrice JSON, come nell'esempio seguente, sono disponibili tre opzioni.

[
  { "ID": 1, "Name": "James" },
  { "ID": 2, "Name": "John" },
  { "ID": 3, "Name": "Sam" }
]

Opzione 1: archiviare la matrice JSON in un'azione Compose denominata Compose1. Usare quindi la outputs() funzione per restituire un oggetto JSON da Compose1.

{
  "root": { "array": @{outputs('Compose1')} }
}

Archiviare l'oggetto JSON restituito in un'altra azione denominata Compose2. È quindi possibile usare le xml() funzioni e outputs() per creare codice XML dall'output dell'oggetto JSON da Compose2, ad esempio:

xml(outputs('Compose2'))

Opzione 2: Archiviare la matrice JSON in un'azione Compose denominata Compose1. Usare quindi le outputs()funzioni , concat()json(), e xml() per creare codice XML dall'output dell'oggetto JSON, ad esempio:

xml(
  json(
    concat(
      '{"root":{"array":',
      outputs('Compose1'),
      '}}'
    )
  )
)

Opzione 3: Archiviare la matrice JSON in un'azione Compose denominata Compose1. È quindi possibile usare le outputs()funzioni , json(), addProperty()e xml() per creare codice XML dall'output dell'oggetto JSON, ad esempio:

xml(
  addProperty(
    json('{}'),
    'root',
    addProperty(
      json('{}'),
      'array',
      outputs('Compose1')
    )
  )
)

Tutti gli esempi, inclusi l'esempio di dati stringa JSON e le opzioni da 1 a 3, restituiscono il risultato XML seguente:

<root>
  <array>
    <ID>1</ID>
    <Name>James</Name>
  </array>
  <array>
    <ID>2</ID>
    <Name>John</Name>
  </array>
  <array>
    <ID>3</ID>
    <Name>Sam</Name>
  </array>
</root>

xpath

Verifica nel codice XML la presenza di nodi o valori che corrispondono a un'espressione XPath (XML Path Language) e restituisce i nodi o i valori corrispondenti. Un'espressione XPath, o semplicemente "XPath", aiuta a spostarsi nella struttura del documento XML in modo che sia possibile selezionare i nodi o i valori di calcolo nel contenuto XML.

Annotazioni

Nelle app per la logica Consumo e Standard, tutte le espressioni di funzione usano la libreria XPath .NET. Le espressioni XPath sono compatibili con la libreria .NET sottostante e supportano solo l'espressione supportata dalla libreria .NET sottostante.

xpath('<xml>', '<xpath>')
Parametro Obbligatorio TIPO Descrizione
< XML> Qualsiasi Stringa XML per eseguire la ricerca di nodi o valori che corrispondono a un valore dell'espressione XPath
< xpath> Qualsiasi Espressione XPath usata per trovare i valori o i nodi XML corrispondenti
Valore restituito TIPO Descrizione
< xml-node> XML Nodo XML, quando solo un singolo nodo corrisponde all'espressione XPath specificata
< valore> Qualsiasi Valore di un nodo XML, quando solo un singolo valore corrisponde all'espressione XPath specificata
[<xml-nodo1>, <xml-nodo2>, ...] -o- [<valore1>, <valore2>, ...] Array Matrice con tutti i valori o i nodi XML che corrispondono all'espressione XPath specificata

Esempio 1

Si supponga di avere questa stringa XML 'items':

<?xml version="1.0"?>
<produce>
  <item>
    <name>Gala</name>
    <type>apple</type>
    <count>20</count>
  </item>
  <item>
    <name>Honeycrisp</name>
    <type>apple</type>
    <count>10</count>
  </item>
</produce>

In questo esempio viene passata l'espressione XPath, '/produce/item/name/text()', per trovare i nodi che corrispondono al nodo <name></name> nella stringa XML 'items', e restituisce una matrice con tali valori di nodo:

xpath(xml(parameters('items')), '/produce/item/name/text()')

Nell'esempio viene usata anche la funzione parameters() per ottenere la stringa XML da 'items' e convertire la stringa in formato XML usando la funzione xml().

Ecco la matrice di risultati popolata con i valori dei nodi che corrispondono a <name></name>:

[ Gala, Honeycrisp ]

Esempio 2

Nell'esempio 1 questo esempio passa nell'espressione XPath, '/produce/item/name[1]', per trovare il primo elemento name figlio dell'elemento item.

xpath(xml(parameters('items')), '/produce/item/name[1]')

Il risultato è il seguente: Gala

esempio 3

Nell'esempio 1, questo esempio passa l'espressione XPath, '/produce/item/name[last()]', per trovare l'ultimo elemento name figlio dell'elemento item.

xpath(xml(parameters('items')), '/produce/item/name[last()]')

Il risultato è il seguente: Honeycrisp

Esempio 4

In questo esempio si supponga che la stringa XML items contenga anche gli attributi expired='true' e expired='false':

<?xml version="1.0"?>
<produce>
  <item>
    <name expired='true'>Gala</name>
    <type>apple</type>
    <count>20</count>
  </item>
  <item>
    <name expired='false'>Honeycrisp</name>
    <type>apple</type>
    <count>10</count>
  </item>
</produce>

In questo esempio viene passata l'espressione XPath, '//name[@expired]', per trovare tutti gli elementi name con l'attributo expired:

xpath(xml(parameters('items')), '//name[@expired]')

Il risultato è il seguente: [ Gala, Honeycrisp ]

Esempio 5

In questo esempio, si supponga che la stringa XML items contenga solo questo attributo, expired = 'true':

<?xml version="1.0"?>
<produce>
  <item>
    <name expired='true'>Gala</name>
    <type>apple</type>
    <count>20</count>
  </item>
  <item>
    <name>Honeycrisp</name>
    <type>apple</type>
    <count>10</count>
  </item>
</produce>

In questo esempio viene passata l'espressione XPath, '//name[@expired = 'true']', per trovare tutti gli elementi name con l'attributo, expired = 'true':

xpath(xml(parameters('items')), '//name[@expired = 'true']')

Il risultato è il seguente: [ Gala ]

Esempio 6

In questo esempio si supponga che la stringa XML items contenga anche questi attributi:

  • expired='true' price='12'
  • expired='false' price='40'
<?xml version="1.0"?>
<produce>
  <item>
    <name expired='true' price='12'>Gala</name>
    <type>apple</type>
    <count>20</count>
  </item>
  <item>
    <name expired='false' price='40'>Honeycrisp</name>
    <type>apple</type>
    <count>10</count>
  </item>
</produce>

In questo esempio viene passata l'espressione XPath, '//name[@price>35]', per trovare tutti gli elementi name con price > 35:

xpath(xml(parameters('items')), '//name[@price>35]')

Il risultato è il seguente: Honeycrisp

Esempio 7

In questo esempio si supponga che la stringa XML items sia uguale a quella dell'esempio 1:

<?xml version="1.0"?>
<produce>
  <item>
    <name>Gala</name>
    <type>apple</type>
    <count>20</count>
  </item>
  <item>
    <name>Honeycrisp</name>
    <type>apple</type>
    <count>10</count>
  </item>
</produce>

Questo esempio trova nodi che corrispondono al nodo <count></count> e aggiunge tali valori di nodo con la funzione sum():

xpath(xml(parameters('items')), 'sum(/produce/item/count)')

Il risultato è il seguente: 30

Esempio 8

In questo esempio si supponga di avere questa stringa XML, che include lo spazio dei nomi del documento XML, xmlns="https://contoso.com":

<?xml version="1.0"?><file xmlns="https://contoso.com"><location>Paris</location></file>

Queste espressioni usano un'espressione XPath, /*[name()="file"]/*[name()="location"] o /*[local-name()="file" and namespace-uri()="https://contoso.com"]/*[local-name()="location"], per trovare nodi che corrispondono al nodo <location></location>. Questi esempi illustrano la sintassi usata nella finestra di progettazione o nell'editor di espressioni:

  • xpath(xml(body('Http')), '/*[name()="file"]/*[name()="location"]')
  • xpath(xml(body('Http')), '/*[local-name()="file" and namespace-uri()="https://contoso.com"]/*[local-name()="location"]')

Ecco il nodo del risultato che corrisponde al nodo <location></location>:

<location xmlns="https://contoso.com">Paris</location>

Importante

Se si usa la visualizzazione Codice, evitare le virgolette doppie (") usando il carattere barra rovesciata (\). Ad esempio, è necessario usare caratteri escape quando si serializza un'espressione come stringa JSON. Tuttavia, se si lavora nella finestra di progettazione o nell'editor per le espressioni, non è necessario evitare le virgolette doppie perché il carattere barra rovesciata viene aggiunto automaticamente alla definizione sottostante, ad esempio:

  • Visualizzazione Codice: xpath(xml(body('Http')), '/*[name()=\"file\"]/*[name()=\"location\"]')

  • Editor per le espressioni: xpath(xml(body('Http')), '/*[name()="file"]/*[name()="location"]')

Esempio 9

Nell'esempio 8 questo esempio usa l'espressione XPath, 'string(/*[name()="file"]/*[name()="location"])', per trovare il valore nel nodo <location></location>:

xpath(xml(body('Http')), 'string(/*[name()="file"]/*[name()="location"])')

Il risultato è il seguente: Paris

Passaggi successivi

Leggere altre informazioni sul linguaggio di definizione del flusso di lavoro