Przewodnik referencyjny dotyczący funkcji wyrażeń przepływu pracy w usługach Azure Logic Apps i Power Automate
Dotyczy: Azure Logic Apps (Zużycie + Standardowa)
W przypadku definicji przepływów pracy w usługach Azure Logic Apps i Power Automate niektóre wyrażenia pobierają wartości z akcji środowiska uruchomieniowego, które mogą jeszcze nie istnieć po uruchomieniu przepływu pracy. Aby odwołać się do wartości w tych wyrażeniach lub przetworzyć je, możesz użyć funkcji wyrażeń udostępnianych przez język definicji przepływu pracy.
Uwaga
Ta strona referencyjna dotyczy zarówno usług Azure Logic Apps, jak i Power Automate, ale jest wyświetlana w dokumentacji usługi Azure Logic Apps. Mimo że ta strona odnosi się konkretnie do przepływów pracy aplikacji logiki, te funkcje działają zarówno dla przepływów, jak i przepływów pracy aplikacji logiki. Aby uzyskać więcej informacji na temat funkcji i wyrażeń w usłudze Power Automate, zobacz Używanie wyrażeń w warunkach.
Można na przykład obliczyć wartości przy użyciu funkcji matematycznych, takich jak funkcja add(), gdy chcesz uzyskać sumę z liczb całkowitych lub zmiennoprzecinkowych. Poniżej przedstawiono inne przykładowe zadania, które można wykonywać za pomocą funkcji:
Zadanie | Składnia funkcji | Result |
---|---|---|
Zwraca ciąg w formacie małych liter. | toLower('<text>') Na przykład: toLower('Hello') |
"hello" |
Zwracanie globalnie unikatowego identyfikatora (GUID). | guid() | "c2ecc88d-88c8-4096-912c-d6f2e2b138ce" |
Aby znaleźć funkcje na podstawie ich ogólnego przeznaczenia, zapoznaj się z poniższymi tabelami. Aby uzyskać szczegółowe informacje o każdej funkcji, zobacz listę alfabetyczną.
Funkcje w wyrażeniach
Aby pokazać, jak używać funkcji w wyrażeniu, w tym przykładzie pokazano, jak można uzyskać wartość z parametru customerName
i przypisać tę wartość do accountName
właściwości przy użyciu funkcji parameters() w wyrażeniu:
"accountName": "@parameters('customerName')"
Poniżej przedstawiono kilka innych ogólnych sposobów używania funkcji w wyrażeniach:
Zadanie | Składnia funkcji w wyrażeniu |
---|---|
Wykonaj pracę z elementem, przekazując ten element do funkcji. | "@<functionName>(<item>)" |
1. Pobierz wartość parametruName przy użyciu funkcji zagnieżdżonej parameters() . 2. Wykonaj pracę z wynikiem, przekazując tę wartość do functionName. |
"@<functionName>(parameters('<parameterName>'))" |
1. Pobierz wynik z zagnieżdżonej funkcji wewnętrznej functionName. 2. Przekaż wynik do funkcji zewnętrznej functionName2. |
"@<functionName2>(functionName>(<<item>))" |
1. Pobierz wynik z functionName. 2. Biorąc pod uwagę, że wynik jest obiektem właściwości propertyName, pobierz wartość tej właściwości. |
"@<functionName>(<element).<>propertyName>" |
Na przykład concat()
funkcja może przyjmować co najmniej dwie wartości ciągu jako parametry. Ta funkcja łączy te ciągi w jeden ciąg. Możesz przekazać literały ciągu, na przykład "Sophia" i "Owen", aby uzyskać połączony ciąg "SophiaOwen":
"customerName": "@concat('Sophia', 'Owen')"
Możesz też pobrać wartości ciągów z parametrów. W tym przykładzie użyto parameters()
funkcji w każdym concat()
parametrze i parametrach firstName
i lastName
. Następnie przekazujesz wynikowe ciągi do concat()
funkcji, aby uzyskać połączony ciąg, na przykład "SophiaOwen":
"customerName": "@concat(parameters('firstName'), parameters('lastName'))"
Tak czy inaczej oba przykłady przypisują wynik do customerName
właściwości .
Zagadnienia dotyczące korzystania z funkcji
Projektant nie ocenia wyrażeń środowiska uruchomieniowego, które są używane jako parametry funkcji w czasie projektowania. Projektant wymaga, aby wszystkie wyrażenia mogły być w pełni oceniane w czasie projektowania.
Parametry funkcji są oceniane od lewej do prawej.
W składni definicji parametrów znak zapytania (?), który pojawia się po parametrze oznacza, że parametr jest opcjonalny. Zobacz na przykład getFutureTime().
Wyrażenia funkcji, które pojawiają się w tekście z tekstem zwykłym, wymagają ujęć nawiasów klamrowych ({}), aby zamiast tego używać formatu interpolowanego wyrażenia. Ten format pomaga uniknąć problemów z analizowaniem. Jeśli wyrażenie funkcji nie jest wyświetlane w tekście ze zwykłym tekstem, nie są wymagane nawiasy klamrowe.
W poniższym przykładzie przedstawiono poprawną i niepoprawną składnię:
Odpowiedź prawidłowa:
"<text>/@{<function-name>('<parameter-name>')}/<text>"
Odpowiedź nieprawidłowa:
"<text>/@<function-name>('<parameter-name>')/<text>"
OK:
"@<function-name>('<parameter-name>')"
Poniższe sekcje organizują funkcje na podstawie ich ogólnego przeznaczenia lub można przeglądać te funkcje w kolejności alfabetycznej.
Funkcje ciągów
Aby pracować z ciągami, możesz użyć tych funkcji ciągów, a także niektórych funkcji kolekcji. Funkcje ciągów działają tylko na ciągach.
Funkcja ciągu | Zadanie |
---|---|
chunk | Podziel ciąg lub kolekcję na fragmenty o równej długości. |
concat | Połącz co najmniej dwa ciągi i zwróć połączony ciąg. |
endsWith | Sprawdź, czy ciąg kończy się określonym podciągem. |
formatNumber | Zwracanie liczby jako ciągu na podstawie określonego formatu |
guid | Wygeneruj unikatowy identyfikator globalny (GUID) jako ciąg. |
indexOf | Zwróć pozycję początkową dla podciągów. |
isFloat | Zwraca wartość logiczną wskazującą, czy ciąg jest liczbą zmiennoprzecinkową. |
isInt | Zwraca wartość logiczną wskazującą, czy ciąg jest liczbą całkowitą. |
lastIndexOf | Zwróć pozycję początkową ostatniego wystąpienia podciągów. |
length | Zwraca liczbę elementów w ciągu lub tablicy. |
nthIndexOf | Zwróć pozycję początkową lub wartość indeksu, w której nwystąpienie podciągu pojawia się w ciągu. |
replace | Zastąp podciąg określonym ciągiem i zwróć zaktualizowany ciąg. |
slice | Zwróć podciąg, określając pozycję początkową i końcową lub wartość. Zobacz również podciąg. |
split | Zwraca tablicę zawierającą podciągi oddzielone przecinkami od większego ciągu na podstawie określonego znaku ogranicznika w oryginalnym ciągu. |
startsWith | Sprawdź, czy ciąg rozpoczyna się od określonego podciągu. |
Podciąg | Zwraca znaki z ciągu, zaczynając od określonej pozycji. Zobacz również wycinek. |
toLower | Zwraca ciąg w formacie małych liter. |
toUpper | Zwraca ciąg w formacie wielkiej litery. |
przycinać | Usuń białe znaki wiodące i końcowe z ciągu i zwróć zaktualizowany ciąg. |
Funkcje odbioru
Aby pracować z kolekcjami, zazwyczaj tablicami, ciągami, a czasami słownikami, można użyć tych funkcji kolekcji.
Funkcja Collection | Zadanie |
---|---|
chunk | Podziel ciąg lub kolekcję na fragmenty o równej długości. |
Contains | Sprawdź, czy kolekcja ma określony element. |
empty | Sprawdź, czy kolekcja jest pusta. |
pierwszy | Zwróć pierwszy element z kolekcji. |
skrzyżowanie | Zwróć kolekcję zawierającą tylko wspólne elementy w określonych kolekcjach. |
przedmiot | Jeśli ta funkcja pojawia się wewnątrz akcji powtarzającej się w tablicy, zwróć bieżący element w tablicy podczas bieżącej iteracji akcji. |
join | Zwróć ciąg zawierający wszystkie elementy z tablicy oddzielone określonym znakiem. |
ostatni | Zwróć ostatni element z kolekcji. |
length | Zwraca liczbę elementów w ciągu lub tablicy. |
reverse | Odwraca kolejność elementów w tablicy. |
pominąć | Usuń elementy z przodu kolekcji i zwróć wszystkie inne elementy. |
sort | Sortuj elementy w kolekcji. |
brać | Zwracanie elementów z przodu kolekcji. |
unia | Zwróć kolekcję zawierającą wszystkie elementy z określonych kolekcji. |
Logiczne funkcje porównywania
Aby pracować z warunkami, porównać wartości i wyniki wyrażeń lub ocenić różne rodzaje logiki, możesz użyć tych funkcji porównania logicznego. Aby uzyskać pełną dokumentację dotyczącą każdej funkcji, zobacz listę alfabetyczną.
Uwaga
Jeśli używasz funkcji logicznych lub warunków do porównywania wartości, wartości null są konwertowane na puste wartości ciągu (""
). Zachowanie warunków różni się w porównaniu z pustym ciągiem zamiast wartości null. Aby uzyskać więcej informacji, zobacz funkcję string().
Funkcja porównania logicznego | Zadanie |
---|---|
and | Sprawdź, czy wszystkie wyrażenia są prawdziwe. |
equals | Sprawdź, czy obie wartości są równoważne. |
greater | Sprawdź, czy pierwsza wartość jest większa niż druga wartość. |
greaterOrEquals | Sprawdź, czy pierwsza wartość jest większa, czy równa drugiej wartości. |
jeśli | Sprawdź, czy wyrażenie ma wartość true, czy false. Na podstawie wyniku zwróć określoną wartość. |
isFloat | Zwraca wartość logiczną wskazującą, czy ciąg jest liczbą zmiennoprzecinkową. |
isInt | Zwraca wartość logiczną wskazującą, czy ciąg jest liczbą całkowitą. |
less | Sprawdź, czy pierwsza wartość jest mniejsza niż druga wartość. |
lessOrEquals | Sprawdź, czy pierwsza wartość jest mniejsza, czy równa drugiej wartości. |
nie | Sprawdź, czy wyrażenie jest fałszywe. |
or | Sprawdź, czy co najmniej jedno wyrażenie ma wartość true. |
Funkcje konwersji
Aby zmienić typ lub format wartości, możesz użyć tych funkcji konwersji. Na przykład można zmienić wartość z wartości logicznej na liczbę całkowitą. Aby uzyskać więcej informacji na temat sposobu obsługi typów zawartości przez usługę Azure Logic Apps podczas konwersji, zobacz Handle content types (Obsługa typów zawartości). Aby uzyskać pełną dokumentację dotyczącą każdej funkcji, zobacz listę alfabetyczną.
Uwaga
Usługa Azure Logic Apps automatycznie lub niejawnie wykonuje kodowanie i dekodowanie base64, więc nie trzeba ręcznie wykonywać tych konwersji przy użyciu funkcji kodowania i dekodowania. Jeśli jednak używasz tych funkcji w projektancie, w projektancie mogą wystąpić nieoczekiwane zachowania renderowania. Te zachowania mają wpływ tylko na widoczność funkcji, a nie ich efekt, chyba że edytujesz wartości parametrów funkcji, co spowoduje usunięcie funkcji i ich efektów z kodu. Aby uzyskać więcej informacji, zobacz Niejawne konwersje typów danych.
Funkcja konwersji | Zadanie |
---|---|
tablica | Zwraca tablicę z jednego określonego danych wejściowych. Aby uzyskać wiele danych wejściowych, zobacz createArray. |
base64 | Zwróć wersję zakodowaną w formacie base64 dla ciągu. |
base64ToBinary | Zwróć wersję binarną dla ciągu zakodowanego w formacie base64. |
base64ToString | Zwraca wersję ciągu dla ciągu zakodowanego w formacie base64. |
dwójkowy | Zwraca wersję binarną dla wartości wejściowej. |
bool | Zwróć wersję logiczną dla wartości wejściowej. |
createArray | Zwraca tablicę z wielu danych wejściowych. |
dataUri | Zwraca identyfikator URI danych dla wartości wejściowej. |
dataUriToBinary | Zwróć wersję binarną identyfikatora URI danych. |
dataUriToString | Zwróć wersję ciągu dla identyfikatora URI danych. |
decimal | Zwraca liczbę dziesiętną dla ciągu dziesiętnego. |
dekodujBase64 | Zwraca wersję ciągu dla ciągu zakodowanego w formacie base64. |
decodeDataUri | Zwróć wersję binarną identyfikatora URI danych. |
decodeUriComponent | Zwraca ciąg, który zastępuje znaki ucieczki dekodowanym wersjami. |
encodeUriComponent | Zwróć ciąg, który zastępuje znaki niebezpieczne adresu URL znakami ucieczki. |
float | Zwraca liczbę zmiennoprzecinkową dla wartości wejściowej. |
int | Zwróć wersję całkowitą dla ciągu. |
JSON | Zwróć wartość typu JavaScript Object Notation (JSON) lub obiekt dla ciągu lub XML. |
string | Zwraca wersję ciągu dla wartości wejściowej. |
uriComponent | Zwróć wersję zakodowaną w formacie URI dla wartości wejściowej, zastępując znaki niebezpieczne adresu URL znakami ucieczki. |
uriComponentToBinary | Zwróć wersję binarną dla ciągu zakodowanego identyfikatorem URI. |
uriComponentToString | Zwróć wersję ciągu dla ciągu zakodowanego identyfikatorem URI. |
xml | Zwróć wersję XML dla ciągu. |
Niejawne konwersje typów danych
Usługa Azure Logic Apps automatycznie lub niejawnie konwertuje między niektórymi typami danych, więc nie trzeba ręcznie wykonywać tych konwersji. Jeśli na przykład używasz wartości innych niż ciągi, w których ciągi są oczekiwane jako dane wejściowe, usługa Azure Logic Apps automatycznie konwertuje wartości inne niż ciągi na ciągi.
Załóżmy na przykład, że wyzwalacz zwraca wartość liczbową jako dane wyjściowe:
triggerBody()?['123']
Jeśli używasz tych liczbowych danych wyjściowych, w których oczekiwane są dane wejściowe ciągu, takie jak adres URL, usługa Azure Logic Apps automatycznie konwertuje wartość na ciąg przy użyciu notacji nawiasów klamrowych ({}
):
@{triggerBody()?['123']}
Kodowanie i dekodowanie base64
Usługa Azure Logic Apps automatycznie lub niejawnie wykonuje kodowanie lub dekodowanie base64, więc nie trzeba ręcznie wykonywać tych konwersji przy użyciu odpowiednich funkcji:
base64(<value>)
base64ToBinary(<value>)
base64ToString(<value>)
base64(decodeDataUri(<value>))
concat('data:;base64,',<value>)
concat('data:,',encodeUriComponent(<value>))
decodeDataUri(<value>)
Uwaga
Jeśli ręcznie dodasz dowolną z tych funkcji podczas korzystania z projektanta, bezpośrednio do wyzwalacza lub akcji lub za pomocą edytora wyrażeń, odejdź od projektanta, a następnie wróć do projektanta, funkcja zniknie z projektanta, pozostawiając tylko wartości parametrów. To zachowanie występuje również w przypadku wybrania wyzwalacza lub akcji, która używa tej funkcji bez edytowania wartości parametrów funkcji. Ten wynik wpływa tylko na widoczność funkcji, a nie na efekt. W widoku kodu funkcja nie ma wpływu. Jednak jeśli edytujesz wartości parametrów funkcji, funkcja i jej efekt zostaną usunięte z widoku kodu, pozostawiając tylko wartości parametrów funkcji.
Funkcje matematyczne
Aby pracować z liczbami całkowitymi i zmiennoprzecinkami, możesz użyć tych funkcji matematycznych. Aby uzyskać pełną dokumentację dotyczącą każdej funkcji, zobacz listę alfabetyczną.
Math, funkcja | Zadanie |
---|---|
add | Zwróć wynik z dodania dwóch liczb. |
div | Zwróć wynik z dzielenia dwóch liczb. |
Max | Zwraca najwyższą wartość z zestawu liczb lub tablicy. |
Min | Zwraca najniższą wartość z zestawu liczb lub tablicy. |
mod | Zwróć resztę z dzielenia dwóch liczb. |
mul | Zwróć produkt z mnożenia dwóch liczb. |
rand | Zwraca losową liczbę całkowitą z określonego zakresu. |
range | Zwraca tablicę całkowitą rozpoczynającą się od określonej liczby całkowitej. |
Sub | Zwróć wynik odejmowania drugiej liczby z pierwszej liczby. |
Funkcje daty i godziny
Aby pracować z datami i godzinami, możesz użyć tych funkcji daty i godziny. Aby uzyskać pełną dokumentację dotyczącą każdej funkcji, zobacz listę alfabetyczną.
Funkcja daty lub godziny | Zadanie |
---|---|
addDays | Dodaj dni do znacznika czasu. |
addHours | Dodaj godziny do znacznika czasu. |
addMinutes | Dodaj minuty do znacznika czasu. |
addSeconds | Dodaj sekundy do znacznika czasu. |
addToTime | Dodaj określone jednostki czasu do znacznika czasu. Zobacz również getFutureTime. |
convertFromUtc | Przekonwertuj znacznik czasu z uniwersalnego czasu koordynowanego (UTC) na docelową strefę czasową. |
convertTimeZone | Przekonwertuj znacznik czasu ze źródłowej strefy czasowej na docelową strefę czasową. |
convertToUtc | Przekonwertuj znacznik czasu ze źródłowej strefy czasowej na uniwersalny czas koordynowany (UTC). |
dateDifference | Zwróć różnicę między dwiema datami jako przedziałem czasu. |
dayOfMonth | Zwróć dzień składnika miesiąca ze znacznika czasu. |
dayOfWeek | Zwróć dzień składnika tygodnia ze znacznika czasu. |
dayOfYear | Zwraca dzień składnika roku ze znacznika czasu. |
formatDateTime | Zwraca datę ze znacznika czasu. |
getFutureTime | Zwróć bieżący znacznik czasu oraz określoną liczbę jednostek czasu. Zobacz również addToTime. |
getPastTime | Zwróć bieżący znacznik czasu minus określoną liczbę jednostek czasu. Zobacz również odejmowanieFromTime. |
parseDateTime | Zwróć znacznik czasu z ciągu zawierającego znacznik czasu. |
startOfDay | Zwróć początek dnia dla znacznika czasu. |
startOfHour | Zwróć początek godziny dla znacznika czasu. |
startOfMonth | Zwróć początek miesiąca dla znacznika czasu. |
odejmowanieFromTime | Odejmij liczbę jednostek czasu z znacznika czasu. Zobacz również getPastTime. |
Kleszcze | ticks Zwraca wartość właściwości dla określonego znacznika czasu. |
utcNow | Zwraca bieżący znacznik czasu jako ciąg. |
Funkcje przepływu pracy
Te funkcje przepływu pracy mogą pomóc:
- Uzyskaj szczegółowe informacje o wystąpieniu przepływu pracy w czasie wykonywania.
- Praca z danymi wejściowymi używanymi do tworzenia wystąpień aplikacji logiki lub przepływów.
- Odwołuj się do danych wyjściowych z wyzwalaczy i akcji.
Na przykład możesz odwoływać się do danych wyjściowych z jednej akcji i używać tych danych w późniejszej akcji. Aby uzyskać pełną dokumentację dotyczącą każdej funkcji, zobacz listę alfabetyczną.
Funkcja przepływu pracy | Zadanie |
---|---|
action | Zwróć dane wyjściowe bieżącej akcji w czasie wykonywania lub wartości z innych par nazw i wartości JSON. Zobacz również akcje. |
akcje | Zwraca dane wyjściowe akcji w czasie wykonywania lub wartości z innych par nazw i wartości JSON. Zobacz też akcję. |
treść | Zwraca dane wyjściowe akcji body w czasie wykonywania. |
formDataMultiValues | Utwórz tablicę z wartościami, które pasują do nazwy klucza w danych formularza lub w danych wyjściowych akcji zakodowanych w formie. |
formDataValue | Zwraca pojedynczą wartość zgodną z nazwą klucza w danych formularza lub danych wyjściowych zakodowanych w formie akcji. |
przedmiot | Jeśli ta funkcja pojawia się wewnątrz akcji powtarzającej się w tablicy, zwróć bieżący element w tablicy podczas bieżącej iteracji akcji. |
Elementy | Jeśli ta funkcja pojawi się wewnątrz pętli Foreach lub Until, zwróć bieżący element z określonej pętli. |
iteracjaIndexes | Jeśli ta funkcja pojawi się wewnątrz pętli Until, zwróć wartość indeksu dla bieżącej iteracji. Tej funkcji można używać wewnątrz zagnieżdżonych pętli Until. |
listCallbackUrl | Zwróć "adres URL wywołania zwrotnego", który wywołuje wyzwalacz lub akcję. |
multipartBody | Zwróć treść określonej części w danych wyjściowych akcji, które mają wiele części. |
Wyjść | Zwraca dane wyjściowe akcji w czasie wykonywania. |
parameters | Zwróć wartość parametru opisanego w definicji przepływu pracy. |
wynik | Zwraca dane wejściowe i wyjściowe z akcji najwyższego poziomu wewnątrz określonej akcji o określonym zakresie, takiej jak For_each , Until i Scope . |
spust | Zwraca dane wyjściowe wyzwalacza w czasie wykonywania lub z innych par nazw i wartości JSON. Zobacz również wyzwalaczOutputs i triggerBody. |
triggerBody | Zwracanie danych wyjściowych body wyzwalacza w czasie wykonywania. Zobacz wyzwalacz. |
triggerFormDataValue | Zwraca pojedynczą wartość odpowiadającą nazwie klucza w danych formularza lub danych wyjściowych wyzwalacza zakodowanego w formie. |
triggerMultipartBody | Zwróć treść określonej części w danych wyjściowych wieloczęściowych wyzwalacza. |
triggerFormDataMultiValues | Utwórz tablicę, której wartości pasują do nazwy klucza w danych formularza lub w danych wyjściowych wyzwalacza zakodowanego w formie. |
triggerOutputs | Zwraca dane wyjściowe wyzwalacza w czasie wykonywania lub wartości z innych par nazw i wartości JSON. Zobacz wyzwalacz. |
Zmiennych | Zwraca wartość określonej zmiennej. |
przepływ pracy | Zwróć wszystkie szczegóły dotyczące samego przepływu pracy w czasie wykonywania. |
Funkcje analizowania URI
Aby pracować z identyfikatorami URI i uzyskać różne wartości właściwości dla tych identyfikatorów URI, możesz użyć tych funkcji analizowania identyfikatorów URI. Aby uzyskać pełną dokumentację dotyczącą każdej funkcji, zobacz listę alfabetyczną.
Funkcja analizowania identyfikatora URI | Zadanie |
---|---|
uriHost | host Zwraca wartość identyfikatora URI (Uniform Resource Identifier). |
uriPath | path Zwraca wartość identyfikatora URI (Uniform Resource Identifier). |
uriPathAndQuery | Zwraca wartości path i query dla identyfikatora URI (URI). |
uriPort | port Zwraca wartość identyfikatora URI (Uniform Resource Identifier). |
uriQuery | query Zwraca wartość identyfikatora URI (Uniform Resource Identifier). |
uriScheme | scheme Zwraca wartość identyfikatora URI (Uniform Resource Identifier). |
Funkcje manipulowania: JSON i XML
Aby pracować z obiektami JSON i węzłami XML, można użyć tych funkcji manipulowania. Aby uzyskać pełną dokumentację dotyczącą każdej funkcji, zobacz listę alfabetyczną.
Funkcja manipulowania | Zadanie |
---|---|
addProperty | Dodaj właściwość i jej wartość lub parę name-value do obiektu JSON i zwróć zaktualizowany obiekt. |
Łączonej | Zwraca pierwszą wartość inną niż null z co najmniej jednego parametru. |
removeProperty | Usuń właściwość z obiektu JSON i zwróć zaktualizowany obiekt. |
setProperty | Ustaw wartość właściwości obiektu JSON i zwróć zaktualizowany obiekt. |
xpath | Sprawdź kod XML dla węzłów lub wartości, które są zgodne z wyrażeniem XPath (XML Path Language) i zwraca pasujące węzły lub wartości. |
---------------------------------
Wszystkie funkcje — lista alfabetyczna
W tej sekcji wymieniono wszystkie dostępne funkcje w kolejności alfabetycznej.
A
action
Zwróć dane wyjściowe bieżącej akcji w czasie wykonywania lub wartości z innych par nazw i wartości JSON, które można przypisać do wyrażenia. Domyślnie ta funkcja odwołuje się do całego obiektu akcji, ale opcjonalnie można określić właściwość, której wartość chcesz. Zobacz również akcje().
Funkcji można używać action()
tylko w następujących miejscach:
- Właściwość
unsubscribe
akcji elementu webhook, aby uzyskać dostęp do wyniku z oryginalnegosubscribe
żądania - Właściwość
trackedProperties
akcji do-until
Warunek pętli dla akcji
action()
action().outputs.body.<property>
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<właściwość> | Nie. | String | Nazwa właściwości obiektu akcji, której wartość ma być następująca: name, startTime, endTime, inputs, outputs, status, code, trackingId i clientTrackingId. W witrynie Azure Portal te właściwości można znaleźć, przeglądając szczegóły konkretnej historii uruchamiania. Aby uzyskać więcej informacji, zobacz INTERFEJS API REST — akcje uruchamiania przepływu pracy. |
Wartość zwracana | Type | Opis |
---|---|---|
<action-output> | String | Dane wyjściowe z bieżącej akcji lub właściwości |
akcje
Zwraca dane wyjściowe akcji w czasie wykonywania lub wartości z innych par nazw i wartości JSON, które można przypisać do wyrażenia. Domyślnie funkcja odwołuje się do całego obiektu akcji, ale opcjonalnie można określić właściwość, której wartość jest odpowiednia. Aby uzyskać skrócone wersje, zobacz body(). Aby uzyskać bieżącą akcję, zobacz action().
Napiwek
Funkcja actions()
zwraca dane wyjściowe jako ciąg. Jeśli musisz pracować z zwracaną wartością jako obiektem JSON, musisz najpierw przekonwertować wartość ciągu. Wartość ciągu można przekształcić w obiekt JSON przy użyciu akcji Przeanalizuj kod JSON.
Uwaga
Wcześniej można było użyć actions()
funkcji lub conditions
elementu podczas określania, że akcja została uruchomiona na podstawie danych wyjściowych innej akcji. Jednak aby zadeklarować jawne zależności między akcjami, należy teraz użyć właściwości zależnej akcji runAfter
.
Aby dowiedzieć się więcej na temat runAfter
właściwości, zobacz Catch and handle failures with the runAfter property (Przechwytywanie i obsługa błędów za pomocą właściwości runAfter).
actions('<actionName>')
actions('<actionName>').outputs.body.<property>
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<actionName> | Tak | String | Nazwa obiektu akcji, którego dane wyjściowe chcesz wykonać |
<właściwość> | Nie. | String | Nazwa właściwości obiektu akcji, której wartość ma być następująca: name, startTime, endTime, inputs, outputs, status, code, trackingId i clientTrackingId. W witrynie Azure Portal te właściwości można znaleźć, przeglądając szczegóły konkretnej historii uruchamiania. Aby uzyskać więcej informacji, zobacz INTERFEJS API REST — akcje uruchamiania przepływu pracy. |
Wartość zwracana | Type | Opis |
---|---|---|
<action-output> | String | Dane wyjściowe z określonej akcji lub właściwości |
Przykład
Ten przykład pobiera status
wartość właściwości z akcji Get user
X w czasie wykonywania:
actions('Get_user').outputs.body.status
I zwraca ten wynik: "Succeeded"
add
Zwróć wynik z dodania dwóch liczb.
add(<summand_1>, <summand_2>)
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<>summand_1, <summand_2> | Tak | Liczba całkowita, zmiennoprzecinkowa lub mieszana | Liczby do dodania |
Wartość zwracana | Type | Opis |
---|---|---|
<wynik-suma> | Liczba całkowita lub zmiennoprzecinkowa | Wynik dodawania określonych liczb |
Przykład
W tym przykładzie dodano określone liczby:
add(1, 1.5)
I zwraca ten wynik: 2.5
addDays
Dodaj dni do znacznika czasu.
addDays('<timestamp>', <days>, '<format>'?)
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<Sygnatury czasowej> | Tak | String | Ciąg zawierający znacznik czasu |
<Dni> | Tak | Integer | Dodatnia lub ujemna liczba dni do dodania |
<format> | Nie. | String | Ciąg formatu liczbowego, który jest specyfikatorem pojedynczego formatu lub wzorcem formatu niestandardowego. Domyślny format znacznika czasu to "o" (rrrr-MM-ddTHH:mm:ss.fffffffK), który jest zgodny z normą ISO 8601 i zachowuje informacje o strefie czasowej. Jeśli format nie jest prawidłową wartością, zostanie wygenerowany błąd. |
Wartość zwracana | Type | Opis |
---|---|---|
<sygnatura czasowa aktualizacji> | String | Znacznik czasu plus określona liczba dni |
Przykład 1
W tym przykładzie dodano 10 dni do określonego znacznika czasu:
addDays('2018-03-15T00:00:00Z', 10)
I zwraca ten wynik: "2018-03-25T00:00:00.0000000Z"
Przykład 2
W tym przykładzie odejmuje pięć dni od określonego znacznika czasu:
addDays('2018-03-15T00:00:00Z', -5)
I zwraca ten wynik: "2018-03-10T00:00:00.0000000Z"
addHours
Dodaj godziny do znacznika czasu.
addHours('<timestamp>', <hours>, '<format>'?)
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<Sygnatury czasowej> | Tak | String | Ciąg zawierający znacznik czasu |
<hours> | Tak | Integer | Dodatnia lub ujemna liczba godzin do dodania |
<format> | Nie. | String | Ciąg formatu liczbowego, który jest specyfikatorem pojedynczego formatu lub wzorcem formatu niestandardowego. Domyślny format znacznika czasu to "o" (rrrr-MM-ddTHH:mm:ss.fffffffK), który jest zgodny z normą ISO 8601 i zachowuje informacje o strefie czasowej. Jeśli format nie jest prawidłową wartością, zostanie wygenerowany błąd. |
Wartość zwracana | Type | Opis |
---|---|---|
<sygnatura czasowa aktualizacji> | String | Znacznik czasu plus określona liczba godzin |
Przykład 1
W tym przykładzie dodano 10 godzin do określonego znacznika czasu:
addHours('2018-03-15T00:00:00Z', 10)
I zwraca ten wynik: "2018-03-15T10:00:00.0000000Z"
Przykład 2
W tym przykładzie odejmuje pięć godzin od określonego znacznika czasu:
addHours('2018-03-15T15:00:00Z', -5)
I zwraca ten wynik: "2018-03-15T10:00:00.0000000Z"
addMinutes
Dodaj minuty do znacznika czasu.
addMinutes('<timestamp>', <minutes>, '<format>'?)
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<Sygnatury czasowej> | Tak | String | Ciąg zawierający znacznik czasu |
<minutes> | Tak | Integer | Dodatnia lub ujemna liczba minut do dodania |
<format> | Nie. | String | Ciąg formatu liczbowego, który jest specyfikatorem pojedynczego formatu lub wzorcem formatu niestandardowego. Domyślny format znacznika czasu to "o" (rrrr-MM-ddTHH:mm:ss.fffffffK), który jest zgodny z normą ISO 8601 i zachowuje informacje o strefie czasowej. Jeśli format nie jest prawidłową wartością, zostanie wygenerowany błąd. |
Wartość zwracana | Type | Opis |
---|---|---|
<sygnatura czasowa aktualizacji> | String | Znacznik czasu plus określona liczba minut |
Przykład 1
W tym przykładzie dodano 10 minut do określonego znacznika czasu:
addMinutes('2018-03-15T00:10:00Z', 10)
I zwraca ten wynik: "2018-03-15T00:20:00.0000000Z"
Przykład 2
W tym przykładzie odejmuje pięć minut od określonego znacznika czasu:
addMinutes('2018-03-15T00:20:00Z', -5)
I zwraca ten wynik: "2018-03-15T00:15:00.0000000Z"
addProperty
Dodaj właściwość i jej wartość lub parę name-value do obiektu JSON i zwróć zaktualizowany obiekt. Jeśli właściwość już istnieje w czasie wykonywania, funkcja kończy się niepowodzeniem i zgłasza błąd.
addProperty(<object>, '<property>', <value>)
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<object> | Tak | Objekt | Obiekt JSON, w którym chcesz dodać właściwość |
<właściwość> | Tak | String | Nazwa właściwości do dodania |
<wartość> | Tak | Dowolne | Wartość właściwości |
Wartość zwracana | Type | Opis |
---|---|---|
<zaktualizowany obiekt> | Objekt | Zaktualizowany obiekt JSON z określoną właściwością |
Aby dodać właściwość nadrzędną do istniejącej właściwości, użyj setProperty()
funkcji, a nie addProperty()
funkcji. W przeciwnym razie funkcja zwraca tylko obiekt podrzędny jako dane wyjściowe.
setProperty(<object>, '<parent-property>', addProperty(<object>['<parent-property>'], '<child-property>', <value>)
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<object> | Tak | Objekt | Obiekt JSON, w którym chcesz dodać właściwość |
<właściwość nadrzędna> | Tak | String | Nazwa właściwości nadrzędnej, w której chcesz dodać właściwość podrzędną |
<właściwość podrzędna> | Tak | String | Nazwa właściwości podrzędnej do dodania |
<wartość> | Tak | Dowolne | Wartość ustawiona dla określonej właściwości |
Wartość zwracana | Type | Opis |
---|---|---|
<zaktualizowany obiekt> | Objekt | Zaktualizowany obiekt JSON, którego właściwość została ustawiona |
Przykład 1
W tym przykładzie middleName
właściwość dodaje do obiektu JSON, który jest konwertowany z ciągu na format JSON przy użyciu funkcji JSON(). Obiekt zawiera firstName
już właściwości i surName
. Funkcja przypisuje określoną wartość do nowej właściwości i zwraca zaktualizowany obiekt:
addProperty(json('{ "firstName": "Sophia", "lastName": "Owen" }'), 'middleName', 'Anne')
Oto bieżący obiekt JSON:
{
"firstName": "Sophia",
"surName": "Owen"
}
Oto zaktualizowany obiekt JSON:
{
"firstName": "Sophia",
"middleName": "Anne",
"surName": "Owen"
}
Przykład 2
W tym przykładzie właściwość podrzędna middleName
dodaje właściwość podrzędną do istniejącej customerName
właściwości w obiekcie JSON, który jest konwertowany z ciągu na format JSON przy użyciu funkcji JSON(). Funkcja przypisuje określoną wartość do nowej właściwości i zwraca zaktualizowany obiekt:
setProperty(json('{ "customerName": { "firstName": "Sophia", "surName": "Owen" } }'), 'customerName', addProperty(json('{ "customerName": { "firstName": "Sophia", "surName": "Owen" } }')['customerName'], 'middleName', 'Anne'))
Oto bieżący obiekt JSON:
{
"customerName": {
"firstName": "Sophia",
"surName": "Owen"
}
}
Oto zaktualizowany obiekt JSON:
{
"customerName": {
"firstName": "Sophia",
"middleName": "Anne",
"surName": "Owen"
}
}
addSeconds
Dodaj sekundy do znacznika czasu.
addSeconds('<timestamp>', <seconds>, '<format>'?)
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<Sygnatury czasowej> | Tak | String | Ciąg zawierający znacznik czasu |
<Sekund> | Tak | Integer | Dodatnia lub ujemna liczba sekund do dodania |
<format> | Nie. | String | Ciąg formatu liczbowego, który jest specyfikatorem pojedynczego formatu lub wzorcem formatu niestandardowego. Domyślny format znacznika czasu to "o" (rrrr-MM-ddTHH:mm:ss.fffffffK), który jest zgodny z normą ISO 8601 i zachowuje informacje o strefie czasowej. Jeśli format nie jest prawidłową wartością, zostanie wygenerowany błąd. |
Wartość zwracana | Type | Opis |
---|---|---|
<sygnatura czasowa aktualizacji> | String | Sygnatura czasowa plus określona liczba sekund |
Przykład 1
W tym przykładzie dodano 10 sekund do określonego znacznika czasu:
addSeconds('2018-03-15T00:00:00Z', 10)
I zwraca ten wynik: "2018-03-15T00:00:10.0000000Z"
Przykład 2
W tym przykładzie odejmuje pięć sekund do określonego znacznika czasu:
addSeconds('2018-03-15T00:00:30Z', -5)
I zwraca ten wynik: "2018-03-15T00:00:25.0000000Z"
addToTime
Dodaj określone jednostki czasu do znacznika czasu. Zobacz również getFutureTime().
addToTime('<timestamp>', <interval>, '<timeUnit>', '<format>'?)
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<Sygnatury czasowej> | Tak | String | Ciąg zawierający znacznik czasu |
<interval> | Tak | Integer | Liczba określonych jednostek czasu do dodania |
<timeUnit> | Tak | String | Jednostka czasu do użycia z interwałem: "Second", "Minute", "Hour", "Day", "Week", "Month", "Year" |
<format> | Nie. | String | Ciąg formatu liczbowego, który jest specyfikatorem pojedynczego formatu lub wzorcem formatu niestandardowego. Domyślny format znacznika czasu to "o" (rrrr-MM-ddTHH:mm:ss.fffffffK), który jest zgodny z normą ISO 8601 i zachowuje informacje o strefie czasowej. Jeśli format nie jest prawidłową wartością, zostanie wygenerowany błąd. |
Wartość zwracana | Type | Opis |
---|---|---|
<sygnatura czasowa aktualizacji> | String | Sygnatura czasowa plus określona liczba jednostek czasu |
Przykład 1
Ten przykład dodaje jeden dzień do określonego znacznika czasu:
addToTime('2018-01-01T00:00:00Z', 1, 'Day')
I zwraca ten wynik: "2018-01-02T00:00:00.0000000Z"
Przykład 2
Ten przykład dodaje jeden dzień do określonego znacznika czasu:
addToTime('2018-01-01T00:00:00Z', 1, 'Day', 'D')
Zwraca wynik przy użyciu opcjonalnego formatu "D": "Tuesday, January 2, 2018"
oraz
Sprawdź, czy wszystkie wyrażenia są prawdziwe. Zwraca wartość true, gdy wszystkie wyrażenia mają wartość true lub zwracają wartość false, gdy co najmniej jedno wyrażenie ma wartość false.
and(<expression1>, <expression2>, ...)
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<expression1>, <expression2>, ... | Tak | Wartość logiczna | Wyrażenia do sprawdzenia |
Wartość zwracana | Type | Opis |
---|---|---|
prawda lub fałsz | Wartość logiczna | Zwraca wartość true, gdy wszystkie wyrażenia są prawdziwe. Zwraca wartość false, gdy co najmniej jedno wyrażenie ma wartość false. |
Przykład 1
Te przykłady sprawdzają, czy określone wartości logiczne są prawdziwe:
and(true, true)
and(false, true)
and(false, false)
I zwraca następujące wyniki:
- Pierwszy przykład: Oba wyrażenia są prawdziwe, więc zwraca wartość
true
. - Drugi przykład: jedno wyrażenie jest fałszywe, więc zwraca wartość
false
. - Trzeci przykład: Oba wyrażenia są fałszywe, więc zwraca wartość
false
.
Przykład 2
Te przykłady sprawdzają, czy określone wyrażenia są prawdziwe:
and(equals(1, 1), equals(2, 2))
and(equals(1, 1), equals(1, 2))
and(equals(1, 2), equals(1, 3))
I zwraca następujące wyniki:
- Pierwszy przykład: Oba wyrażenia są prawdziwe, więc zwraca wartość
true
. - Drugi przykład: jedno wyrażenie jest fałszywe, więc zwraca wartość
false
. - Trzeci przykład: Oba wyrażenia są fałszywe, więc zwraca wartość
false
.
tablica
Zwraca tablicę z jednego określonego danych wejściowych. W przypadku wielu danych wejściowych zobacz createArray().
array('<value>')
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<wartość> | Tak | String | Ciąg do tworzenia tablicy |
Wartość zwracana | Type | Opis |
---|---|---|
[<wartość>] | Tablica | Tablica zawierająca pojedyncze określone dane wejściowe |
Przykład
W tym przykładzie zostanie utworzona tablica z ciągu "hello":
array('hello')
I zwraca ten wynik: ["hello"]
B
base64
Zwróć wersję zakodowaną w formacie base64 dla ciągu.
Uwaga
Usługa Azure Logic Apps automatycznie lub niejawnie wykonuje kodowanie i dekodowanie base64, więc nie trzeba ręcznie wykonywać tych konwersji przy użyciu funkcji kodowania i dekodowania. Jeśli jednak używasz tych funkcji, w projektancie mogą wystąpić nieoczekiwane zachowania renderowania. Te zachowania mają wpływ tylko na widoczność funkcji, a nie ich efekt, chyba że edytujesz wartości parametrów funkcji, co spowoduje usunięcie funkcji i ich efektów z kodu. Aby uzyskać więcej informacji, zobacz Kodowanie i dekodowanie Base64.
base64('<value>')
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<wartość> | Tak | String | Ciąg wejściowy |
Wartość zwracana | Type | Opis |
---|---|---|
<ciąg base64> | String | Wersja zakodowana w formacie base64 dla ciągu wejściowego |
Przykład
W tym przykładzie ciąg "hello" jest konwertowany na ciąg zakodowany w formacie base64:
base64('hello')
I zwraca ten wynik: "aGVsbG8="
base64ToBinary
Zwróć wersję binarną dla ciągu zakodowanego w formacie base64.
Uwaga
Usługa Azure Logic Apps automatycznie lub niejawnie wykonuje kodowanie i dekodowanie base64, więc nie trzeba ręcznie wykonywać tych konwersji przy użyciu funkcji kodowania i dekodowania. Jeśli jednak używasz tych funkcji w projektancie, w projektancie mogą wystąpić nieoczekiwane zachowania renderowania. Te zachowania mają wpływ tylko na widoczność funkcji, a nie ich efekt, chyba że edytujesz wartości parametrów funkcji, co spowoduje usunięcie funkcji i ich efektów z kodu. Aby uzyskać więcej informacji, zobacz Kodowanie i dekodowanie Base64.
base64ToBinary('<value>')
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<wartość> | Tak | String | Ciąg zakodowany w formacie base64 do konwersji |
Wartość zwracana | Type | Opis |
---|---|---|
<binary-for-base64-string> | String | Wersja binarna dla ciągu zakodowanego w formacie base64 |
Przykład
W tym przykładzie ciąg "aGVsbG8=" zakodowany w formacie base64 jest konwertowany na ciąg binarny:
base64ToBinary('aGVsbG8=')
Załóżmy na przykład, że używasz akcji HTTP do wysłania żądania. Możesz użyć base64ToBinary()
polecenia , aby przekonwertować ciąg zakodowany w formacie base64 na dane binarne i wysłać te dane przy użyciu application/octet-stream
typu zawartości w żądaniu.
base64ToString
Zwróć wersję ciągu dla ciągu zakodowanego w formacie base64, co skutecznie dekoduje ciąg base64. Użyj tej funkcji zamiast dekodowaćBase64(), która jest przestarzała.
Uwaga
Usługa Azure Logic Apps automatycznie lub niejawnie wykonuje kodowanie i dekodowanie base64, więc nie trzeba ręcznie wykonywać tych konwersji przy użyciu funkcji kodowania i dekodowania. Jeśli jednak używasz tych funkcji w projektancie, w projektancie mogą wystąpić nieoczekiwane zachowania renderowania. Te zachowania mają wpływ tylko na widoczność funkcji, a nie ich efekt, chyba że edytujesz wartości parametrów funkcji, co spowoduje usunięcie funkcji i ich efektów z kodu. Aby uzyskać więcej informacji, zobacz Kodowanie i dekodowanie Base64.
base64ToString('<value>')
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<wartość> | Tak | String | Ciąg zakodowany w formacie base64 do dekodowania |
Wartość zwracana | Type | Opis |
---|---|---|
<dekodowany-base64-string> | String | Wersja ciągu dla ciągu zakodowanego w formacie base64 |
Przykład
Ten przykład konwertuje ciąg zakodowany w formacie base64 "aGVsbG8=" na tylko ciąg:
base64ToString('aGVsbG8=')
I zwraca ten wynik: "hello"
dane binarne
Zwróć zakodowaną w formacie base64 wersję binarną ciągu.
binary('<value>')
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<wartość> | Tak | String | Ciąg do konwersji |
Wartość zwracana | Type | Opis |
---|---|---|
<binary-for-input-value> | String | Zakodowana w formacie base64 wersja binarna dla określonego ciągu |
Przykład
Na przykład używasz akcji HTTP zwracającej obraz lub plik wideo. Możesz użyć binary()
polecenia , aby przekonwertować wartość na model koperty zawartości zakodowanej w formacie base-64. Następnie możesz ponownie użyć koperty zawartości w innych akcjach, takich jak Compose
.
To wyrażenie funkcji służy do wysyłania bajtów ciągu z typem application/octet-stream
zawartości w żądaniu.
treść
Zwraca dane wyjściowe akcji body
w czasie wykonywania. Skrót dla .actions('<actionName>').outputs.body
Zobacz akcje().
body('<actionName>')
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<actionName> | Tak | String | Nazwa danych wyjściowych body akcji, które chcesz wykonać |
Wartość zwracana | Type | Opis |
---|---|---|
<action-body-output> | String | Dane body wyjściowe z określonej akcji |
Przykład
Ten przykład pobiera body
dane wyjściowe z Get user
akcji X:
body('Get_user')
I zwraca ten wynik:
"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
Zwróć wersję logiczną wartości.
bool(<value>)
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<wartość> | Tak | Dowolne | Wartość, która ma być konwertowana na wartość logiczną. |
Jeśli używasz z bool()
obiektem, wartość obiektu musi być ciągiem lub liczbą całkowitą, którą można przekonwertować na wartość logiczną.
Wartość zwracana | Type | Opis |
---|---|---|
true lub false |
Wartość logiczna | Wersja logiczna określonej wartości. |
Dane wyjściowe
W poniższych przykładach przedstawiono różne obsługiwane typy danych wejściowych dla elementu bool()
:
Wartość wejściowa | Typ | Wartość zwracana |
---|---|---|
bool(1) |
Integer | true |
bool(0) |
Integer | false |
bool(-1) |
Integer | true |
bool('true') |
String | true |
bool('false') |
String | false |
C
chunk
Podziel ciąg lub tablicę na fragmenty o równej długości.
chunk('<collection>', '<length>')
chunk([<collection>], '<length>')
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<kolekcja> | Tak | Ciąg lub tablica | Kolekcja do podziału |
<length> | Tak | Długość każdego fragmentu |
Wartość zwracana | Type | Opis |
---|---|---|
<kolekcja> | Tablica | Tablica fragmentów o określonej długości |
Przykład 1
W tym przykładzie ciąg jest podzielony na fragmenty o długości 10:
chunk('abcdefghijklmnopqrstuvwxyz', 10)
I zwraca ten wynik: ['abcdefghij', 'klmnopqrst', 'uvwxyz']
Przykład 2
W tym przykładzie tablica jest podzielona na fragmenty o długości 5.
chunk(createArray(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12), 5)
I zwraca ten wynik: [ [1,2,3,4,5], [6,7,8,9,10], [11,12] ]
Łączonej
Zwraca pierwszą wartość inną niż null z co najmniej jednego parametru. Puste ciągi, puste tablice i puste obiekty nie mają wartości null.
coalesce(<object_1>, <object_2>, ...)
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<>object_1, <object_2>, ... | Tak | Dowolny, może mieszać typy | Co najmniej jeden element do sprawdzenia pod kątem wartości null |
Wartość zwracana | Type | Opis |
---|---|---|
<pierwszy element o wartości innej niż null> | Dowolne | Pierwszy element lub wartość, która nie ma wartości null. Jeśli wszystkie parametry mają wartość null, ta funkcja zwraca wartość null. |
Przykład
Te przykłady zwracają pierwszą wartość inną niż null z określonych wartości lub null, gdy wszystkie wartości mają wartość null:
coalesce(null, true, false)
coalesce(null, 'hello', 'world')
coalesce(null, null, null)
I zwraca następujące wyniki:
- Pierwszy przykład:
true
- Drugi przykład:
"hello"
- Trzeci przykład:
null
concat
Połącz co najmniej dwa ciągi i zwróć połączony ciąg.
concat('<text1>', '<text2>', ...)
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<text1>, <text2>, ... | Tak | String | Co najmniej dwa ciągi do połączenia |
Wartość zwracana | Type | Opis |
---|---|---|
<text1text2...> | String | Ciąg utworzony na podstawie połączonych ciągów wejściowych. Uwaga: Długość wyniku nie może przekraczać 104 857 600 znaków. |
Uwaga
Usługa Azure Logic Apps automatycznie lub niejawnie wykonuje kodowanie i dekodowanie base64, więc nie trzeba ręcznie wykonywać tych konwersji podczas korzystania z concat()
funkcji z danymi, które wymagają kodowania lub dekodowania:
concat('data:;base64,',<value>)
concat('data:,',encodeUriComponent(<value>))
Jeśli jednak używasz tej funkcji w projektancie, w projektancie mogą wystąpić nieoczekiwane zachowania renderowania. Te zachowania mają wpływ tylko na widoczność funkcji, a nie efekt, chyba że edytujesz wartości parametrów funkcji, co spowoduje usunięcie funkcji i efektu z kodu. Aby uzyskać więcej informacji, zobacz Kodowanie i dekodowanie Base64.
Przykład
Ten przykład łączy ciągi "Hello" i "World":
concat('Hello', 'World')
I zwraca ten wynik: "HelloWorld"
zawiera
Sprawdź, czy kolekcja ma określony element. Zwraca wartość true, gdy element zostanie znaleziony lub zwraca wartość false, gdy nie zostanie znaleziony. Ta funkcja uwzględnia wielkość liter.
contains('<collection>', '<value>')
contains([<collection>], '<value>')
W szczególności ta funkcja działa na następujących typach kolekcji:
- Ciąg do znalezienia podciągów
- Tablica do znalezienia wartości
- Słownik do znalezienia klucza
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<kolekcja> | Tak | Ciąg, tablica lub słownik | Kolekcja do sprawdzenia |
<wartość> | Tak | Ciąg, tablica lub słownik, odpowiednio | Element do znalezienia |
Wartość zwracana | Type | Opis |
---|---|---|
prawda lub fałsz | Wartość logiczna | Zwraca wartość true po znalezieniu elementu. Zwraca wartość false, gdy nie zostanie znaleziona. |
Przykład 1
W tym przykładzie jest sprawdzany ciąg "hello world" dla podciągów "world" i zwraca wartość true:
contains('hello world', 'world')
Przykład 2
W tym przykładzie ciąg "hello world" dla podciągu "universe" i zwraca wartość false:
contains('hello world', 'universe')
convertFromUtc
Przekonwertuj znacznik czasu z uniwersalnego czasu koordynowanego (UTC) na docelową strefę czasową.
convertFromUtc('<timestamp>', '<destinationTimeZone>', '<format>'?)
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<Sygnatury czasowej> | Tak | String | Ciąg zawierający znacznik czasu |
<destinationTimeZone> | Tak | String | Nazwa docelowej strefy czasowej. W przypadku nazw stref czasowych zapoznaj się z artykułem Domyślne strefy czasowe systemu Microsoft Windows. |
<format> | Nie. | String | Ciąg formatu liczbowego, który jest specyfikatorem pojedynczego formatu lub wzorcem formatu niestandardowego. Domyślny format znacznika czasu to "o" (rrrr-MM-ddTHH:mm:ss.fffffffK), który jest zgodny z normą ISO 8601 i zachowuje informacje o strefie czasowej. Jeśli format nie jest prawidłową wartością, zostanie wygenerowany błąd. |
Wartość zwracana | Type | Opis |
---|---|---|
<przekonwertowana sygnatura czasowa> | String | Sygnatura czasowa przekonwertowana na docelową strefę czasową bez przesunięcia strefy czasowej UTC. |
Przykład 1
W tym przykładzie znacznik czasu jest konwertowany na określoną strefę czasową:
convertFromUtc('2018-01-01T08:00:00.0000000Z', 'Pacific Standard Time')
I zwraca ten wynik: "2018-01-01T00:00:00.0000000"
Przykład 2
W tym przykładzie znacznik czasu jest konwertowany na określoną strefę czasową i format:
convertFromUtc('2018-01-01T08:00:00.0000000Z', 'Pacific Standard Time', 'D')
I zwraca ten wynik: "Monday, January 1, 2018"
convertTimeZone
Przekonwertuj znacznik czasu ze źródłowej strefy czasowej na docelową strefę czasową.
convertTimeZone('<timestamp>', '<sourceTimeZone>', '<destinationTimeZone>', '<format>'?)
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<Sygnatury czasowej> | Tak | String | Ciąg zawierający znacznik czasu |
<sourceTimeZone> | Tak | String | Nazwa źródłowej strefy czasowej. Aby uzyskać informacje o nazwach stref czasowych, zobacz Domyślne strefy czasowe systemu Microsoft Windows, ale może być konieczne usunięcie wszelkich znaków interpunkcyjnych z nazwy strefy czasowej. |
<destinationTimeZone> | Tak | String | Nazwa docelowej strefy czasowej. Aby uzyskać informacje o nazwach stref czasowych, zobacz Domyślne strefy czasowe systemu Microsoft Windows, ale może być konieczne usunięcie wszelkich znaków interpunkcyjnych z nazwy strefy czasowej. |
<format> | Nie. | String | Ciąg formatu liczbowego, który jest specyfikatorem pojedynczego formatu lub wzorcem formatu niestandardowego. Domyślny format znacznika czasu to "o" (rrrr-MM-ddTHH:mm:ss.fffffffK), który jest zgodny z normą ISO 8601 i zachowuje informacje o strefie czasowej. Jeśli format nie jest prawidłową wartością, zostanie wygenerowany błąd. |
Wartość zwracana | Type | Opis |
---|---|---|
<przekonwertowana sygnatura czasowa> | String | Sygnatura czasowa przekonwertowana na docelową strefę czasową |
Przykład 1
W tym przykładzie źródłowa strefa czasowa jest konwertowana na docelową strefę czasową:
convertTimeZone('2018-01-01T08:00:00.0000000Z', 'UTC', 'Pacific Standard Time')
I zwraca ten wynik: "2018-01-01T00:00:00.0000000"
Przykład 2
W tym przykładzie strefa czasowa jest konwertowana na określoną strefę czasową i format:
convertTimeZone('2018-01-01T80:00:00.0000000Z', 'UTC', 'Pacific Standard Time', 'D')
I zwraca ten wynik: "Monday, January 1, 2018"
convertToUtc
Przekonwertuj znacznik czasu ze źródłowej strefy czasowej na uniwersalny czas koordynowany (UTC).
convertToUtc('<timestamp>', '<sourceTimeZone>', '<format>'?)
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<Sygnatury czasowej> | Tak | String | Ciąg zawierający znacznik czasu |
<sourceTimeZone> | Tak | String | Nazwa źródłowej strefy czasowej. Aby uzyskać informacje o nazwach stref czasowych, zobacz Domyślne strefy czasowe systemu Microsoft Windows, ale może być konieczne usunięcie wszelkich znaków interpunkcyjnych z nazwy strefy czasowej. |
<format> | Nie. | String | Ciąg formatu liczbowego, który jest specyfikatorem pojedynczego formatu lub wzorcem formatu niestandardowego. Domyślny format znacznika czasu to "o" (rrrr-MM-ddTHH:mm:ss.fffffffK), który jest zgodny z normą ISO 8601 i zachowuje informacje o strefie czasowej. Jeśli format nie jest prawidłową wartością, zostanie wygenerowany błąd. |
Wartość zwracana | Type | Opis |
---|---|---|
<przekonwertowana sygnatura czasowa> | String | Sygnatura czasowa przekonwertowana na utc |
Przykład 1
W tym przykładzie sygnatura czasowa jest konwertowana na czas UTC:
convertToUtc('01/01/2018 00:00:00', 'Pacific Standard Time')
I zwraca ten wynik: "2018-01-01T08:00:00.0000000Z"
Przykład 2
W tym przykładzie sygnatura czasowa jest konwertowana na czas UTC:
convertToUtc('01/01/2018 00:00:00', 'Pacific Standard Time', 'D')
I zwraca ten wynik: "Monday, January 1, 2018"
createArray
Zwraca tablicę z wielu danych wejściowych. Aby uzyskać informacje o pojedynczych tablicach wejściowych, zobacz array().
createArray('<object1>', '<object2>', ...)
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<object1>, <object2>, ... | Tak | Dowolny, ale nie mieszany | Co najmniej dwa elementy do utworzenia tablicy |
Wartość zwracana | Type | Opis |
---|---|---|
[<object1>, <object2>, ...] | Tablica | Tablica utworzona na podstawie wszystkich elementów wejściowych |
Przykład
W tym przykładzie zostanie utworzona tablica na podstawie tych danych wejściowych:
createArray('h', 'e', 'l', 'l', 'o')
I zwraca ten wynik: ["h", "e", "l", "l", "o"]
D
dataUri
Zwracanie identyfikatora URI (URI) danych dla ciągu.
dataUri('<value>')
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<wartość> | Tak | String | Ciąg do konwersji |
Wartość zwracana | Type | Opis |
---|---|---|
<data-uri> | String | Identyfikator URI danych dla ciągu wejściowego |
Przykład
W tym przykładzie zostanie utworzony identyfikator URI danych dla ciągu "hello":
dataUri('hello')
I zwraca ten wynik: "data:text/plain;charset=utf-8;base64,aGVsbG8="
dataUriToBinary
Zwraca wersję binarną dla identyfikatora URI (URI).
Użyj tej funkcji zamiast dekodowaćDataUri().
Chociaż obie funkcje działają w taki sam sposób, dataUriBinary()
jest preferowana.
dataUriToBinary('<value>')
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<wartość> | Tak | String | Identyfikator URI danych do konwersji |
Wartość zwracana | Type | Opis |
---|---|---|
<binary-for-data-uri> | String | Wersja binarna identyfikatora URI danych |
Przykład
W tym przykładzie zostanie utworzona wersja binarna dla tego identyfikatora URI danych:
dataUriToBinary('data:text/plain;charset=utf-8;base64,aGVsbG8=')
I zwraca ten wynik:
"01100100011000010111010001100001001110100111010001100101011110000111010000101111011100000 1101100011000010110100101101110001110110110001101101000011000010111001001110011011001010111 0100001111010111010101110100011001100010110100111000001110110110001001100001011100110110010 10011011000110100001011000110000101000111010101100111001101100010010001110011100000111101"
dataUriToString
Zwraca wersję ciągu dla identyfikatora URI (URI).
dataUriToString('<value>')
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<wartość> | Tak | String | Identyfikator URI danych do konwersji |
Wartość zwracana | Type | Opis |
---|---|---|
<string-for-data-uri> | String | Wersja ciągu identyfikatora URI danych |
Przykład
W tym przykładzie zostanie utworzony ciąg dla tego identyfikatora URI danych:
dataUriToString('data:text/plain;charset=utf-8;base64,aGVsbG8=')
I zwraca ten wynik: "hello"
dateDifference
Zwróć różnicę między dwoma znacznikami czasu jako przedziałem czasu. Ta funkcja odejmuje startDate
element z endDate
elementu i zwraca wynik jako znacznik czasu w formacie ciągu.
dateDifference('<startDate>', '<endDate>')
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<startDate> | Tak | String | Ciąg zawierający znacznik czasu |
<endDate> | Tak | String | Ciąg zawierający znacznik czasu |
Wartość zwracana | Type | Opis |
---|---|---|
<przedział czasu> | String | Różnica między dwoma znacznikami czasu, która jest znacznikiem czasu w formacie ciągu. Jeśli startDate wartość jest większa niż endDate , wynik jest wartością ujemną. |
Przykład
W tym przykładzie odejmuje pierwszą wartość z drugiej wartości:
dateDifference('2015-02-08', '2018-07-30')
I zwraca ten wynik: "1268.00:00:00"
dayOfMonth
Zwróć dzień miesiąca z znacznika czasu.
dayOfMonth('<timestamp>')
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<Sygnatury czasowej> | Tak | String | Ciąg zawierający znacznik czasu |
Wartość zwracana | Type | Opis |
---|---|---|
<dzień miesiąca> | Integer | Dzień miesiąca z określonego znacznika czasu |
Przykład
W tym przykładzie jest zwracana liczba dni miesiąca z tego znacznika czasu:
dayOfMonth('2018-03-15T13:27:36Z')
I zwraca ten wynik: 15
dayOfWeek
Zwróć dzień tygodnia z znacznika czasu.
dayOfWeek('<timestamp>')
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<Sygnatury czasowej> | Tak | String | Ciąg zawierający znacznik czasu |
Wartość zwracana | Type | Opis |
---|---|---|
<dzień tygodnia> | Integer | Dzień tygodnia od określonego znacznika czasu, w którym niedziela wynosi 0, poniedziałek to 1 itd. |
Przykład
W tym przykładzie zwracana jest liczba dni tygodnia z tego znacznika czasu:
dayOfWeek('2018-03-15T13:27:36Z')
I zwraca ten wynik: 4
dayOfYear
Zwraca dzień roku ze znacznika czasu.
dayOfYear('<timestamp>')
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<Sygnatury czasowej> | Tak | String | Ciąg zawierający znacznik czasu |
Wartość zwracana | Type | Opis |
---|---|---|
<dzień roku> | Integer | Dzień roku z określonego znacznika czasu |
Przykład
Ten przykład zwraca liczbę dni roku z tego znacznika czasu:
dayOfYear('2018-03-15T13:27:36Z')
I zwraca ten wynik: 74
decimal
Zwraca liczbę dziesiętną w ciągu jako liczbę dziesiętną. Tej funkcji można używać podczas pracy z danymi, które wymagają dokładności dziesiętnej, a także jako danych wejściowych dla funkcji porównania logicznego i funkcji matematycznych. Aby przechwycić i zachować precyzję podczas używania wyniku z funkcji decimal(), zawijaj wszystkie dane wyjściowe dziesiętne za pomocą funkcji string. To użycie jest pokazane w poniższych przykładach, w których można utracić precyzję, jeśli użyjesz wyniku dziesiętnego jako liczby.
Uwaga
Precyzja dziesiętna omówiona w kontekście tej funkcji i środowisko uruchomieniowe usługi Azure Logic Apps jest taka sama jak precyzja dziesiętna platformy .NET.
decimal('<value>')
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<wartość> | Tak | String | Liczba dziesiętna w ciągu |
Wartość zwracana | Type | Opis |
---|---|---|
<decimal> | Liczbowy dziesiętny | Liczba dziesiętna ciągu wejściowego |
Przykład 1
W tym przykładzie zostanie utworzona liczba dziesiętna, która jest używana jako liczba:
decimal('1.2345678912312131') // Returns 1.234567891231213.
Przykład 2
W tym przykładzie zostanie utworzona liczba dziesiętna, a następnie przekonwertowana wynik na ciąg na potrzeby zachowania precyzji:
string(decimal('1.2345678912312131')) // Returns "1.2345678912312131".
Przykład 3
W tym przykładzie użyto funkcji matematycznej w dwóch liczbach dziesiętnych i użyto wyniku jako liczby:
add(decimal('1.2345678912312131'), decimal('1.2345678912312131')) // Returns 2.469135782462426.
Przykład 4
W tym przykładzie użyto funkcji matematycznej w dwóch liczbach dziesiętnych i przekonwertowaliśmy wynik na ciąg na potrzeby zachowania dokładności:
string(add(decimal('1.2345678912312131'), decimal('1.2345678912312131'))) // Returns "2.4691357824624262".
decodeBase64 (przestarzałe)
Ta funkcja jest przestarzała, dlatego zamiast tego użyj metody base64ToString().
decodeDataUri
Zwraca wersję binarną dla identyfikatora URI (URI). Rozważ użycie metody dataUriToBinary(), a nie decodeDataUri()
. Chociaż obie funkcje działają w taki sam sposób, dataUriToBinary()
jest preferowana.
Uwaga
Usługa Azure Logic Apps automatycznie lub niejawnie wykonuje kodowanie i dekodowanie base64, więc nie trzeba ręcznie wykonywać tych konwersji przy użyciu funkcji kodowania i dekodowania. Jeśli jednak używasz tych funkcji w projektancie, w projektancie mogą wystąpić nieoczekiwane zachowania renderowania. Te zachowania mają wpływ tylko na widoczność funkcji, a nie ich efekt, chyba że edytujesz wartości parametrów funkcji, co spowoduje usunięcie funkcji i ich efektów z kodu. Aby uzyskać więcej informacji, zobacz Kodowanie i dekodowanie Base64.
decodeDataUri('<value>')
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<wartość> | Tak | String | Ciąg identyfikatora URI danych do dekodowania |
Wartość zwracana | Type | Opis |
---|---|---|
<binary-for-data-uri> | String | Wersja binarna ciągu identyfikatora URI danych |
Przykład
Ten przykład zwraca wersję binarną dla tego identyfikatora URI danych:
decodeDataUri('data:text/plain;charset=utf-8;base64,aGVsbG8=')
I zwraca ten wynik:
"01100100011000010111010001100001001110100111010001100101011110000111010000101111011100000 1101100011000010110100101101110001110110110001101101000011000010111001001110011011001010111 0100001111010111010101110100011001100010110100111000001110110110001001100001011100110110010 10011011000110100001011000110000101000111010101100111001101100010010001110011100000111101"
decodeUriComponent
Zwraca ciąg, który zastępuje znaki ucieczki dekodowanym wersjami.
decodeUriComponent('<value>')
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<wartość> | Tak | String | Ciąg ze znakami ucieczki do dekodowania |
Wartość zwracana | Type | Opis |
---|---|---|
<dekodowany identyfikator URI> | String | Zaktualizowany ciąg z dekodowanym znakiem ucieczki |
Przykład
W tym przykładzie znaki ucieczki w tym ciągu zastępują dekodowane wersje:
decodeUriComponent('https%3A%2F%2Fcontoso.com')
I zwraca ten wynik: "https://contoso.com"
div
Zwróć wynik z dzielenia dwóch liczb. Aby uzyskać wynik pozostały, zobacz mod().
div(<dividend>, <divisor>)
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<dywidenda> | Tak | Liczba całkowita lub zmiennoprzecinkowa | Liczba do podzielenia przez dzielnik |
<dzielnik> | Tak | Liczba całkowita lub zmiennoprzecinkowa | Liczba dzieląca dywidendę, ale nie może być równa zero |
Wartość zwracana | Type | Opis |
---|---|---|
<quotient-result> | Liczba całkowita lub zmiennoprzecinkowa | Wynik dzielenia pierwszej liczby przez drugą liczbę. Jeśli dywidenda lub dzielnika ma typ Float, wynik ma typ Float. Uwaga: Aby przekonwertować wynik zmiennoprzecinkowy na liczbę całkowitą, spróbuj utworzyć i wywołać funkcję na platformie Azure z poziomu aplikacji logiki. |
Przykład 1
Oba przykłady zwracają tę wartość z typem liczba całkowita: 2
div(10,5)
div(11,5)
Przykład 2
Oba przykłady zwracają tę wartość z typem zmiennoprzecinkowym: 2.2
div(11,5.0)
div(11.0,5)
E
encodeUriComponent
Zwróć wersję zakodowaną w postaci identyfikatora zasobu (URI) dla ciągu, zastępując znaki ucieczki niebezpiecznymi adresami URL. Rozważ użycie identyfikatora uriComponent(), a nie encodeUriComponent()
. Chociaż obie funkcje działają w taki sam sposób, uriComponent()
jest preferowana.
Uwaga
Usługa Azure Logic Apps automatycznie lub niejawnie wykonuje kodowanie i dekodowanie base64, więc nie trzeba ręcznie wykonywać tych konwersji przy użyciu funkcji kodowania i dekodowania. Jeśli jednak używasz tych funkcji w projektancie, w projektancie mogą wystąpić nieoczekiwane zachowania renderowania. Te zachowania mają wpływ tylko na widoczność funkcji, a nie ich efekt, chyba że edytujesz wartości parametrów funkcji, co spowoduje usunięcie funkcji i ich efektów z kodu. Aby uzyskać więcej informacji, zobacz Kodowanie i dekodowanie Base64.
encodeUriComponent('<value>')
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<wartość> | Tak | String | Ciąg do konwersji na format zakodowany w formacie URI |
Wartość zwracana | Type | Opis |
---|---|---|
<identyfikator URI zakodowany> | String | Ciąg zakodowany w formacie URI z znakami ucieczki |
Przykład
W tym przykładzie zostanie utworzona wersja zakodowana w identyfikatorze URI dla tego ciągu:
encodeUriComponent('https://contoso.com')
I zwraca ten wynik: "https%3A%2F%2Fcontoso.com"
empty
Sprawdź, czy kolekcja jest pusta. Zwraca wartość true, gdy kolekcja jest pusta lub zwraca wartość false, gdy nie jest pusta.
empty('<collection>')
empty([<collection>])
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<kolekcja> | Tak | Ciąg, tablica lub obiekt | Kolekcja do sprawdzenia |
Wartość zwracana | Type | Opis |
---|---|---|
prawda lub fałsz | Wartość logiczna | Zwraca wartość true, gdy kolekcja jest pusta. Zwraca wartość false, jeśli nie jest pusta. |
Przykład
Te przykłady sprawdzają, czy określone kolekcje są puste:
empty('')
empty('abc')
I zwraca następujące wyniki:
- Pierwszy przykład: Przekazuje pusty ciąg, więc funkcja zwraca
true
wartość . - Drugi przykład: Przekazuje ciąg "abc", więc funkcja zwraca
false
wartość .
endsWith
Sprawdź, czy ciąg kończy się określonym podciągem. Zwraca wartość true, gdy podciąg zostanie znaleziony lub zwróci wartość false, gdy nie zostanie znaleziona. Ta funkcja nie uwzględnia wielkości liter.
endsWith('<text>', '<searchText>')
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<text> | Tak | String | Ciąg do sprawdzenia |
<tekst wyszukiwania> | Tak | String | Kończenie podciągów do znalezienia |
Wartość zwracana | Type | Opis |
---|---|---|
prawda lub fałsz | Wartość logiczna | Zwraca wartość true po znalezieniu końcowego podciągu. Zwraca wartość false, gdy nie zostanie znaleziona. |
Przykład 1
W tym przykładzie sprawdza się, czy ciąg "hello world" kończy się ciągiem "world":
endsWith('hello world', 'world')
I zwraca ten wynik: true
Przykład 2
W tym przykładzie sprawdza się, czy ciąg "hello world" kończy się ciągiem "universe":
endsWith('hello world', 'universe')
I zwraca ten wynik: false
equals
Sprawdź, czy obie wartości, wyrażenia lub obiekty są równoważne. Zwraca wartość true, gdy obie są równoważne lub zwracają wartość false, gdy nie są równoważne.
equals('<object1>', '<object2>')
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<object1>, <object2> | Tak | Różne | Wartości, wyrażenia lub obiekty do porównania |
Wartość zwracana | Type | Opis |
---|---|---|
prawda lub fałsz | Wartość logiczna | Zwraca wartość true, gdy obie są równoważne. Zwraca wartość false, jeśli nie jest równoważna. |
Przykład
Te przykłady sprawdzają, czy określone dane wejściowe są równoważne.
equals(true, 1)
equals('abc', 'abcd')
I zwraca następujące wyniki:
- Pierwszy przykład: Obie wartości są równoważne, więc funkcja zwraca
true
wartość . - Drugi przykład: Obie wartości nie są równoważne, więc funkcja zwraca
false
wartość .
F
pierwszy
Zwraca pierwszy element z ciągu lub tablicy.
first('<collection>')
first([<collection>])
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<kolekcja> | Tak | Ciąg lub tablica | Kolekcja, w której należy znaleźć pierwszy element |
Wartość zwracana | Type | Opis |
---|---|---|
<first-collection-item> | Dowolne | Pierwszy element w kolekcji |
Przykład
Te przykłady znajdują pierwszy element w tych kolekcjach:
first('hello')
first(createArray(0, 1, 2))
I zwróć następujące wyniki:
- Pierwszy przykład:
"h"
- Drugi przykład:
0
liczba zmiennoprzecinkowa
Przekonwertuj wersję ciągu dla liczby zmiennoprzecinkowych na rzeczywistą liczbę zmiennoprzecinkową. Tej funkcji można używać tylko podczas przekazywania parametrów niestandardowych do aplikacji, na przykład przepływu pracy aplikacji logiki lub przepływu usługi Power Automate. Aby przekonwertować ciągi zmiennoprzecinkowe reprezentowane w formatach specyficznych dla ustawień regionalnych, opcjonalnie można określić kod ustawień regionalnych RFC 4646.
float('<value>', '<locale>'?)
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<wartość> | Tak | String | Ciąg, który ma prawidłową liczbę zmiennoprzecinkową do przekonwertowania. Wartości minimalne i maksymalne są takie same jak limity dla typu danych zmiennoprzecinkowych. |
<ustawienia regionalne> | Nie. | String | Kod ustawień regionalnych RFC 4646 do użycia. Jeśli nie zostanie określony, zostaną użyte domyślne ustawienia regionalne. Jeśli ustawienia regionalne nie są prawidłową wartością, zostanie wygenerowany błąd, że podane ustawienia regionalne są nieprawidłowe lub nie mają skojarzonych ustawień regionalnych. |
Wartość zwracana | Type | Opis |
---|---|---|
<wartość zmiennoprzecinkowa> | Liczba zmiennoprzecinkowa | Liczba zmiennoprzecinkowa dla określonego ciągu. Wartości minimalne i maksymalne są takie same jak limity dla typu danych zmiennoprzecinkowych. |
Przykład 1
W tym przykładzie zostanie utworzona wersja ciągu dla tego numeru zmiennoprzecinkowego:
float('10,000.333')
I zwraca ten wynik: 10000.333
Przykład 2
W tym przykładzie jest tworzona wersja ciągu dla tego numeru zmiennoprzecinkowego w stylu niemieckim:
float('10.000,333', 'de-DE')
I zwraca ten wynik: 10000.333
formatDateTime
Zwraca znacznik czasu w określonym formacie.
formatDateTime('<timestamp>', '<format>'?, '<locale>'?)
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<Sygnatury czasowej> | Tak | String | Ciąg zawierający znacznik czasu |
<format> | Nie. | String | Ciąg formatu liczbowego, który jest specyfikatorem pojedynczego formatu lub wzorcem formatu niestandardowego. Domyślny format znacznika czasu to "o" (rrrr-MM-ddTHH:mm:ss.fffffffK), który jest zgodny z normą ISO 8601 i zachowuje informacje o strefie czasowej. |
<ustawienia regionalne> | Nie. | String | Ustawienia regionalne do użycia. Jeśli wartość jest nieokreślona, jest to en-us . Jeśli ustawienia regionalne nie są prawidłową wartością, zostanie wygenerowany błąd. |
Wartość zwracana | Type | Opis |
---|---|---|
<ponownie sformatowany znacznik czasu> | String | Zaktualizowany znacznik czasu w określonym formacie i ustawieniach regionalnych, jeśli określono. |
Przykłady
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
Zwraca tablicę z wartościami, które pasują do nazwy klucza w danych formularza lub danych wyjściowych zakodowanych w formie akcji.
formDataMultiValues('<actionName>', '<key>')
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<actionName> | Tak | String | Akcja, której dane wyjściowe mają wartość klucza, której chcesz użyć |
<key> | Tak | String | Nazwa klucza, którego wartość ma zostać utworzona |
Wartość zwracana | Type | Opis |
---|---|---|
[<array-with-key-values>] | Tablica | Tablica ze wszystkimi wartościami zgodnymi z określonym kluczem |
Przykład
W tym przykładzie utworzono tablicę na podstawie wartości klucza "Podmiot" w danych formularza lub danych wyjściowych zakodowanych w formularzu określonej akcji:
formDataMultiValues('Send_an_email', 'Subject')
Zwraca tekst tematu w tablicy, na przykład: ["Hello world"]
formDataValue
Zwraca pojedynczą wartość zgodną z nazwą klucza w danych formularza lub danych wyjściowych zakodowanych w formie akcji. Jeśli funkcja znajdzie więcej niż jedno dopasowanie, funkcja zgłasza błąd.
formDataValue('<actionName>', '<key>')
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<actionName> | Tak | String | Akcja, której dane wyjściowe mają wartość klucza, której chcesz użyć |
<key> | Tak | String | Nazwa klucza, którego wartość ma zostać utworzona |
Wartość zwracana | Type | Opis |
---|---|---|
<klucz-wartość> | String | Wartość w określonym kluczu |
Przykład
W tym przykładzie tworzony jest ciąg z wartości klucza "Podmiot" w danych formularza lub danych wyjściowych zakodowanych w formularzu określonej akcji:
formDataValue('Send_an_email', 'Subject')
Zwraca tekst tematu jako ciąg, na przykład: "Hello world"
formatNumber
Zwraca liczbę jako ciąg, który jest oparty na określonym formacie.
formatNumber(<number>, <format>, <locale>?)
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<numer> | Tak | Liczba całkowita lub podwójna | Wartość, którą chcesz sformatować. |
<format> | Tak | String | Ciąg formatu złożonego, który określa format, którego chcesz użyć. Aby zapoznać się z obsługiwanymi ciągami formatu liczbowego, zobacz Standardowe ciągi formatu liczbowego obsługiwane przez number.ToString(<format>, <locale>) program . |
<ustawienia regionalne> | Nie. | String | Ustawienia regionalne do użycia jako obsługiwane przez number.ToString(<format>, <locale>) program . Jeśli wartość jest nieokreślona, jest to en-us . Jeśli ustawienia regionalne nie są prawidłową wartością, zostanie wygenerowany błąd. |
Wartość zwracana | Type | Opis |
---|---|---|
<sformatowany-numer> | String | Określona liczba jako ciąg w określonym formacie. Możesz rzutować tę zwracaną wartość na wartość int lub float . |
Przykład 1
Załóżmy, że chcesz sformatować liczbę 1234567890
. Ten przykład formatuje tę liczbę jako ciąg "1,234,567,890.00".
formatNumber(1234567890, '0,0.00', 'en-us')
*Przykład 2"
Załóżmy, że chcesz sformatować liczbę 1234567890
. Ten przykład formatuje liczbę do ciągu "1.234.567.890,00".
formatNumber(1234567890, '0,0.00', 'is-is')
Przykład 3
Załóżmy, że chcesz sformatować liczbę 17.35
. Ten przykład formatuje liczbę do ciągu "$17.35".
formatNumber(17.35, 'C2')
Przykład 4
Załóżmy, że chcesz sformatować liczbę 17.35
. Ten przykład formatuje liczbę do ciągu "17,35 kr".
formatNumber(17.35, 'C2', 'is-is')
G
getFutureTime
Zwróć bieżący znacznik czasu oraz określoną liczbę jednostek czasu.
getFutureTime(<interval>, <timeUnit>, <format>?)
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<interval> | Tak | Integer | Liczba jednostek czasu do dodania |
<timeUnit> | Tak | String | Jednostka czasu do użycia z interwałem: "Second", "Minute", "Hour", "Day", "Week", "Month", "Year" |
<format> | Nie. | String | Specyfikator pojedynczego formatu lub wzorzec formatu niestandardowego. Domyślny format znacznika czasu to "o" (rrrr-MM-ddTHH:mm:ss.fffffffK), który jest zgodny z normą ISO 8601 i zachowuje informacje o strefie czasowej. Jeśli format nie jest prawidłową wartością, zostanie wygenerowany błąd, że podany format jest nieprawidłowy i musi być ciągiem formatu liczbowego. |
Wartość zwracana | Type | Opis |
---|---|---|
<sygnatura czasowa aktualizacji> | String | Bieżący znacznik czasu plus określona liczba jednostek czasu |
Przykład 1
Załóżmy, że bieżący znacznik czasu to "2018-03-01T00:00:00.0000000Z". W tym przykładzie dodano pięć dni do tego znacznika czasu:
getFutureTime(5, 'Day')
I zwraca ten wynik: "2018-03-06T00:00:00.0000000Z"
Przykład 2
Załóżmy, że bieżący znacznik czasu to "2018-03-01T00:00:00.0000000Z". W tym przykładzie dodano pięć dni i przekonwertowaliśmy wynik na format "D":
getFutureTime(5, 'Day', 'D')
I zwraca ten wynik: "Tuesday, March 6, 2018"
getPastTime
Zwróć bieżący znacznik czasu minus określoną liczbę jednostek czasu.
getPastTime(<interval>, <timeUnit>, <format>?)
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<interval> | Tak | Integer | Liczba określonych jednostek czasu do odejmowania |
<timeUnit> | Tak | String | Jednostka czasu do użycia z interwałem: "Second", "Minute", "Hour", "Day", "Week", "Month", "Year" |
<format> | Nie. | String | Specyfikator pojedynczego formatu lub wzorzec formatu niestandardowego. Domyślny format znacznika czasu to "o" (rrrr-MM-ddTHH:mm:ss.fffffffK), który jest zgodny z normą ISO 8601 i zachowuje informacje o strefie czasowej. Jeśli format nie jest prawidłową wartością, zostanie wygenerowany błąd, że podany format jest nieprawidłowy i musi być ciągiem formatu liczbowego. |
Wartość zwracana | Type | Opis |
---|---|---|
<sygnatura czasowa aktualizacji> | String | Bieżący znacznik czasu minus określona liczba jednostek czasu |
Przykład 1
Załóżmy, że bieżący znacznik czasu to "2018-02-01T00:00:00.0000000Z". W tym przykładzie odejmuje pięć dni od tego znacznika czasu:
getPastTime(5, 'Day')
I zwraca ten wynik: "2018-01-27T00:00:00.0000000Z"
Przykład 2
Załóżmy, że bieżący znacznik czasu to "2018-02-01T00:00:00.0000000Z". W tym przykładzie odejmuje pięć dni i konwertuje wynik na format "D":
getPastTime(5, 'Day', 'D')
I zwraca ten wynik: "Saturday, January 27, 2018"
greater
Sprawdź, czy pierwsza wartość jest większa niż druga wartość. Zwraca wartość true, gdy pierwsza wartość jest większa lub zwraca wartość false, gdy jest mniejsza.
greater(<value>, <compareTo>)
greater('<value>', '<compareTo>')
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<wartość> | Tak | Liczba całkowita, zmiennoprzecinkowa lub ciąg | Pierwsza wartość do sprawdzenia, czy większa niż druga wartość |
<compareTo> | Tak | Liczba całkowita, zmiennoprzecinkowa lub ciąg, odpowiednio | Wartość porównania |
Wartość zwracana | Type | Opis |
---|---|---|
prawda lub fałsz | Wartość logiczna | Zwraca wartość true, gdy pierwsza wartość jest większa niż druga wartość. Zwraca wartość false, gdy pierwsza wartość jest równa lub mniejsza niż druga wartość. |
Przykład
Te przykłady sprawdzają, czy pierwsza wartość jest większa niż druga wartość:
greater(10, 5)
greater('apple', 'banana')
I zwróć następujące wyniki:
- Pierwszy przykład:
true
- Drugi przykład:
false
greaterOrEquals
Sprawdź, czy pierwsza wartość jest większa, czy równa drugiej wartości. Zwraca wartość true, gdy pierwsza wartość jest większa lub równa, lub zwraca wartość false, gdy pierwsza wartość jest mniejsza.
greaterOrEquals(<value>, <compareTo>)
greaterOrEquals('<value>', '<compareTo>')
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<wartość> | Tak | Liczba całkowita, zmiennoprzecinkowa lub ciąg | Pierwsza wartość do sprawdzenia, czy wartość większa niż lub równa drugiej wartości |
<compareTo> | Tak | Liczba całkowita, zmiennoprzecinkowa lub ciąg, odpowiednio | Wartość porównania |
Wartość zwracana | Type | Opis |
---|---|---|
prawda lub fałsz | Wartość logiczna | Zwraca wartość true, gdy pierwsza wartość jest większa lub równa drugiej wartości. Zwraca wartość false, gdy pierwsza wartość jest mniejsza niż druga wartość. |
Przykład
Te przykłady sprawdzają, czy pierwsza wartość jest większa, czy równa drugiej wartości:
greaterOrEquals(5, 5)
greaterOrEquals('apple', 'banana')
I zwróć następujące wyniki:
- Pierwszy przykład:
true
- Drugi przykład:
false
Identyfikator GUID
Wygeneruj unikatowy identyfikator globalny (GUID) jako ciąg, na przykład "c2ecc88d-88c8-4096-912c-d6f2e2b138ce":
guid()
Ponadto można określić inny format identyfikatora GUID innego niż domyślny format "D", który jest 32 cyframi oddzielonymi łącznikami.
guid('<format>')
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<format> | Nie. | String | Specyfikator pojedynczego formatu dla zwróconego identyfikatora GUID. Domyślnie format to "D", ale można użyć "N", "D", "B", "P" lub "X". |
Wartość zwracana | Type | Opis |
---|---|---|
<Wartość identyfikatora GUID> | String | Losowo wygenerowany identyfikator GUID |
Przykład
Ten przykład generuje ten sam identyfikator GUID, ale jako 32 cyfry oddzielone łącznikami i ujęte w nawiasy:
guid('P')
I zwraca ten wynik: "(c2ecc88d-88c8-4096-912c-d6f2e2b138ce)"
I
jeżeli
Sprawdź, czy wyrażenie ma wartość true, czy false. Na podstawie wyniku zwróć określoną wartość. Parametry są oceniane od lewej do prawej.
if(<expression>, <valueIfTrue>, <valueIfFalse>)
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<wyrażenie> | Tak | Wartość logiczna | Wyrażenie do sprawdzenia |
<valueIfTrue> | Tak | Dowolne | Wartość, która ma być zwracana, gdy wyrażenie ma wartość true |
<valueIfFalse> | Tak | Dowolne | Wartość, która ma być zwracana, gdy wyrażenie ma wartość false |
Wartość zwracana | Type | Opis |
---|---|---|
<określona wartość zwracana> | Dowolne | Określona wartość zwracana na podstawie tego, czy wyrażenie ma wartość true, czy false |
Przykład
Ten przykład zwraca wartość "yes"
, ponieważ określone wyrażenie zwraca wartość true.
W przeciwnym razie przykład zwraca wartość "no"
:
if(equals(1, 1), 'yes', 'no')
indexOf
Zwraca wartość pozycji początkowej lub indeksu dla podciągów. Ta funkcja nie uwzględnia wielkości liter, a indeksy zaczynają się od liczby 0.
indexOf('<text>', '<searchText>')
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<text> | Tak | String | Ciąg zawierający podciąg do znalezienia |
<tekst wyszukiwania> | Tak | String | Podciąg do znalezienia |
Wartość zwracana | Type | Opis |
---|---|---|
<index-value> | Integer | Pozycja początkowa lub wartość indeksu dla określonego podciągu. Jeśli ciąg nie zostanie znaleziony, zwróć liczbę -1. |
Przykład
W tym przykładzie znajduje wartość indeksu początkowego dla podciągów "world" w ciągu "hello world":
indexOf('hello world', 'world')
I zwraca ten wynik: 6
int
Przekonwertuj wersję ciągu dla liczby całkowitej na rzeczywistą liczbę całkowitą.
int('<value>')
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<wartość> | Tak | String | Wersja ciągu dla liczby całkowitej do przekonwertowania. Wartości minimalne i maksymalne są takie same jak limity dla typu danych liczb całkowitych. |
Wartość zwracana | Type | Opis |
---|---|---|
<wynik liczby całkowitej> | Integer | Wersja całkowita dla określonego ciągu. Wartości minimalne i maksymalne są takie same jak limity dla typu danych liczb całkowitych. |
Przykład
W tym przykładzie zostanie utworzona wersja całkowita dla ciągu "10":
int('10')
I zwraca ten wynik: 10
isFloat
Zwraca wartość logiczną wskazującą, czy ciąg jest liczbą zmiennoprzecinkową. Domyślnie ta funkcja używa niezmiennej kultury dla formatu zmiennoprzecinkowego. Aby zidentyfikować liczby zmiennoprzecinkowe reprezentowane w innych formatach specyficznych dla ustawień regionalnych, opcjonalnie można określić kod ustawień regionalnych RFC 4646.
isFloat('<string>', '<locale>'?)
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<wartość> | Tak | String | Ciąg do zbadania |
<ustawienia regionalne> | Nie. | String | Kod ustawień regionalnych RFC 4646 do użycia |
Wartość zwracana | Type | Opis |
---|---|---|
<Wynik logiczny> | Wartość logiczna | Wartość logiczna wskazująca, czy ciąg jest liczbą zmiennoprzecinkową |
Przykład 1
W tym przykładzie sprawdza się, czy ciąg jest liczbą zmiennoprzecinkową w niezmiennej kulturze:
isFloat('10,000.00')
I zwraca ten wynik: true
Przykład 2
W tym przykładzie sprawdza się, czy ciąg jest liczbą zmiennoprzecinkową w niemieckich ustawieniach regionalnych:
isFloat('10.000,00', 'de-DE')
I zwraca ten wynik: true
isInt
Zwraca wartość logiczną wskazującą, czy ciąg jest liczbą całkowitą.
isInt('<string>')
Parametr | Wymagania | Type | opis |
---|---|---|---|
<string> | Tak | String | Ciąg do zbadania |
Wartość zwracana | Type | Opis |
---|---|---|
<Wynik logiczny> | Wartość logiczna | Wartość logiczna wskazująca, czy ciąg jest liczbą całkowitą |
Przykład
W tym przykładzie sprawdza się, czy ciąg jest liczbą całkowitą:
isInt('10')
I zwraca ten wynik: true
element
W przypadku użycia wewnątrz akcji powtarzającej się w tablicy, zwróć bieżący element w tablicy podczas bieżącej iteracji akcji. Możesz również pobrać wartości z właściwości tego elementu.
item()
Wartość zwracana | Type | Opis |
---|---|---|
<current-array-item> | Dowolne | Bieżący element w tablicy dla bieżącej iteracji akcji |
Przykład
W tym przykładzie element jest pobierany body
z bieżącego komunikatu dla akcji "Send_an_email" wewnątrz bieżącej iteracji dla każdej pętli:
item().body
elementy
Zwróć bieżący element z każdego cyklu w pętli for-each. Użyj tej funkcji wewnątrz pętli for-each.
items('<loopName>')
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<loopName> | Tak | String | Nazwa pętli for-each |
Wartość zwracana | Type | Opis |
---|---|---|
<przedmiot> | Dowolne | Element z bieżącego cyklu w określonej pętli for-each |
Przykład
W tym przykładzie jest pobierany bieżący element z określonej pętli for-each:
items('myForEachLoopName')
iteracjaIndexes
Zwróć wartość indeksu dla bieżącej iteracji wewnątrz pętli Until. Tej funkcji można używać wewnątrz zagnieżdżonych pętli Until.
iterationIndexes('<loopName>')
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<loopName> | Tak | String | Nazwa pętli Until |
Wartość zwracana | Type | Opis |
---|---|---|
<indeks> | Integer | Wartość indeksu dla bieżącej iteracji wewnątrz określonej pętli Until |
Przykład
W tym przykładzie jest tworzona zmienna licznika i zwiększa ją o jedną podczas każdej iteracji w pętli Until, aż wartość licznika osiągnie pięć. W tym przykładzie jest również tworzona zmienna, która śledzi bieżący indeks dla każdej iteracji. Podczas każdej iteracji w pętli Until przykład zwiększa wartość licznika, a następnie przypisuje wartość licznika do bieżącej wartości indeksu, a następnie zwiększa wartość licznika. W pętli ten przykład odwołuje się do bieżącego indeksu iterationIndexes
iteracji przy użyciu funkcji :
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
Zwróć wartość typu JavaScript Object Notation (JSON), obiekt lub tablicę obiektów dla ciągu lub XML.
json('<value>')
json(xml('value'))
Ważne
Bez schematu XML, który definiuje strukturę danych wyjściowych, funkcja może zwracać wyniki, w których struktura znacznie różni się od oczekiwanego formatu, w zależności od danych wejściowych.
To zachowanie sprawia, że ta funkcja jest nieodpowiednia dla scenariuszy, w których dane wyjściowe muszą być zgodne z dobrze zdefiniowanym kontraktem, na przykład w krytycznych systemach biznesowych lub rozwiązaniach.
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<wartość> | Tak | Ciąg lub xml | Ciąg lub kod XML do konwersji |
Wartość zwracana | Type | Opis |
---|---|---|
<Wynik JSON> | Natywny typ, obiekt lub tablica JSON | Natywna wartość typu JSON, obiekt lub tablica obiektów z ciągu wejściowego lub XML. — W przypadku przekazania kodu XML, który ma jeden element podrzędny w elemecie głównym, funkcja zwraca pojedynczy obiekt JSON dla tego elementu podrzędnego. — W przypadku przekazania kodu XML zawierającego wiele elementów podrzędnych w elemecie głównym funkcja zwraca tablicę zawierającą obiekty JSON dla tych elementów podrzędnych. — Jeśli ciąg ma wartość null, funkcja zwraca pusty obiekt. |
Przykład 1
W tym przykładzie ten ciąg jest konwertowany na wartość JSON:
json('[1, 2, 3]')
I zwraca ten wynik: [1, 2, 3]
Przykład 2
W tym przykładzie ten ciąg jest konwertowany na kod JSON:
json('{"fullName": "Sophia Owen"}')
I zwraca ten wynik:
{
"fullName": "Sophia Owen"
}
Przykład 3
W tym przykładzie użyto json()
funkcji i xml()
do przekonwertowania kodu XML, który ma jeden element podrzędny w elemecie głównym na obiekt JSON o nazwie person
dla tego elementu podrzędnego:
json(xml('<?xml version="1.0"?> <root> <person id="1"> <name>Sophia Owen</name> <occupation>Engineer</occupation> </person> </root>'))
I zwraca ten wynik:
{
"?xml": {
"@version": "1.0"
},
"root": {
"person": {
"@id": "1",
"name": "Sophia Owen",
"occupation": "Engineer"
}
}
}
Przykład 4
W tym przykładzie użyto json()
funkcji i xml()
do przekonwertowania kodu XML zawierającego wiele elementów podrzędnych w elemecie głównym na tablicę o nazwie person
zawierającej obiekty JSON dla tych elementów podrzędnych:
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>'))
I zwraca ten wynik:
{
"?xml": {
"@version": "1.0"
},
"root": {
"person": [
{
"@id": "1",
"name": "Sophia Owen",
"occupation": "Engineer"
},
{
"@id": "2",
"name": "John Doe",
"occupation": "Engineer"
}
]
}
}
skrzyżowanie
Zwróć kolekcję zawierającą tylko wspólne elementy w określonych kolekcjach. Aby wyświetlić wynik, element musi pojawić się we wszystkich kolekcjach przekazanych do tej funkcji. Jeśli co najmniej jeden element ma taką samą nazwę, w wyniku pojawi się ostatni element o tej nazwie.
intersection([<collection1>], [<collection2>], ...)
intersection('<collection1>', '<collection2>', ...)
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<kolekcja1>, <kolekcja2>, ... | Tak | Tablica lub obiekt, ale nie obie | Kolekcje, z których mają być używane tylko typowe elementy |
Wartość zwracana | Type | Opis |
---|---|---|
<wspólne elementy> | Tablica lub obiekt, odpowiednio | Kolekcja zawierająca tylko wspólne elementy w określonych kolekcjach |
Przykład
W tym przykładzie znaleziono typowe elementy w tych tablicach:
intersection(createArray(1, 2, 3), createArray(101, 2, 1, 10), createArray(6, 8, 1, 2))
Zwraca tablicę z tylko tymi elementami:[1, 2]
join
Zwróć ciąg, który zawiera wszystkie elementy z tablicy i ma każdy znak oddzielony ogranicznikiem.
join([<collection>], '<delimiter>')
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<kolekcja> | Tak | Tablica | Tablica zawierająca elementy do sprzężenia |
<Ogranicznik> | Tak | String | Separator, który pojawia się między poszczególnymi znakami w wynikowym ciągu |
Wartość zwracana | Type | Opis |
---|---|---|
<ogranicznik><char1><char2><ogranicznik...> | String | Wynikowy ciąg utworzony na podstawie wszystkich elementów w określonej tablicy. Uwaga: Długość wyniku nie może przekraczać 104 857 600 znaków. |
Przykład
W tym przykładzie zostanie utworzony ciąg ze wszystkich elementów tej tablicy z określonym znakiem jako ogranicznikiem:
join(createArray('a', 'b', 'c'), '.')
I zwraca ten wynik: "a.b.c"
L
ostatni
Zwróć ostatni element z kolekcji.
last('<collection>')
last([<collection>])
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<kolekcja> | Tak | Ciąg lub tablica | Kolekcja, w której należy znaleźć ostatni element |
Wartość zwracana | Type | Opis |
---|---|---|
<ostatni element kolekcji> | Ciąg lub tablica, odpowiednio | Ostatni element w kolekcji |
Przykład
Te przykłady znajdują ostatni element w tych kolekcjach:
last('abcd')
last(createArray(0, 1, 2, 3))
I zwraca następujące wyniki:
- Pierwszy przykład:
"d"
- Drugi przykład:
3
lastIndexOf
Zwraca wartość pozycji początkowej lub indeksu dla ostatniego wystąpienia podciągów. Ta funkcja nie uwzględnia wielkości liter, a indeksy zaczynają się od liczby 0.
lastIndexOf('<text>', '<searchText>')
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<text> | Tak | String | Ciąg zawierający podciąg do znalezienia |
<tekst wyszukiwania> | Tak | String | Podciąg do znalezienia |
Wartość zwracana | Type | Opis |
---|---|---|
<end-index-value> | Integer | Wartość pozycji początkowej lub indeksu dla ostatniego wystąpienia określonego podciągu. |
Jeśli wartość ciągu lub podciąg jest pusta, występuje następujące zachowanie:
Jeśli tylko wartość ciągu jest pusta, funkcja zwraca
-1
wartość .Jeśli ciąg i wartości podciągów są puste, funkcja zwraca
0
wartość .Jeśli tylko wartość podciągów jest pusta, funkcja zwraca długość ciągu minus 1.
Przykłady
W tym przykładzie znajduje wartość indeksu początkowego ostatniego wystąpienia podciągów podciągów world
w ciągu hello world hello world
. Zwrócony wynik to 18
:
lastIndexOf('hello world hello world', 'world')
W tym przykładzie brakuje parametru podciągnięcia i zwraca wartość , 22
ponieważ wartość ciągu wejściowego (23
) minus 1 jest większa niż 0.
lastIndexOf('hello world hello world', '')
length
Zwróć liczbę elementów w kolekcji.
length('<collection>')
length([<collection>])
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<kolekcja> | Tak | Ciąg lub tablica | Kolekcja z elementami do zliczenia |
Wartość zwracana | Type | Opis |
---|---|---|
<długość lub liczba> | Integer | Liczba elementów w kolekcji |
Przykład
Te przykłady zliczają liczbę elementów w tych kolekcjach:
length('abcd')
length(createArray(0, 1, 2, 3))
I zwróć ten wynik: 4
less
Sprawdź, czy pierwsza wartość jest mniejsza niż druga wartość. Zwraca wartość true, gdy pierwsza wartość jest mniejsza lub zwraca wartość false, gdy pierwsza wartość jest większa.
less(<value>, <compareTo>)
less('<value>', '<compareTo>')
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<wartość> | Tak | Liczba całkowita, zmiennoprzecinkowa lub ciąg | Pierwsza wartość do sprawdzenia, czy wartość mniejsza niż druga |
<compareTo> | Tak | Liczba całkowita, zmiennoprzecinkowa lub ciąg, odpowiednio | Element porównania |
Wartość zwracana | Type | Opis |
---|---|---|
prawda lub fałsz | Wartość logiczna | Zwraca wartość true, gdy pierwsza wartość jest mniejsza niż druga wartość. Zwraca wartość false, gdy pierwsza wartość jest równa lub większa niż druga wartość. |
Przykład
Te przykłady sprawdzają, czy pierwsza wartość jest mniejsza niż druga wartość.
less(5, 10)
less('banana', 'apple')
I zwróć następujące wyniki:
- Pierwszy przykład:
true
- Drugi przykład:
false
lessOrEquals
Sprawdź, czy pierwsza wartość jest mniejsza, czy równa drugiej wartości. Zwraca wartość true, gdy pierwsza wartość jest mniejsza lub równa, lub zwraca wartość false, gdy pierwsza wartość jest większa.
lessOrEquals(<value>, <compareTo>)
lessOrEquals('<value>', '<compareTo>')
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<wartość> | Tak | Liczba całkowita, zmiennoprzecinkowa lub ciąg | Pierwsza wartość do sprawdzenia, czy wartość mniejsza niż lub równa drugiej wartości |
<compareTo> | Tak | Liczba całkowita, zmiennoprzecinkowa lub ciąg, odpowiednio | Element porównania |
Wartość zwracana | Type | Opis |
---|---|---|
prawda lub fałsz | Wartość logiczna | Zwraca wartość true, gdy pierwsza wartość jest mniejsza lub równa drugiej wartości. Zwraca wartość false, gdy pierwsza wartość jest większa niż druga wartość. |
Przykład
Te przykłady sprawdzają, czy pierwsza wartość jest mniejsza lub równa drugiej wartości.
lessOrEquals(10, 10)
lessOrEquals('apply', 'apple')
I zwróć następujące wyniki:
- Pierwszy przykład:
true
- Drugi przykład:
false
listCallbackUrl
Zwróć "adres URL wywołania zwrotnego", który wywołuje wyzwalacz lub akcję. Ta funkcja działa tylko z wyzwalaczami i akcjami dla typów łączników HttpWebhook i ApiConnectionWebhook , ale nie z typami Manual, Recurrence, HTTP i APIConnection .
listCallbackUrl()
Wartość zwracana | Type | Opis |
---|---|---|
<callback-URL> | String | Adres URL wywołania zwrotnego dla wyzwalacza lub akcji |
Przykład
W tym przykładzie przedstawiono przykładowy adres URL wywołania zwrotnego, który może zwrócić ta funkcja:
"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
Zwróć najwyższą wartość z listy lub tablicy z liczbami, które są uwzględniane na obu końcach.
max(<number1>, <number2>, ...)
max([<number1>, <number2>, ...])
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<liczba1>, <liczba2>, ... | Tak | Liczba całkowita, zmiennoprzecinkowa lub obie | Zestaw liczb, z których chcesz uzyskać najwyższą wartość |
[<number1>, <number2>, ...] | Tak | Tablica — liczba całkowita, zmiennoprzecinkowa lub obie | Tablica liczb, z której ma być najwyższa wartość |
Wartość zwracana | Type | Opis |
---|---|---|
<wartość maksymalna> | Liczba całkowita lub zmiennoprzecinkowa | Najwyższa wartość w określonej tablicy lub zestawie liczb |
Przykład
Te przykłady pobierają najwyższą wartość z zestawu liczb i tablicy:
max(1, 2, 3)
max(createArray(1, 2, 3))
I zwróć ten wynik: 3
min
Zwraca najniższą wartość z zestawu liczb lub tablicy.
min(<number1>, <number2>, ...)
min([<number1>, <number2>, ...])
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<liczba1>, <liczba2>, ... | Tak | Liczba całkowita, zmiennoprzecinkowa lub obie | Zestaw liczb, z których ma być najniższa wartość |
[<number1>, <number2>, ...] | Tak | Tablica — liczba całkowita, zmiennoprzecinkowa lub obie | Tablica liczb, z której ma być najniższa wartość |
Wartość zwracana | Type | Opis |
---|---|---|
<minimalna wartość> | Liczba całkowita lub zmiennoprzecinkowa | Najniższa wartość w określonym zestawie liczb lub określonej tablicy |
Przykład
Te przykłady pobierają najniższą wartość w zestawie liczb i tablicy:
min(1, 2, 3)
min(createArray(1, 2, 3))
I zwróć ten wynik: 1
mod
Zwróć resztę z dzielenia dwóch liczb. Aby uzyskać wynik liczby całkowitej, zobacz div().
mod(<dividend>, <divisor>)
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<dywidenda> | Tak | Liczba całkowita lub zmiennoprzecinkowa | Liczba do podzielenia przez dzielnik |
<dzielnik> | Tak | Liczba całkowita lub zmiennoprzecinkowa | Liczba dzieląca dywidendę, ale nie może być równa zero |
Wartość zwracana | Type | Opis |
---|---|---|
<modulo-wynik> | Liczba całkowita lub zmiennoprzecinkowa | Pozostała część z dzielenia pierwszej liczby przez drugą liczbę |
Przykład 1
W tym przykładzie pierwsza liczba jest podzielona przez drugą liczbę:
mod(3, 2)
I zwraca ten wynik: 1
Przykład 2
W tym przykładzie pokazano, że jeśli jedna lub obie wartości są ujemne, wynik odpowiada znakowi dywidendy:
mod(-5, 2)
mod(4, -3)
Przykład zwraca następujące wyniki:
- Pierwszy przykład:
-1
- Drugi przykład:
1
mul
Zwróć produkt z mnożenia dwóch liczb.
mul(<multiplicand1>, <multiplicand2>)
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<multiplicand1> | Tak | Liczba całkowita lub zmiennoprzecinkowa | Liczba, która ma być mnożna przez mnożenie i 2 |
<multiplicand2> | Tak | Liczba całkowita lub zmiennoprzecinkowa | Liczba wielokrotna mnożenia i1 |
Wartość zwracana | Type | Opis |
---|---|---|
<wynik produktu> | Liczba całkowita lub zmiennoprzecinkowa | Produkt z mnożenia pierwszej liczby przez drugą liczbę |
Przykład
W tych przykładach wiele pierwszej liczby według drugiej liczby:
mul(1, 2)
mul(1.5, 2)
I zwróć następujące wyniki:
- Pierwszy przykład:
2
- Drugi przykład
3
multipartBody
Zwróć treść określonej części w danych wyjściowych akcji, które mają wiele części.
multipartBody('<actionName>', <index>)
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<actionName> | Tak | String | Nazwa akcji, która zawiera dane wyjściowe z wieloma częściami |
<indeks> | Tak | Integer | Wartość indeksu dla żądanej części |
Wartość zwracana | Type | Opis |
---|---|---|
<treść> | String | Treść określonej części |
N
not
Sprawdź, czy wyrażenie jest fałszywe. Zwraca wartość true, gdy wyrażenie ma wartość false lub zwraca wartość false, gdy wartość true.
not(<expression>)
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<wyrażenie> | Tak | Wartość logiczna | Wyrażenie do sprawdzenia |
Wartość zwracana | Type | Opis |
---|---|---|
prawda lub fałsz | Wartość logiczna | Zwraca wartość true, gdy wyrażenie ma wartość false. Zwraca wartość false, gdy wyrażenie ma wartość true. |
Przykład 1
Te przykłady sprawdzają, czy określone wyrażenia są fałszywe:
not(false)
not(true)
I zwróć następujące wyniki:
- Pierwszy przykład: wyrażenie ma wartość false, więc funkcja zwraca
true
wartość . - Drugi przykład: Wyrażenie ma wartość true, więc funkcja zwraca
false
wartość .
Przykład 2
Te przykłady sprawdzają, czy określone wyrażenia są fałszywe:
not(equals(1, 2))
not(equals(1, 1))
I zwróć następujące wyniki:
- Pierwszy przykład: wyrażenie ma wartość false, więc funkcja zwraca
true
wartość . - Drugi przykład: Wyrażenie ma wartość true, więc funkcja zwraca
false
wartość .
nthIndexOf
Zwróć pozycję początkową lub wartość indeksu, w której nwystąpienie podciągu pojawia się w ciągu.
nthIndexOf('<text>', '<searchText>', <occurrence>)
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<text> | Tak | String | Ciąg zawierający podciąg do znalezienia |
<tekst wyszukiwania> | Tak | String | Podciąg do znalezienia |
<zdarzenie> | Tak | Integer | Liczba określająca nwystąpienie podciągów do znalezienia. Jeśli wystąpienie jest ujemne, rozpocznij wyszukiwanie od końca. |
Wartość zwracana | Type | Opis |
---|---|---|
<index-value> | Integer | Wartość pozycji początkowej lub indeksu dla nwystąpienia określonego podciągu. Jeśli podciąg nie zostanie znaleziony lub nie zostanie odnaleziony mniej niż n wystąpień podciągów, zwróć wartość -1 . |
Przykłady
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
lub
Sprawdź, czy co najmniej jedno wyrażenie ma wartość true. Zwraca wartość true, gdy co najmniej jedno wyrażenie ma wartość true lub zwraca wartość false, gdy wszystkie są fałszywe.
or(<expression1>, <expression2>, ...)
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<expression1>, <expression2>, ... | Tak | Wartość logiczna | Wyrażenia do sprawdzenia |
Wartość zwracana | Type | Opis |
---|---|---|
prawda lub fałsz | Wartość logiczna | Zwraca wartość true, gdy co najmniej jedno wyrażenie ma wartość true. Zwraca wartość false, gdy wszystkie wyrażenia są fałszywe. |
Przykład 1
Te przykłady sprawdzają, czy co najmniej jedno wyrażenie ma wartość true:
or(true, false)
or(false, false)
I zwróć następujące wyniki:
- Pierwszy przykład: Co najmniej jedno wyrażenie ma wartość true, więc funkcja zwraca
true
wartość . - Drugi przykład: Oba wyrażenia są fałszywe, więc funkcja zwraca
false
wartość .
Przykład 2
Te przykłady sprawdzają, czy co najmniej jedno wyrażenie ma wartość true:
or(equals(1, 1), equals(1, 2))
or(equals(1, 2), equals(1, 3))
I zwróć następujące wyniki:
- Pierwszy przykład: Co najmniej jedno wyrażenie ma wartość true, więc funkcja zwraca
true
wartość . - Drugi przykład: Oba wyrażenia są fałszywe, więc funkcja zwraca
false
wartość .
Wyjść
Zwraca dane wyjściowe akcji w czasie wykonywania.
outputs('<actionName>')
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<actionName> | Tak | String | Nazwa danych wyjściowych akcji, które chcesz wykonać |
Wartość zwracana | Type | Opis |
---|---|---|
<wyjście> | String | Dane wyjściowe z określonej akcji |
Przykład
Ten przykład pobiera dane wyjściowe z akcji Get user
X:
outputs('Get_user')
I zwraca ten wynik:
{
"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
parameters
Zwróć wartość parametru opisanego w definicji przepływu pracy.
parameters('<parameterName>')
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<nazwa parametru> | Tak | String | Nazwa parametru, którego wartość ma zostać utworzona |
Wartość zwracana | Type | Opis |
---|---|---|
<parametr-wartość> | Dowolne | Wartość określonego parametru |
Przykład
Załóżmy, że masz tę wartość JSON:
{
"fullName": "Sophia Owen"
}
W tym przykładzie jest pobierana wartość określonego parametru:
parameters('fullName')
I zwraca ten wynik: "Sophia Owen"
parseDateTime
Zwróć znacznik czasu z ciągu zawierającego znacznik czasu.
parseDateTime('<timestamp>', '<locale>'?, '<format>'?)
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<Sygnatury czasowej> | Tak | String | Ciąg zawierający znacznik czasu |
<ustawienia regionalne> | Nie. | String | Ustawienia regionalne do użycia. Jeśli nie zostanie określony, domyślne ustawienia regionalne to en-us . Jeśli ustawienia regionalne nie są prawidłową wartością, zostanie wygenerowany błąd. |
<format> | Nie. | String | Ciąg formatu liczbowego, który jest specyfikatorem pojedynczego formatu lub wzorcem formatu niestandardowego. Domyślny format znacznika czasu to "o" (rrrr-MM-ddTHH:mm:ss.fffffffK), który jest zgodny z normą ISO 8601 i zachowuje informacje o strefie czasowej. Jeśli format nie jest określony, spróbuj przeanalizować wiele formatów, które są zgodne z podanymi ustawieniami regionalnymi. Jeśli format nie jest prawidłową wartością, zostanie wygenerowany błąd. |
Wartość zwracana | Type | Opis |
---|---|---|
<parsed-timestamp> | String | Przeanalizowany znacznik czasu w formacie "o" (rrrr-MM-ddTHH:mm:ss.fffK), który jest zgodny z normą ISO 8601 i zachowuje informacje o strefie czasowej. |
Przykłady
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('10/20/2014 15h', 'en-US', 'MM/dd/yyyy HH\h') // Returns '2014-10-20T15:00:00.0000000'.
R
rand
Zwraca losową liczbę całkowitą z określonego zakresu, który jest uwzględniany tylko na końcu początkowym.
rand(<minValue>, <maxValue>)
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<minValue> | Tak | Integer | Najniższa liczba całkowita w zakresie |
<maxValue> | Tak | Integer | Liczba całkowita, która jest zgodna z najwyższą liczbą całkowitą w zakresie, który może zwrócić funkcja |
Wartość zwracana | Type | Opis |
---|---|---|
<wynik losowy> | Integer | Losowa liczba całkowita zwrócona z określonego zakresu |
Przykład
W tym przykładzie jest pobierana losowa liczba całkowita z określonego zakresu, z wyłączeniem maksymalnej wartości:
rand(1, 5)
Funkcja zwraca jedną z tych liczb w wyniku: 1
, , 2
lub 3
4
range
Zwraca tablicę całkowitą rozpoczynającą się od określonej liczby całkowitej.
range(<startIndex>, <count>)
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<startIndex> | Tak | Integer | Wartość całkowita, która uruchamia tablicę jako pierwszy element |
<count> | Tak | Integer | Liczba liczb całkowitych w tablicy. Wartość parametru count musi być dodatnią liczbą całkowitą, która nie przekracza 100 000. Uwaga: Suma startIndex wartości i count nie może przekraczać 2 147 483 647. |
Wartość zwracana | Type | Opis |
---|---|---|
[<range-result>] | Tablica | Tablica z liczbami całkowitymi rozpoczynającymi się od określonego indeksu |
Przykład
W tym przykładzie jest tworzona tablica całkowita, która rozpoczyna się od określonego indeksu i ma określoną liczbę liczb całkowitych:
range(1, 4)
I zwraca ten wynik: [1, 2, 3, 4]
removeProperty
Usuń właściwość z obiektu i zwróć zaktualizowany obiekt. Jeśli właściwość, którą próbujesz usunąć, nie istnieje, funkcja zwraca oryginalny obiekt.
removeProperty(<object>, '<property>')
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<object> | Tak | Objekt | Obiekt JSON, z którego chcesz usunąć właściwość |
<właściwość> | Tak | String | Nazwa właściwości do usunięcia |
Wartość zwracana | Type | Opis |
---|---|---|
<zaktualizowany obiekt> | Objekt | Zaktualizowany obiekt JSON bez określonej właściwości |
Aby usunąć właściwość podrzędną z istniejącej właściwości, użyj następującej składni:
removeProperty(<object>['<parent-property>'], '<child-property>')
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<object> | Tak | Objekt | Obiekt JSON, którego właściwość ma zostać usunięta |
<właściwość nadrzędna> | Tak | String | Nazwa właściwości nadrzędnej z właściwością podrzędną, którą chcesz usunąć |
<właściwość podrzędna> | Tak | String | Nazwa właściwości podrzędnej do usunięcia |
Wartość zwracana | Type | Opis |
---|---|---|
<zaktualizowany obiekt> | Objekt | Zaktualizowany obiekt JSON, którego właściwość podrzędna została usunięta |
Przykład 1
W tym przykładzie właściwość jest usuwana middleName
z obiektu JSON, który jest konwertowany z ciągu na kod JSON przy użyciu funkcji JSON() i zwraca zaktualizowany obiekt:
removeProperty(json('{ "firstName": "Sophia", "middleName": "Anne", "surName": "Owen" }'), 'middleName')
Oto bieżący obiekt JSON:
{
"firstName": "Sophia",
"middleName": "Anne",
"surName": "Owen"
}
Oto zaktualizowany obiekt JSON:
{
"firstName": "Sophia",
"surName": "Owen"
}
Przykład 2
W tym przykładzie właściwość podrzędna jest usuwana middleName
z właściwości nadrzędnej customerName
w obiekcie JSON, który jest konwertowany z ciągu na kod JSON przy użyciu funkcji JSON() i zwraca zaktualizowany obiekt:
removeProperty(json('{ "customerName": { "firstName": "Sophia", "middleName": "Anne", "surName": "Owen" } }')['customerName'], 'middleName')
Oto bieżący obiekt JSON:
{
"customerName": {
"firstName": "Sophia",
"middleName": "Anne",
"surName": "Owen"
}
}
Oto zaktualizowany obiekt JSON:
{
"customerName": {
"firstName": "Sophia",
"surName": "Owen"
}
}
replace
Zastąp podciąg określonym ciągiem i zwróć ciąg wynikowy. Ta funkcja uwzględnia wielkość liter.
replace('<text>', '<oldText>', '<newText>')
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<text> | Tak | String | Ciąg, który ma podciąg, który ma zastąpić |
<oldText> | Tak | String | Podciąg do zastąpienia |
<newText> | Tak | String | Ciąg zastępczy |
Wartość zwracana | Type | Opis |
---|---|---|
<zaktualizowany tekst> | String | Zaktualizowany ciąg po zastąpieniu podciągu Jeśli podciąg nie zostanie znaleziony, zwróć oryginalny ciąg. |
Przykład
W tym przykładzie znajduje się podciąg "stary" w ciągu "stary" i zastępuje ciąg "old" ciągiem "new":
replace('the old string', 'old', 'new')
I zwraca ten wynik: "the new string"
result
Zwróć wyniki z akcji najwyższego poziomu w określonej akcji o określonym zakresie, takiej jak For_each
, Until
lub Scope
akcja. Funkcja result()
akceptuje pojedynczy parametr, który jest nazwą zakresu i zwraca tablicę zawierającą informacje z akcji pierwszego poziomu w tym zakresie. Te obiekty akcji zawierają te same atrybuty co atrybuty zwracane przez actions()
funkcję, takie jak czas rozpoczęcia akcji, czas zakończenia, stan, dane wejściowe, identyfikatory korelacji i dane wyjściowe.
Uwaga
Ta funkcja zwraca informacje tylko z akcji pierwszego poziomu w akcji o określonym zakresie, a nie z bardziej zagnieżdżonych akcji, takich jak akcje przełączania lub warunku.
Możesz na przykład użyć tej funkcji, aby uzyskać wyniki z akcji, które zakończyły się niepowodzeniem, aby można było diagnozować i obsługiwać wyjątki. Aby uzyskać więcej informacji, zobacz Pobieranie kontekstu i wyników dla błędów.
result('<scopedActionName>')
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<scopedActionName> | Tak | String | Nazwa akcji o określonym zakresie, w której mają zostać wprowadzone dane wejściowe i wyjściowe z akcji najwyższego poziomu w tym zakresie |
Wartość zwracana | Type | Opis |
---|---|---|
<array-object> | Obiekt tablicy | Tablica zawierająca tablice danych wejściowych i wyjściowych z każdej akcji najwyższego poziomu w określonym zakresie |
Przykład
W tym przykładzie zwracane są dane wejściowe i wyjściowe z każdej iteracji akcji HTTP wewnątrz For_each
pętli, używając result()
funkcji w Compose
akcji:
{
"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"
}
}
}
Oto jak przykładowa zwracana tablica może wyglądać, gdzie obiekt zewnętrzny outputs
zawiera dane wejściowe i wyjściowe z każdej iteracji akcji wewnątrz For_each
akcji.
[
{
"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
Odwraca kolejność elementów w kolekcji. Gdy używasz tej funkcji z funkcją sort(), możesz sortować kolekcję w kolejności malejącej.
reverse([<collection>])
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<kolekcja> | Tak | Tablica | Kolekcja do odwrócenia |
Wartość zwracana | Type | Opis |
---|---|---|
[<zaktualizowana kolekcja>] | Tablica | Odwrócona kolekcja |
Przykład
W tym przykładzie odwrócona jest tablica liczb całkowitych:
reverse(createArray(0, 1, 2, 3))
Zwraca tę tablicę: [3,2,1,0]
S
setProperty
Ustaw wartość właściwości obiektu JSON i zwróć zaktualizowany obiekt. Jeśli właściwość, którą próbujesz ustawić, nie istnieje, właściwość zostanie dodana do obiektu. Aby dodać nową właściwość, użyj funkcji addProperty().
setProperty(<object>, '<property>', <value>)
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<object> | Tak | Objekt | Obiekt JSON, którego właściwość chcesz ustawić |
<właściwość> | Tak | String | Nazwa istniejącej lub nowej właściwości do ustawienia |
<wartość> | Tak | Dowolne | Wartość ustawiona dla określonej właściwości |
Aby ustawić właściwość podrzędną w obiekcie podrzędnym, użyj wywołania zagnieżdżonego setProperty()
. W przeciwnym razie funkcja zwraca tylko obiekt podrzędny jako dane wyjściowe.
setProperty(<object>, '<parent-property>', setProperty(<object>['parentProperty'], '<child-property>', <value>))
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<object> | Tak | Objekt | Obiekt JSON, którego właściwość chcesz ustawić |
<właściwość nadrzędna> | Tak | String | Nazwa właściwości nadrzędnej z właściwością podrzędną, którą chcesz ustawić |
<właściwość podrzędna> | Tak | String | Nazwa właściwości podrzędnej do ustawienia |
<wartość> | Tak | Dowolne | Wartość ustawiona dla określonej właściwości |
Wartość zwracana | Type | Opis |
---|---|---|
<zaktualizowany obiekt> | Objekt | Zaktualizowany obiekt JSON, którego właściwość została ustawiona |
Przykład 1
W tym przykładzie surName
właściwość ustawia właściwość w obiekcie JSON, który jest konwertowany z ciągu na kod JSON przy użyciu funkcji JSON(). Funkcja przypisuje określoną wartość do właściwości i zwraca zaktualizowany obiekt:
setProperty(json('{ "firstName": "Sophia", "surName": "Owen" }'), 'surName', 'Hartnett')
Oto bieżący obiekt JSON:
{
"firstName": "Sophia",
"surName": "Owen"
}
Oto zaktualizowany obiekt JSON:
{
"firstName": "Sophia",
"surName": "Hartnett"
}
Przykład 2
W tym przykładzie właściwość podrzędna surName
dla właściwości nadrzędnej customerName
w obiekcie JSON jest konwertowana z ciągu na format JSON przy użyciu funkcji JSON(). Funkcja przypisuje określoną wartość do właściwości i zwraca zaktualizowany obiekt:
setProperty(json('{ "customerName": { "firstName": "Sophia", "surName": "Owen" } }'), 'customerName', setProperty(json('{ "customerName": { "firstName": "Sophia", "surName": "Owen" } }')['customerName'], 'surName', 'Hartnett'))
Oto bieżący obiekt JSON:
{
"customerName": {
"firstName": "Sophie",
"surName": "Owen"
}
}
Oto zaktualizowany obiekt JSON:
{
"customerName": {
"firstName": "Sophie",
"surName": "Hartnett"
}
}
skip
Usuń elementy z przodu kolekcji i zwróć wszystkie inne elementy.
skip([<collection>], <count>)
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<kolekcja> | Tak | Tablica | Kolekcja, której elementy chcesz usunąć |
<count> | Tak | Integer | Dodatnia liczba całkowita dla liczby elementów do usunięcia z przodu |
Wartość zwracana | Type | Opis |
---|---|---|
[<zaktualizowana kolekcja>] | Tablica | Zaktualizowana kolekcja po usunięciu określonych elementów |
Przykład
W tym przykładzie usunięto jeden element ( liczbę 0) z przodu określonej tablicy:
skip(createArray(0, 1, 2, 3), 1)
Zwraca tę tablicę z pozostałymi elementami: [1,2,3]
slice
Zwróć podciąg, określając pozycję początkową i końcową lub wartość. Zobacz również podciąg ().
slice('<text>', <startIndex>, <endIndex>?)
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<text> | Tak | String | Ciąg zawierający podciąg do znalezienia |
<startIndex> | Tak | Integer | Położenie początkowe lub wartość początkowa oparta na zera, gdzie rozpocząć wyszukiwanie podciągów — Jeśli właściwość startIndex jest większa niż długość ciągu, zwróć pusty ciąg. — Jeśli właściwość startIndex jest ujemna, rozpocznij wyszukiwanie na wartości indeksu, która jest sumą długości ciągu i właściwości startIndex. |
<endIndex> | Nie. | Integer | Położenie lub wartość końcowa oparta na zera, gdzie należy zakończyć wyszukiwanie podciągów. Znak znajdujący się w końcowej wartości indeksu nie jest uwzględniony w wyszukiwaniu. — Jeśli właściwość endIndex nie jest określona lub większa niż długość ciągu, wyszukaj na końcu ciągu. — Jeśli właściwość endIndex jest ujemna, zakończ wyszukiwanie na wartości indeksu, która jest sumą długości ciągu i endIndex. |
Wartość zwracana | Type | Opis |
---|---|---|
<wynik fragmentatora> | String | Nowy ciąg zawierający znaleziony podciąg |
Przykłady
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
Sortuj elementy w kolekcji. Obiekty kolekcji można sortować przy użyciu dowolnego klucza zawierającego prosty typ.
sort([<collection>], <sortBy>?)
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<kolekcja> | Tak | Tablica | Kolekcja z elementami do sortowania |
<sortBy> | Nie. | String | Klucz używany do sortowania obiektów kolekcji |
Wartość zwracana | Type | Opis |
---|---|---|
[<zaktualizowana kolekcja>] | Tablica | Posortowana kolekcja |
Przykład 1
W tym przykładzie sortuje się tablicę liczb całkowitych:
sort(createArray(2, 1, 0, 3))
Zwraca tę tablicę: [0,1,2,3]
Przykład 2
Ten przykład sortuje tablicę obiektów według klucza:
sort(createArray(json('{ "first": "Amalie", "last": "Rose" }'), json('{ "first": "Elise", "last": "Renee" }')), 'last')
Zwraca tę tablicę: [{ "first": "Elise", "last": "Renee" }, {"first": "Amalie", "last": "Rose" }')]
split
Zwraca tablicę zawierającą podciągi oddzielone przecinkami na podstawie określonego znaku ogranicznika w oryginalnym ciągu.
split('<text>', '<delimiter>')
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<text> | Tak | String | Ciąg do oddzielenia od podciągów na podstawie określonego ogranicznika w oryginalnym ciągu |
<Ogranicznik> | Tak | String | Znak w oryginalnym ciągu do użycia jako ogranicznik |
Wartość zwracana | Type | Opis |
---|---|---|
[<podciąg1,podciąg2>><,...] | Tablica | Tablica zawierająca podciągy z oryginalnego ciągu oddzielona przecinkami |
Przykład 1
W tym przykładzie jest tworzona tablica z podciągami z określonego ciągu na podstawie określonego znaku jako ogranicznika:
split('a_b_c', '_')
I zwraca tę tablicę w wyniku: ["a","b","c"]
Przykład 2
W tym przykładzie jest tworzona tablica z jednym elementem, gdy w ciągu nie istnieje ogranicznik:
split('a_b_c', ' ')
I zwraca tę tablicę w wyniku: ["a_b_c"]
startOfDay
Zwróć początek dnia dla znacznika czasu.
startOfDay('<timestamp>', '<format>'?)
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<Sygnatury czasowej> | Tak | String | Ciąg zawierający znacznik czasu |
<format> | Nie. | String | Ciąg formatu liczbowego, który jest specyfikatorem pojedynczego formatu lub wzorcem formatu niestandardowego. Domyślny format znacznika czasu to "o" (rrrr-MM-ddTHH:mm:ss.fffffffK), który jest zgodny z normą ISO 8601 i zachowuje informacje o strefie czasowej. Jeśli format nie jest prawidłową wartością, zostanie wygenerowany błąd. |
Wartość zwracana | Type | Opis |
---|---|---|
<sygnatura czasowa aktualizacji> | String | Określony znacznik czasu, ale rozpoczynający się od znaku zero-godzinnego dla dnia |
Przykład
W tym przykładzie znajduje się początek dnia dla tego znacznika czasu:
startOfDay('2018-03-15T13:30:30Z')
I zwraca ten wynik: "2018-03-15T00:00:00.0000000Z"
startOfHour
Zwróć początek godziny dla znacznika czasu.
startOfHour('<timestamp>', '<format>'?)
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<Sygnatury czasowej> | Tak | String | Ciąg zawierający znacznik czasu |
<format> | Nie. | String | Ciąg formatu liczbowego, który jest specyfikatorem pojedynczego formatu lub wzorcem formatu niestandardowego. Domyślny format znacznika czasu to "o" (rrrr-MM-ddTHH:mm:ss.fffffffK), który jest zgodny z normą ISO 8601 i zachowuje informacje o strefie czasowej. Jeśli format nie jest prawidłową wartością, zostanie wygenerowany błąd. |
Wartość zwracana | Type | Opis |
---|---|---|
<sygnatura czasowa aktualizacji> | String | Określony znacznik czasu, ale rozpoczynający się od znaku zero-minutowego dla godziny |
Przykład
W tym przykładzie znajduje się początek godziny dla tego znacznika czasu:
startOfHour('2018-03-15T13:30:30Z')
I zwraca ten wynik: "2018-03-15T13:00:00.0000000Z"
startOfMonth
Zwróć początek miesiąca dla znacznika czasu.
startOfMonth('<timestamp>', '<format>'?)
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<Sygnatury czasowej> | Tak | String | Ciąg zawierający znacznik czasu |
<format> | Nie. | String | Ciąg formatu liczbowego, który jest specyfikatorem pojedynczego formatu lub wzorcem formatu niestandardowego. Domyślny format znacznika czasu to "o" (rrrr-MM-ddTHH:mm:ss.fffffffK), który jest zgodny z normą ISO 8601 i zachowuje informacje o strefie czasowej. Jeśli format nie jest prawidłową wartością, zostanie wygenerowany błąd. |
Wartość zwracana | Type | Opis |
---|---|---|
<sygnatura czasowa aktualizacji> | String | Określony znacznik czasu, ale rozpoczynający się pierwszego dnia miesiąca na znaczniku zero-godzinnym |
Przykład 1
Ten przykład zwraca początek miesiąca dla tego znacznika czasu:
startOfMonth('2018-03-15T13:30:30Z')
I zwraca ten wynik: "2018-03-01T00:00:00.0000000Z"
Przykład 2
Ten przykład zwraca początek miesiąca w określonym formacie dla tego znacznika czasu:
startOfMonth('2018-03-15T13:30:30Z', 'yyyy-MM-dd')
I zwraca ten wynik: "2018-03-01"
startsWith
Sprawdź, czy ciąg rozpoczyna się od określonego podciągu. Zwraca wartość true, gdy podciąg zostanie znaleziony lub zwróci wartość false, gdy nie zostanie znaleziona. Ta funkcja nie uwzględnia wielkości liter.
startsWith('<text>', '<searchText>')
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<text> | Tak | String | Ciąg do sprawdzenia |
<tekst wyszukiwania> | Tak | String | Ciąg początkowy do znalezienia |
Wartość zwracana | Type | Opis |
---|---|---|
prawda lub fałsz | Wartość logiczna | Zwraca wartość true po znalezieniu początkowego podciągu. Zwraca wartość false, gdy nie zostanie znaleziona. |
Przykład 1
W tym przykładzie sprawdza się, czy ciąg "hello world" rozpoczyna się od podciągu "hello":
startsWith('hello world', 'hello')
I zwraca ten wynik: true
Przykład 2
W tym przykładzie sprawdza się, czy ciąg "hello world" rozpoczyna się od podciągu "greetings":
startsWith('hello world', 'greetings')
I zwraca ten wynik: false
string
Zwróć wersję ciągu dla wartości.
string(<value>)
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<wartość> | Tak | Dowolne | Wartość do konwersji. Jeśli ta wartość ma wartość null lub ma wartość null, wartość jest konwertowana na pusty ciąg ("" ). Jeśli na przykład przypiszesz zmienną ciągu do właściwości nieistniejącej, do której można uzyskać dostęp za pomocą ? operatora, wartość null zostanie przekonwertowana na pusty ciąg. Jednak porównywanie wartości null nie jest takie samo jak porównywanie pustego ciągu. |
Wartość zwracana | Type | Opis |
---|---|---|
<ciąg-wartość> | String | Wersja ciągu dla określonej wartości. Jeśli parametr wartości ma wartość null lub ma wartość null, ta wartość jest zwracana jako pusta wartość ciągu ("" ). |
Przykład 1
W tym przykładzie zostanie utworzona wersja ciągu dla tego numeru:
string(10)
I zwraca ten wynik: "10"
Przykład 2
W tym przykładzie tworzony jest ciąg dla określonego obiektu JSON i używa znaku ukośnika odwrotnego (\) jako znaku ucieczki dla podwójnego cudzysłowu (").
string( { "name": "Sophie Owen" } )
I zwraca ten wynik: "{ \\"name\\": \\"Sophie Owen\\" }"
sub
Zwróć wynik odejmowania drugiej liczby z pierwszej liczby.
sub(<minuend>, <subtrahend>)
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<minuend> | Tak | Liczba całkowita lub zmiennoprzecinkowa | Liczba, z której należy odjąć odejmowanie odejmowania |
<odjemnik> | Tak | Liczba całkowita lub zmiennoprzecinkowa | Liczba do odejmowania od minuend |
Wartość zwracana | Type | opis |
---|---|---|
<wynik> | Liczba całkowita lub zmiennoprzecinkowa | Wynik odejmowania drugiej liczby z pierwszej liczby |
Przykład
W tym przykładzie odejmuje drugą liczbę z pierwszej liczby:
sub(10.3, .3)
I zwraca ten wynik: 10
Podciąg
Zwraca znaki z ciągu, zaczynając od określonej pozycji lub indeksu. Wartości indeksu zaczynają się od liczby 0. Zobacz również fragmentator().
substring('<text>', <startIndex>, <length>)
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<text> | Tak | String | Ciąg, którego znaki chcesz |
<startIndex> | Tak | Integer | Liczba dodatnia równa lub większa niż 0, której chcesz użyć jako pozycji początkowej lub wartości indeksu |
<length> | Nie. | Integer | Dodatnia liczba znaków, które mają być w podciągu |
Uwaga
Upewnij się, że suma z dodawania wartości parametrów startIndex i length jest mniejsza niż długość ciągu podanego dla parametru tekstowego. W przeciwnym razie występuje błąd, w przeciwieństwie do podobnych funkcji w innych językach, w których wynikiem jest podciąg od indeksu start do końca ciągu. Parametr length jest opcjonalny i jeśli nie podano, funkcja substring() przyjmuje wszystkie znaki rozpoczynające się od startIndex na końcu ciągu.
Wartość zwracana | Type | Opis |
---|---|---|
<wynik podciągów> | String | Podciąg o określonej liczbie znaków rozpoczynający się od określonej pozycji indeksu w ciągu źródłowym |
Przykład
W tym przykładzie utworzono podciąg z pięciu znaków z określonego ciągu, zaczynając od wartości indeksu 6:
substring('hello world', 6, 5)
I zwraca ten wynik: "world"
odejmowanieFromTime
Odejmij liczbę jednostek czasu z znacznika czasu. Zobacz również getPastTime.
subtractFromTime('<timestamp>', <interval>, '<timeUnit>', '<format>'?)
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<Sygnatury czasowej> | Tak | String | Ciąg zawierający znacznik czasu |
<interval> | Tak | Integer | Liczba określonych jednostek czasu do odejmowania |
<timeUnit> | Tak | String | Jednostka czasu do użycia z interwałem: "Second", "Minute", "Hour", "Day", "Week", "Month", "Year" |
<format> | Nie. | String | Ciąg formatu liczbowego, który jest specyfikatorem pojedynczego formatu lub wzorcem formatu niestandardowego. Domyślny format znacznika czasu to "o" (rrrr-MM-ddTHH:mm:ss.fffffffK), który jest zgodny z normą ISO 8601 i zachowuje informacje o strefie czasowej. Jeśli format nie jest prawidłową wartością, zostanie wygenerowany błąd. |
Wartość zwracana | Type | Opis |
---|---|---|
<sygnatura czasowa aktualizacji> | String | Sygnatura czasowa minus określona liczba jednostek czasu |
Przykład 1
W tym przykładzie odejmuje jeden dzień od tego znacznika czasu:
subtractFromTime('2018-01-02T00:00:00Z', 1, 'Day')
I zwraca ten wynik: "2018-01-01T00:00:00.0000000Z"
Przykład 2
W tym przykładzie odejmuje jeden dzień od tego znacznika czasu:
subtractFromTime('2018-01-02T00:00:00Z', 1, 'Day', 'D')
Zwraca ten wynik przy użyciu opcjonalnego formatu "D": "Monday, January, 1, 2018"
T
take
Zwracanie elementów z przodu kolekcji.
take('<collection>', <count>)
take([<collection>], <count>)
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<kolekcja> | Tak | Ciąg lub tablica | Kolekcja, której elementy chcesz |
<count> | Tak | Integer | Dodatnia liczba całkowita dla liczby elementów, które mają być od przodu |
Wartość zwracana | Type | Opis |
---|---|---|
<podzestaw lub [<podzestaw>>] | Ciąg lub tablica, odpowiednio | Ciąg lub tablica zawierająca określoną liczbę elementów pobranych z przodu oryginalnej kolekcji |
Przykład
Te przykłady pobierają określoną liczbę elementów z przodu tych kolekcji:
take('abcde', 3)
take(createArray(0, 1, 2, 3, 4), 3)
I zwróć następujące wyniki:
- Pierwszy przykład:
"abc"
- Drugi przykład:
[0, 1, 2]
Kleszcze
Zwraca liczbę znaczników, które są 100-nanosekundowe interwały, od 1 stycznia 0001 12:00:00 północy (lub DateTime.Ticks w C#) do określonego znacznika czasu. Aby uzyskać więcej informacji, zobacz ten temat: Właściwość DateTime.Ticks (System).
ticks('<timestamp>')
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<Sygnatury czasowej> | Tak | String | Ciąg znacznika czasu |
Wartość zwracana | Type | Opis |
---|---|---|
<ticks-number> | Integer | Liczba znaczników od określonego znacznika czasu |
toLower
Zwraca ciąg w formacie małych liter. Jeśli znak w ciągu nie ma małej litery, ten znak pozostaje niezmieniony w zwracanym ciągu.
toLower('<text>')
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<text> | Tak | String | Ciąg, który ma być zwracany w formacie małych liter |
Wartość zwracana | Type | Opis |
---|---|---|
<małe litery i tekst> | String | Oryginalny ciąg w formacie małych liter |
Przykład
W tym przykładzie ten ciąg jest konwertowany na małe litery:
toLower('Hello World')
I zwraca ten wynik: "hello world"
toUpper
Zwraca ciąg w formacie wielkiej litery. Jeśli znak w ciągu nie ma wielkiej litery, ten znak pozostaje niezmieniony w zwracanym ciągu.
toUpper('<text>')
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<text> | Tak | String | Ciąg, który ma być zwracany w formacie wielkiej litery |
Wartość zwracana | Type | Opis |
---|---|---|
<wielkie litery — tekst> | String | Oryginalny ciąg w formacie wielkiej litery |
Przykład
W tym przykładzie ten ciąg jest konwertowany na wielkie litery:
toUpper('Hello World')
I zwraca ten wynik: "HELLO WORLD"
wyzwalacz
Zwraca dane wyjściowe wyzwalacza w czasie wykonywania lub wartości z innych par nazw i wartości JSON, które można przypisać do wyrażenia.
Wewnątrz danych wejściowych wyzwalacza ta funkcja zwraca dane wyjściowe z poprzedniego wykonania.
Wewnątrz warunku wyzwalacza ta funkcja zwraca dane wyjściowe z bieżącego wykonania.
Domyślnie funkcja odwołuje się do całego obiektu wyzwalacza, ale opcjonalnie można określić właściwość, której wartość jest odpowiednia. Ponadto ta funkcja ma dostępne wersje skrócone, zobacz triggerOutputs() i triggerBody().
trigger()
Wartość zwracana | Type | Opis |
---|---|---|
<trigger-output> | String | Dane wyjściowe z wyzwalacza w czasie wykonywania |
triggerBody
Zwracanie danych wyjściowych body
wyzwalacza w czasie wykonywania. Skrót dla .trigger().outputs.body
Zobacz trigger().
triggerBody()
Wartość zwracana | Type | Opis |
---|---|---|
<trigger-body-output> | String | Dane body wyjściowe z wyzwalacza |
triggerFormDataMultiValues
Zwraca tablicę z wartościami, które pasują do nazwy klucza w danych formularza wyzwalacza lub danych wyjściowych zakodowanych w formie.
triggerFormDataMultiValues('<key>')
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<key> | Tak | String | Nazwa klucza, którego wartość ma zostać utworzona |
Wartość zwracana | Type | Opis |
---|---|---|
[<array-with-key-values>] | Tablica | Tablica ze wszystkimi wartościami zgodnymi z określonym kluczem |
Przykład
W tym przykładzie utworzono tablicę na podstawie wartości klucza "feedUrl" w danych formularza lub danych wyjściowych zakodowanych w formularzu wyzwalacza RSS:
triggerFormDataMultiValues('feedUrl')
I zwraca tę tablicę jako przykładowy wynik: ["https://feeds.a.dj.com/rss/RSSMarketsMain.xml"]
triggerFormDataValue
Zwraca ciąg z pojedynczą wartością zgodną z nazwą klucza w danych formularza lub danych wyjściowych zakodowanych w formularzu wyzwalacza. Jeśli funkcja znajdzie więcej niż jedno dopasowanie, funkcja zgłasza błąd.
triggerFormDataValue('<key>')
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<key> | Tak | String | Nazwa klucza, którego wartość ma zostać utworzona |
Wartość zwracana | Type | Opis |
---|---|---|
<klucz-wartość> | String | Wartość w określonym kluczu |
Przykład
W tym przykładzie zostanie utworzony ciąg z wartości klucza "feedUrl" w danych formularza lub danych wyjściowych zakodowanych w formularzu wyzwalacza RSS:
triggerFormDataValue('feedUrl')
I zwraca ten ciąg jako przykładowy wynik: "https://feeds.a.dj.com/rss/RSSMarketsMain.xml"
triggerMultipartBody
Zwróć treść określonej części w danych wyjściowych wyzwalacza, które mają wiele części.
triggerMultipartBody(<index>)
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<indeks> | Tak | Integer | Wartość indeksu dla żądanej części |
Wartość zwracana | Type | Opis |
---|---|---|
<treść> | String | Treść określonej części w danych wyjściowych wieloczęściowych wyzwalacza |
triggerOutputs
Zwraca dane wyjściowe wyzwalacza w czasie wykonywania lub wartości z innych par nazw i wartości JSON. Skrót dla .trigger().outputs
Zobacz trigger().
triggerOutputs()
Wartość zwracana | Type | Opis |
---|---|---|
<trigger-output> | String | Dane wyjściowe z wyzwalacza w czasie wykonywania |
przycinać
Usuń białe znaki wiodące i końcowe z ciągu i zwróć zaktualizowany ciąg.
trim('<text>')
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<text> | Tak | String | Ciąg zawierający biały znak wiodący i końcowy do usunięcia |
Wartość zwracana | Type | Opis |
---|---|---|
<updatedText> | String | Zaktualizowana wersja oryginalnego ciągu bez wiodącego lub końcowego odstępu |
Przykład
W tym przykładzie usunięto wiodące i końcowe białe znaki z ciągu "Hello World":
trim(' Hello World ')
I zwraca ten wynik: "Hello World"
U
unia
Zwróć kolekcję zawierającą wszystkie elementy z określonych kolekcji. Aby wyświetlić wynik, element może pojawić się w dowolnej kolekcji przekazanej do tej funkcji. Jeśli co najmniej jeden element ma taką samą nazwę, w wyniku pojawi się ostatni element o tej nazwie.
union('<collection1>', '<collection2>', ...)
union([<collection1>], [<collection2>], ...)
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<kolekcja1>, <kolekcja2>, ... | Tak | Tablica lub obiekt, ale nie obie | Kolekcje, z których mają być potrzebne wszystkie elementy |
Wartość zwracana | Type | Opis |
---|---|---|
<updatedCollection> | Tablica lub obiekt, odpowiednio | Kolekcja ze wszystkimi elementami z określonych kolekcji — bez duplikatów |
Przykład
Ten przykład pobiera wszystkie elementy z tych kolekcji:
union(createArray(1, 2, 3), createArray(1, 2, 10, 101))
I zwraca ten wynik: [1, 2, 3, 10, 101]
uriComponent
Zwróć wersję zakodowaną w postaci identyfikatora zasobu (URI) dla ciągu, zastępując znaki ucieczki niebezpiecznymi adresami URL. Użyj tej funkcji, a nie encodeUriComponent(). Chociaż obie funkcje działają w taki sam sposób, uriComponent()
jest preferowana.
uriComponent('<value>')
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<wartość> | Tak | String | Ciąg do konwersji na format zakodowany w formacie URI |
Wartość zwracana | Type | Opis |
---|---|---|
<identyfikator URI zakodowany> | String | Ciąg zakodowany w formacie URI z znakami ucieczki |
Przykład
W tym przykładzie zostanie utworzona wersja zakodowana w identyfikatorze URI dla tego ciągu:
uriComponent('https://contoso.com')
I zwraca ten wynik: "https%3A%2F%2Fcontoso.com"
uriComponentToBinary
Zwróć wersję binarną dla składnika URI (Uniform Resource Identifier).
uriComponentToBinary('<value>')
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<wartość> | Tak | String | Ciąg zakodowany w formacie URI do konwersji |
Wartość zwracana | Type | Opis |
---|---|---|
<binary-for-encoded-uri> | String | Wersja binarna dla ciągu kodowanego identyfikatorem URI. Zawartość binarna jest zakodowana w formacie base64 i reprezentowana przez $content element . |
Przykład
W tym przykładzie zostanie utworzona wersja binarna dla tego ciągu zakodowanego za pomocą identyfikatora URI:
uriComponentToBinary('https%3A%2F%2Fcontoso.com')
I zwraca ten wynik:
"001000100110100001110100011101000111000000100101001100 11010000010010010100110010010001100010010100110010010001 10011000110110111101101110011101000110111101110011011011 110010111001100011011011110110110100100010"
uriComponentToString
Zwróć wersję ciągu dla zakodowanego ciągu identyfikatora URI (URI), co skutecznie dekoduje ciąg zakodowany w identyfikatorze URI.
uriComponentToString('<value>')
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<wartość> | Tak | String | Ciąg zakodowany za pomocą identyfikatora URI do dekodowania |
Wartość zwracana | Type | Opis |
---|---|---|
<dekodowany identyfikator URI> | String | Zdekodowana wersja ciągu zakodowanego za pomocą identyfikatora URI |
Przykład
W tym przykładzie tworzona jest zdekodowana wersja ciągu dla tego ciągu zakodowanego za pomocą identyfikatora URI:
uriComponentToString('https%3A%2F%2Fcontoso.com')
I zwraca ten wynik: "https://contoso.com"
uriHost
host
Zwraca wartość identyfikatora URI (Uniform Resource Identifier).
uriHost('<uri>')
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<Uri> | Tak | String | Identyfikator URI, którego host wartość chcesz |
Wartość zwracana | Type | Opis |
---|---|---|
<wartość hosta> | String | host Wartość określonego identyfikatora URI |
Przykład
W tym przykładzie znajduje wartość dla tego identyfikatora host
URI:
uriHost('https://www.localhost.com:8080')
I zwraca ten wynik: "www.localhost.com"
uriPath
path
Zwraca wartość identyfikatora URI (Uniform Resource Identifier).
uriPath('<uri>')
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<Uri> | Tak | String | Identyfikator URI, którego path wartość chcesz |
Wartość zwracana | Type | Opis |
---|---|---|
<path-value> | String | Wartość path określonego identyfikatora URI. Jeśli path nie ma wartości, zwróć znak "/". |
Przykład
W tym przykładzie znajduje wartość dla tego identyfikatora path
URI:
uriPath('https://www.contoso.com/catalog/shownew.htm?date=today')
I zwraca ten wynik: "/catalog/shownew.htm"
uriPathAndQuery
Zwraca wartości path
i query
dla identyfikatora URI (URI).
uriPathAndQuery('<uri>')
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<Uri> | Tak | String | Identyfikator URI, którego path wartości i query chcesz |
Wartość zwracana | Type | Opis |
---|---|---|
<path-query-value> | String | Wartości path i query dla określonego identyfikatora URI. Jeśli path nie określi wartości, zwróć znak "/". |
Przykład
W tym przykładzie znajdują się wartości i query
dla tego identyfikatora path
URI:
uriPathAndQuery('https://www.contoso.com/catalog/shownew.htm?date=today')
I zwraca ten wynik: "/catalog/shownew.htm?date=today"
uriPort
port
Zwraca wartość identyfikatora URI (Uniform Resource Identifier).
uriPort('<uri>')
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<Uri> | Tak | String | Identyfikator URI, którego port wartość chcesz |
Wartość zwracana | Type | Opis |
---|---|---|
<port-wartość> | Integer | Wartość port określonego identyfikatora URI. Jeśli port nie określi wartości, zwróć domyślny port dla protokołu. |
Przykład
Ten przykład zwraca wartość dla tego identyfikatora port
URI:
uriPort('https://www.localhost:8080')
I zwraca ten wynik: 8080
uriQuery
query
Zwraca wartość identyfikatora URI (Uniform Resource Identifier).
uriQuery('<uri>')
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<Uri> | Tak | String | Identyfikator URI, którego query wartość chcesz |
Wartość zwracana | Type | Opis |
---|---|---|
<query-value> | String | query Wartość określonego identyfikatora URI |
Przykład
Ten przykład zwraca wartość dla tego identyfikatora query
URI:
uriQuery('https://www.contoso.com/catalog/shownew.htm?date=today')
I zwraca ten wynik: "?date=today"
uriScheme
scheme
Zwraca wartość identyfikatora URI (Uniform Resource Identifier).
uriScheme('<uri>')
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<Uri> | Tak | String | Identyfikator URI, którego scheme wartość chcesz |
Wartość zwracana | Type | Opis |
---|---|---|
<scheme-value> | String | scheme Wartość określonego identyfikatora URI |
Przykład
Ten przykład zwraca wartość dla tego identyfikatora scheme
URI:
uriScheme('https://www.contoso.com/catalog/shownew.htm?date=today')
I zwraca ten wynik: "http"
utcNow
Zwróć bieżący znacznik czasu.
utcNow('<format>')
Opcjonalnie możesz określić inny format za pomocą parametru <formatu> .
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<format> | Nie. | String | Ciąg formatu liczbowego, który jest specyfikatorem pojedynczego formatu lub wzorcem formatu niestandardowego. Domyślny format znacznika czasu to "o" (rrrr-MM-ddTHH:mm:ss.fffffffK), który jest zgodny z normą ISO 8601 i zachowuje informacje o strefie czasowej. Jeśli format nie jest prawidłową wartością, zostanie wygenerowany błąd. |
Wartość zwracana | Type | Opis |
---|---|---|
<znacznik czasu bieżącego> | String | Bieżąca data i godzina |
Przykład 1
Załóżmy, że dzisiaj jest 15 kwietnia 2018 r. o 13:00:00. W tym przykładzie jest pobierany bieżący znacznik czasu:
utcNow()
I zwraca ten wynik: "2018-04-15T13:00:00.0000000Z"
Przykład 2
Załóżmy, że dzisiaj jest 15 kwietnia 2018 r. o 13:00:00. W tym przykładzie jest pobierana bieżąca sygnatura czasowa przy użyciu opcjonalnego formatu "D":
utcNow('D')
I zwraca ten wynik: "Sunday, April 15, 2018"
V
zmienne
Zwraca wartość określonej zmiennej.
variables('<variableName>')
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<nazwa_zmiennej> | Tak | String | Nazwa zmiennej, której wartość ma zostać utworzona |
Wartość zwracana | Type | Opis |
---|---|---|
<zmienna-wartość> | Dowolne | Wartość określonej zmiennej |
Przykład
Załóżmy, że bieżąca wartość zmiennej "numItems" to 20. W tym przykładzie jest pobierana wartość całkowita dla tej zmiennej:
variables('numItems')
I zwraca ten wynik: 20
Ś
przepływ pracy
Zwróć wszystkie szczegóły dotyczące samego przepływu pracy w czasie wykonywania.
workflow().<property>
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<właściwość> | Nie. | String | Nazwa właściwości przepływu pracy, której wartość jest odpowiednia Domyślnie obiekt przepływu pracy ma następujące właściwości: name , , type , id location , run i tags . - Wartość run właściwości jest obiektem JSON, który zawiera następujące właściwości: name , type i id . — Właściwość tags jest obiektem JSON zawierającym tagi skojarzone z aplikacją logiki w usłudze Azure Logic Apps lub przepływem w usłudze Power Automate oraz wartościami dla tych tagów. Aby uzyskać więcej informacji na temat tagów w zasobach platformy Azure, zobacz Tag zasobów, grupy zasobów i subskrypcje dla organizacji logicznej na platformie Azure. Uwaga: domyślnie aplikacja logiki nie ma tagów, ale przepływ usługi Power Automate ma flowDisplayName tagi i environmentName . |
Przykład 1
W tym przykładzie zwracana jest nazwa bieżącego przebiegu przepływu pracy:
workflow().run.name
Przykład 2
Jeśli używasz usługi Power Automate, możesz utworzyć @workflow()
wyrażenie, które używa właściwości wyjściowej tags
do pobierania wartości z właściwości lub environmentName
przepływuflowDisplayName
.
Możesz na przykład wysyłać niestandardowe powiadomienia e-mail z samego przepływu, które łączą się z przepływem. Te powiadomienia mogą zawierać link HTML zawierający nazwę wyświetlaną przepływu w tytule wiadomości e-mail i następującą składnię:
<a href=https://flow.microsoft.com/manage/environments/@{workflow()['tags']['environmentName']}/flows/@{workflow()['name']}/details>Open flow @{workflow()['tags']['flowDisplayName']}</a>
X
xml
Zwróć wersję XML dla ciągu zawierającego obiekt JSON.
xml('<value>')
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<wartość> | Tak | String | Ciąg z obiektem JSON do konwersji Obiekt JSON musi mieć tylko jedną właściwość główną, która nie może być tablicą. Użyj znaku ukośnika odwrotnego (\) jako znaku ucieczki dla podwójnego cudzysłowu ("). |
Wartość zwracana | Type | Opis |
---|---|---|
<wersja xml> | Objekt | Zakodowany kod XML dla określonego ciągu lub obiektu JSON |
Przykład 1
W tym przykładzie ciąg jest konwertowany na kod XML:
xml('<name>Sophia Owen</name>')
I zwraca ten wynik XML:
<name>Sophia Owen</name>
Przykład 2
W tym przykładzie tworzona jest wersja XML dla tego ciągu, która zawiera obiekt JSON:
xml(json('{ "name": "Sophia Owen" }'))
I zwraca ten wynik XML:
<name>Sophia Owen</name>
Przykład 3
Załóżmy, że masz ten obiekt JSON:
{
"person": {
"name": "Sophia Owen",
"city": "Seattle"
}
}
W tym przykładzie tworzony jest kod XML dla ciągu zawierającego ten obiekt JSON:
xml(json('{"person": {"name": "Sophia Owen", "city": "Seattle"}}'))
I zwraca ten wynik XML:
<person>
<name>Sophia Owen</name>
<city>Seattle</city>
<person>
xpath
Sprawdź kod XML dla węzłów lub wartości, które są zgodne z wyrażeniem XPath (XML Path Language) i zwraca pasujące węzły lub wartości. Wyrażenie XPath lub po prostu "XPath" ułatwia nawigowanie po strukturze dokumentu XML, dzięki czemu można wybrać węzły lub wartości obliczeniowe w zawartości XML.
Uwaga
W przypadku aplikacji logiki Consumption i Standard wszystkie wyrażenia funkcji używają biblioteki .NET XPath. Wyrażenia XPath są zgodne z podstawową biblioteką .NET i obsługują tylko wyrażenie obsługiwane przez podstawową bibliotekę .NET.
xpath('<xml>', '<xpath>')
Parametr | Wymagania | Type | Opis |
---|---|---|---|
<xml> | Tak | Dowolne | Ciąg XML do wyszukiwania węzłów lub wartości pasujących do wartości wyrażenia XPath |
<xpath> | Tak | Dowolne | Wyrażenie XPath używane do znajdowania pasujących węzłów XML lub wartości |
Wartość zwracana | Type | Opis |
---|---|---|
<xml-node> | XML | Węzeł XML, gdy tylko jeden węzeł jest zgodny z określonym wyrażeniem XPath |
<wartość> | Dowolne | Wartość z węzła XML, gdy tylko jedna wartość jest zgodna z określonym wyrażeniem XPath |
[<xml-node1>, <xml-node2>, ...] -or- [<value1>, <value2>, ...] | Tablica | Tablica z węzłami XML lub wartościami zgodnymi z określonym wyrażeniem XPath |
Przykład 1
Załóżmy, że masz ten 'items'
ciąg XML:
<?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>
Ten przykład przekazuje wyrażenie XPath, '/produce/item/name/text()'
, aby znaleźć węzły pasujące <name></name>
do węzła w 'items'
ciągu XML i zwraca tablicę z tymi wartościami węzłów:
xpath(xml(parameters('items')), '/produce/item/name/text()')
W przykładzie użyto również funkcji parameters(), aby pobrać ciąg XML z 'items'
i przekonwertować ciąg na format XML przy użyciu funkcji xml().
Oto tablica wyników wypełniona wartościami węzłów, które pasują do <name></name>
elementu :
[ Gala, Honeycrisp ]
Przykład 2
W przykładzie 1 ten przykład przekazuje wyrażenie XPath , '/produce/item/name[1]'
aby znaleźć pierwszy name
element, który jest elementem podrzędnym item
elementu.
xpath(xml(parameters('items')), '/produce/item/name[1]')
Oto wynik: Gala
Przykład 3
W przykładzie 1 ten przykład przekazuje wyrażenie XPath, '/produce/item/name[last()]'
, aby znaleźć ostatni name
element, który jest elementem podrzędnym item
elementu.
xpath(xml(parameters('items')), '/produce/item/name[last()]')
Oto wynik: Honeycrisp
Przykład 4
W tym przykładzie załóżmy, że ciąg items
XML zawiera również atrybuty i expired='true'
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>
Ten przykład przekazuje wyrażenie XPath , '//name[@expired]'
aby znaleźć wszystkie name
elementy, które mają expired
atrybut:
xpath(xml(parameters('items')), '//name[@expired]')
Oto wynik: [ Gala, Honeycrisp ]
Przykład 5
W tym przykładzie załóżmy, że ciąg items
XML zawiera tylko ten atrybut: 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>
Ten przykład przekazuje wyrażenie XPath, '//name[@expired = 'true']'
, aby znaleźć wszystkie name
elementy, które mają atrybut , expired = 'true'
:
xpath(xml(parameters('items')), '//name[@expired = 'true']')
Oto wynik: [ Gala ]
Przykład 6
W tym przykładzie załóżmy, że ciąg items
XML zawiera również następujące atrybuty:
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>
Ten przykład przekazuje wyrażenie XPath, '//name[@price>35]'
, aby znaleźć wszystkie name
elementy, które mają price > 35
:
xpath(xml(parameters('items')), '//name[@price>35]')
Oto wynik: Honeycrisp
Przykład 7
W tym przykładzie załóżmy, że ciąg items
XML jest taki sam jak w przykładzie 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>
W tym przykładzie znajdują węzły pasujące do węzła <count></count>
i dodaje te wartości węzła sum()
do funkcji :
xpath(xml(parameters('items')), 'sum(/produce/item/count)')
Oto wynik: 30
Przykład 8
W tym przykładzie załóżmy, że masz ten ciąg XML, który zawiera przestrzeń nazw dokumentów XML, xmlns="https://contoso.com"
:
<?xml version="1.0"?><file xmlns="https://contoso.com"><location>Paris</location></file>
Te wyrażenia używają wyrażenia /*[name()="file"]/*[name()="location"]
XPath lub /*[local-name()="file" and namespace-uri()="https://contoso.com"]/*[local-name()="location"]
, aby znaleźć węzły zgodne z węzłem <location></location>
. W poniższych przykładach pokazano składnię używaną w projektancie lub w edytorze wyrażeń:
xpath(xml(body('Http')), '/*[name()="file"]/*[name()="location"]')
xpath(xml(body('Http')), '/*[local-name()="file" and namespace-uri()="https://contoso.com"]/*[local-name()="location"]')
Oto węzeł wyników zgodny z węzłem <location></location>
:
<location xmlns="https://contoso.com">Paris</location>
Ważne
Jeśli pracujesz w widoku kodu, należy użyć podwójnego cudzysłowu (") przy użyciu znaku ukośnika odwrotnego (\). Na przykład należy użyć znaków ucieczki podczas serializacji wyrażenia jako ciągu JSON. Jeśli jednak pracujesz w projektancie lub edytorze wyrażeń, nie musisz unikać podwójnego cudzysłowu, ponieważ znak ukośnika odwrotnego jest dodawany automatycznie do podstawowej definicji, na przykład:
Widok kodu:
xpath(xml(body('Http')), '/*[name()=\"file\"]/*[name()=\"location\"]')
Edytor wyrażeń:
xpath(xml(body('Http')), '/*[name()="file"]/*[name()="location"]')
Przykład 9
W przykładzie 8 w tym przykładzie użyto wyrażenia XPath , 'string(/*[name()="file"]/*[name()="location"])'
aby znaleźć wartość w węźle <location></location>
:
xpath(xml(body('Http')), 'string(/*[name()="file"]/*[name()="location"])')
Oto wynik: Paris
Następne kroki
Dowiedz się więcej o języku definicji przepływu pracy