Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Podczas konfigurowania synchronizacji w chmurze jednym z typów mapowań atrybutów, które można określić, jest mapowanie wyrażeń.
Mapowanie wyrażeń umożliwia dostosowanie atrybutów przy użyciu wyrażenia przypominającego skrypt. Dzięki temu można przekształcić dane lokalne w nową lub inną wartość. Na przykład możesz połączyć dwa atrybuty w jeden atrybut, ponieważ ten pojedynczy atrybut jest używany przez jedną z aplikacji w chmurze.
Poniższy dokument zawiera wyrażenia podobne do skryptów, które są używane do przekształcania danych. Jest to tylko część procesu. Następnie należy użyć tego wyrażenia i umieścić je w żądaniu internetowym do dzierżawy. Aby uzyskać więcej informacji na ten temat, zobacz Transformations
Omówienie składni
Składnia wyrażeń mapowań atrybutów przypomina funkcje Języka Visual Basic for Applications (VBA).
Całe wyrażenie musi być zdefiniowane w kategoriach funkcji, które składają się z nazwy, po której następują argumenty w nawiasach:
FunctionName(<<argument 1>>,<<argument N>>)Funkcje można zagnieżdżać w sobie. Na przykład:
FunctionOne(FunctionTwo(<<argument1>>))Do funkcji można przekazać trzy różne typy argumentów:
- Atrybuty, które muszą być ujęte w nawiasy kwadratowe. Na przykład: [attributeName]
- Stałe ciągów, które muszą być ujęte w cudzysłowy. Na przykład: "Stany Zjednoczone"
- Inne funkcje. Na przykład: FunctionOne(
<<argument1>>, FunctionTwo(<<argument2>>))
W przypadku stałych ciągów, jeśli potrzebujesz ukośnika odwrotnego ( \ ) lub cudzysłowu ( " ) w ciągu, musi on zostać usunięty z symbolem ukośnika odwrotnego ( \ ). Na przykład: "Nazwa firmy: \"Contoso\""
Lista funkcji
| Lista funkcji | Opis |
|---|---|
| dołączania | Pobiera wartość ciągu źródłowego i dołącza sufiks na końcu. |
| BitAnd | Funkcja BitAnd ustawia określone bity na wartości. |
| CBool | Funkcja CBool zwraca wartość logiczną na podstawie obliczonego wyrażenia |
| KonwertujFromBase64 | Funkcja ConvertFromBase64 konwertuje określoną wartość zakodowaną w formacie base64 na zwykły ciąg. |
| ConvertToBase64 | Funkcja ConvertToBase64 konwertuje ciąg na ciąg Base64 Unicode. |
| ConvertToUTF8Hex | Funkcja ConvertToUTF8Hex konwertuje ciąg na wartość zakodowaną algorytmem szesnastkowym UTF8. |
| liczba | Funkcja Count zwraca liczbę elementów w atrybucie wielowartościowym |
| Cstr | Funkcja CStr konwertuje na typ danych ciągu. |
| DateFromNum | Funkcja DateFromNum konwertuje wartość w formacie daty usługi AD na typ DateTime. |
| DnComponent | Funkcja DNComponent zwraca wartość określonego składnika DN przechodzącego od lewej. |
| błędów | Funkcja Error służy do zwracania niestandardowego błędu. |
| FormatDateTime | Pobiera ciąg daty z jednego formatu i konwertuje go na inny format. |
| identyfikator GUID | Identyfikator GUID funkcji generuje nowy losowy identyfikator GUID. |
| IIF | Funkcja IIF zwraca jeden z zestawów możliwych wartości na podstawie określonego warunku. |
| Instr | Funkcja InStr znajduje pierwsze wystąpienie podciągów w ciągu. |
| IsNull | Jeśli wyrażenie zwróci wartość Null, funkcja IsNull zwraca wartość true. |
| IsNullOrEmpty | Jeśli wyrażenie ma wartość null lub pusty ciąg, funkcja IsNullOrEmpty zwraca wartość true. |
| IsPresent | Jeśli wyrażenie oblicza ciąg, który nie ma wartości Null i nie jest pusty, funkcja IsPresent zwraca wartość true. |
| IsString | Jeśli wyrażenie można ocenić na typ ciągu, funkcja IsString zwraca wartość True. |
| element | Funkcja Item zwraca jeden element z wielowartego ciągu/atrybutu. |
| Dołączyć | Funkcja Join() jest podobna do Append(), z tą różnicą, że może łączyć wiele wartości źródłowych ciągów w jeden ciąg, a każda wartość zostanie oddzielona separatorem ciągiem. |
| z lewej | Funkcja Left zwraca określoną liczbę znaków z lewej strony ciągu. |
| w połowie | Zwraca podciąg wartości źródłowej. Podciąg to ciąg zawierający tylko niektóre znaki z ciągu źródłowego. |
| NormalizeDiacritics | Wymaga jednego argumentu ciągu. Zwraca ciąg, ale z dowolnymi znakami diakrytycznymi zastąpionymi równoważnymi znakami niekrytycznymi. |
| nie | Przerzuca wartość logiczną źródła . Jeśli wartość źródła to "true", zwraca wartość "False". W przeciwnym razie zwraca wartość "true". |
| RemoveDuplicates | Funkcja RemoveDuplicates przyjmuje ciąg wielowartościowy i upewnij się, że każda wartość jest unikatowa. |
| Zamień | Zamienia wartości w ciągu. |
| Wybierz pozycjęUniqueValue | Wymaga co najmniej dwóch argumentów, które są unikatowymi regułami generowania wartości zdefiniowanymi przy użyciu wyrażeń. Funkcja ocenia każdą regułę, a następnie sprawdza wartość wygenerowaną pod kątem unikatowości w docelowej aplikacji/katalogu. |
| SingleAppRoleAssignment | Zwraca pojedynczy element appRoleAssignment z listy wszystkich elementów appRoleAssignments przypisanych do użytkownika dla danej aplikacji. |
| split | Dzieli ciąg na tablicę wielowartościową przy użyciu określonego znaku ogranicznika. |
| StringFromSID | Funkcja StringFromSid konwertuje tablicę bajtów zawierającą identyfikator zabezpieczeń na ciąg. |
| StripSpaces | Usuwa wszystkie znaki spacji (" ") z ciągu źródłowego. |
| przełącznika | Gdy wartość źródłowej jest zgodna z klucza, zwraca wartość dla tego klucza . |
| ToLower | Pobiera wartość ciągu źródła i konwertuje ją na małe litery przy użyciu określonych reguł kultury. |
| ToUpper | Pobiera wartość ciągu i konwertuje ją na wielkie litery przy użyciu określonych reguł kultury. |
| trim | Funkcja Trim usuwa wiodące i końcowe białe spacje z ciągu. |
| word | Funkcja programu Word zwraca wyraz zawarty w ciągu na podstawie parametrów opisujących ograniczniki do użycia i liczbę wyrazów do zwrócenia. |
Dołączyć
funkcja :
Append(źródło, sufiks)
opis :
Pobiera wartość ciągu źródłowego i dołącza sufiks na końcu.
parametry :
| Nazwa | Wymagane/powtarzane | Typ | Notatki |
|---|---|---|---|
| źródłowej | Wymagane | Struna | Zazwyczaj nazwa atrybutu z obiektu źródłowego. |
| sufiks | Wymagane | Struna | Ciąg, który chcesz dołączyć na końcu wartości źródłowej. |
BitAnd
opis :
Funkcja BitAnd ustawia określone bity na wartości.
składnia :
num BitAnd(num value1, num value2)
- value1, value2: wartości liczbowe, które powinny mieć wartość AND'ed razem
uwagi :
Ta funkcja konwertuje oba parametry na reprezentację binarną i ustawia bit na:
- 0 — jeśli jeden lub oba odpowiadające bity w wartości 1 i wartość2 są równe 0
- 1 — jeśli oba odpowiednie bity mają wartość 1.
Innymi słowy, zwraca wartość 0 we wszystkich przypadkach, z wyjątkiem sytuacji, gdy odpowiadające im bity obu parametrów to 1.
przykład :
BitAnd(&HF, &HF7)
Zwraca wartość 7, ponieważ wartość szesnastkowa "F" i "F7".
CBool
opis :
Funkcja CBool zwraca wartość logiczną na podstawie obliczonego wyrażenia
składnia :
bool CBool(exp Expression)
uwagi :
Jeśli wyrażenie zwróci wartość inną niż zero, funkcja CBool zwraca wartość True, a następnie zwraca wartość False.
przykład :
CBool([attrib1] = [attrib2])
Zwraca wartość True, jeśli oba atrybuty mają tę samą wartość.
KonwertujFromBase64
opis :
Funkcja ConvertFromBase64 konwertuje określoną wartość zakodowaną w formacie base64 na zwykły ciąg.
składnia :
str ConvertFromBase64(str source) — zakłada kodowanie Unicode
str ConvertFromBase64(str source, enum Encoding)
- źródło: Ciąg zakodowany w formacie Base64
- Kodowanie: Unicode, ASCII, UTF8
Przykład
ConvertFromBase64("SABlAGwAbABvACAAdwBvAHIAbABkACEA")
ConvertFromBase64("SGVsbG8gd29ybGQh", UTF8)
Oba przykłady zwracają wartość "Hello world!"
ConvertToBase64
opis :
Funkcja ConvertToBase64 konwertuje ciąg na ciąg Base64 Unicode.
Konwertuje wartość tablicy liczb całkowitych na równoważną reprezentację ciągu zakodowaną przy użyciu cyfr base-64.
składnia :
str ConvertToBase64(str source)
przykład :
ConvertToBase64("Hello world!")
Zwraca wartość "SABlAGwAbABvACAAdwBvAHIAbABkACEA"
ConvertToUTF8Hex
opis :
Funkcja ConvertToUTF8Hex konwertuje ciąg na wartość zakodowaną algorytmem szesnastkowym UTF8.
składnia :
str ConvertToUTF8Hex(str source)
uwagi :
Format wyjściowy tej funkcji jest używany przez firmę Microsoft Entra ID jako format atrybutu DN.
przykład :
ConvertToUTF8Hex("Hello world!")
Zwraca wartość 48656C6C6F20776F726C6421
Hrabia
opis :
Funkcja Count zwraca liczbę elementów w atrybucie wielowartościowym
składnia :
num Count(mvstr attribute)
CStr
opis :
Funkcja CStr konwertuje na typ danych ciągu.
składnia :
str CStr(num value)
str CStr(ref value)
str CStr(bool value)
- wartość: może być wartością liczbową, atrybutem odwołania lub wartością logiczną.
przykład :
CStr([dn])
Może zwrócić wartość "cn=Joe,dc=contoso,dc=com"
DateFromNum
opis :
Funkcja DateFromNum konwertuje wartość w formacie daty usługi AD na typ DateTime.
składnia :
dt DateFromNum(num value)
przykład :
DateFromNum([lastLogonTimestamp])
DateFromNum(129699324000000000)
Zwraca wartość typu DateTime reprezentującą 2012-01-01 23:00:00
DnComponent
opis :
Funkcja DNComponent zwraca wartość określonego składnika DN przechodzącego od lewej.
składnia :
str DNComponent(ref dn, num ComponentNumber)
- dn: atrybut odwołania do interpretacji
- ComponentNumber: składnik w dn, aby zwrócić
przykład :
DNComponent(CRef([dn]),1)
Jeśli dn ma wartość "cn=Joe,ou=...", zwraca wartość Joe
Błąd
opis :
Funkcja Error służy do zwracania niestandardowego błędu.
składnia :
void Error(str ErrorMessage)
przykład :
IIF(IsPresent([accountName]),[accountName],Error("AccountName is required"))
Jeśli atrybut accountName nie jest obecny, wyrzuć błąd na obiekcie.
SformatujDatęCzas
funkcja :
FormatDateTime(source, inputFormat, outputFormat)
opis :
Pobiera ciąg daty z jednego formatu i konwertuje go na inny format.
parametry :
| Nazwa | Wymagane/powtarzane | Typ | Notatki |
|---|---|---|---|
| źródłowej | Wymagane | Struna | Zazwyczaj nazwa atrybutu z obiektu źródłowego. |
| inputFormat | Wymagane | Struna | Oczekiwany format wartości źródłowej. Aby uzyskać obsługiwane formaty, zobacz /dotnet/standard/base-types/custom-date-and-time-format-strings. |
| outputFormat | Wymagane | Struna | Format daty wyjściowej. |
Przewodnik
opis :
Identyfikator GUID funkcji generuje nowy losowy identyfikator GUID
składnia :
str Guid()
IIF
opis :
Funkcja IIF zwraca jeden z zestawów możliwych wartości na podstawie określonego warunku.
składnia :
var IIF(exp condition, var valueIfTrue, var valueIfFalse)
- warunek: dowolna wartość lub wyrażenie, które można ocenić na wartość true lub false.
- valueIfTrue: jeśli warunek ma wartość true, zwracana wartość.
- valueIfFalse: jeśli warunek ma wartość false, zwracana wartość.
przykład :
IIF([employeeType]="Intern","t-" & [alias],[alias])
Jeśli użytkownik jest stażystkownikiem, zwraca alias użytkownika z ciągiem "t-" dodanym na początku, inne zwraca alias użytkownika w taki sposób, jak to jest.
Instr
opis :
Funkcja InStr znajduje pierwsze wystąpienie podciągów w ciągu
składnia :
num InStr(str stringcheck, str stringmatch)
num InStr(str stringcheck, str stringmatch, num start)
num InStr(str stringcheck, str stringmatch, num start, enum compare)
- stringcheck: ciąg do przeszukania
- stringmatch: ciąg do znalezienia
- start: pozycja początkowa, aby znaleźć podciąg
- compare: vbTextCompare lub vbBinaryCompare
uwagi :
Zwraca pozycję, w której znaleziono podciąg lub 0, jeśli nie zostanie znaleziony.
przykład :
InStr("The quick brown fox","quick")
Ocenia wartość 5
InStr("repEated","e",3,vbBinaryCompare)
Ocenia wartość 7
JestNull
opis :
Jeśli wyrażenie zwróci wartość Null, funkcja IsNull zwraca wartość true.
składnia :
bool IsNull(var Expression)
uwagi :
W przypadku atrybutu wartość Null jest wyrażona przez brak atrybutu.
przykład :
IsNull([displayName])
Zwraca wartość True, jeśli atrybut nie jest obecny w cs lub MV.
IsNullOrEmpty
opis :
Jeśli wyrażenie ma wartość null lub pusty ciąg, funkcja IsNullOrEmpty zwraca wartość true.
składnia :
bool IsNullOrEmpty(var Expression)
uwagi :
W przypadku atrybutu ta wartość ma wartość True, jeśli atrybut jest nieobecny lub jest obecny, ale jest pustym ciągiem.
Odwrotność tej funkcji nosi nazwę IsPresent.
przykład :
IsNullOrEmpty([displayName])
Zwraca wartość True, jeśli atrybut nie jest obecny lub jest pustym ciągiem w cs lub MV.
IsPresent
opis :
Jeśli wyrażenie oblicza ciąg, który nie ma wartości Null i nie jest pusty, funkcja IsPresent zwraca wartość true.
składnia :
bool IsPresent(var expression)
uwagi :
Odwrotność tej funkcji nosi nazwę IsNullOrEmpty.
przykład :
Switch(IsPresent([directManager]),[directManager], IsPresent([skiplevelManager]),[skiplevelManager], IsPresent([director]),[director])
Przedmiot
opis :
Funkcja Item zwraca jeden element z wielowartego ciągu/atrybutu.
składnia :
var Item(mvstr attribute, num index)
- atrybut: atrybut wielowarty
- index: indeks do elementu w ciągu wielowartym.
uwagi :
Funkcja Item jest przydatna wraz z funkcją Contains, ponieważ ta ostatnia funkcja zwraca indeks do elementu w atrybucie wielowartym.
Zgłasza błąd, jeśli indeks jest poza granicami.
przykład :
Mid(Item([proxyAddresses],Contains([proxyAddresses], "SMTP:")),6)
Zwraca podstawowy adres e-mail.
IsString
opis :
Jeśli wyrażenie można ocenić na typ ciągu, funkcja IsString zwraca wartość True.
składnia :
bool IsString(var expression)
uwagi :
Służy do określania, czy wyrażenie CStr() może zakończyć się powodzeniem.
Dołączyć
funkcja :
Join(separator, source1, source2, ...)
opis :
Funkcja Join() jest podobna do Append(), z tą różnicą, że może łączyć wiele wartości źródłowych ciągów w jeden ciąg, a każda wartość zostanie oddzielona separatorem ciągiem.
Jeśli jedna z wartości źródłowych jest atrybutem wielowartościowym, każda wartość w tym atrybucie zostanie połączona, oddzielona wartością separatora.
parametry :
| Nazwa | Wymagane/powtarzane | Typ | Notatki |
|---|---|---|---|
| separatora | Wymagane | Struna | Ciąg używany do oddzielania wartości źródłowych, gdy są one łączone w jeden ciąg. Może być "", jeśli separator nie jest wymagany. |
| źródło1 ... sourceN | Wymagana, zmienna liczba razy | Struna | Wartości ciągów, które mają być połączone ze sobą. |
Lewy
opis :
Funkcja Left zwraca określoną liczbę znaków z lewej strony ciągu.
składnia :
str Left(str string, num NumChars)
- string: ciąg, z których mają być zwracane znaki
- NumChars: liczba identyfikująca liczbę znaków, które mają być zwracane od początku (po lewej) ciągu
uwagi :
Ciąg zawierający pierwsze znaki numChars w ciągu:
- Jeśli argument numChars = 0, zwraca pusty ciąg.
- Jeśli argument numChars < 0, zwraca ciąg wejściowy.
- Jeśli ciąg ma wartość null, zwróć pusty ciąg.
Jeśli ciąg zawiera mniej znaków niż liczba określona w numChars, zwracany jest ciąg identyczny z ciągiem (czyli zawierającym wszystkie znaki w parametrze 1).
przykład :
Left("John Doe", 3)
Zwraca wartość Joh.
Średni
funkcja :
Mid(źródło, początek, długość)
opis :
Zwraca podciąg wartości źródłowej. Podciąg to ciąg zawierający tylko niektóre znaki z ciągu źródłowego.
parametry :
| Nazwa | Wymagane/powtarzane | Typ | Notatki |
|---|---|---|---|
| źródłowej | Wymagane | Struna | Zazwyczaj nazwa atrybutu. |
| Wymagane | liczba całkowita | Indeks w ciągu źródłowym , w którym powinno zostać uruchomione podciąg. Pierwszy znak w ciągu będzie miał indeks 1, drugi znak będzie miał indeks 2 itd. | |
| długości | Wymagane | liczba całkowita | Długość podciągów. Jeśli długość kończy się poza ciągiem źródłowym, funkcja zwróci podciąg z rozpoczęcie indeksu do końca ciągu źródłowego. |
NormalizeDiacritics
funkcja :
NormalizeDiacritics (źródło)
opis :
Wymaga jednego argumentu ciągu. Zwraca ciąg, ale z dowolnymi znakami diakrytycznymi zastąpionymi równoważnymi znakami niekrytycznymi. Zazwyczaj służy do konwertowania nazwisk i nazwisk zawierających znaki diakrytyczne (znaki wyróżniające) na wartości prawne, które mogą być używane w różnych identyfikatorach użytkowników, takich jak nazwy główne użytkowników, nazwy kont SAM i adresy e-mail.
parametry :
| Nazwa | Wymagane/powtarzane | Typ | Notatki |
|---|---|---|---|
| źródłowej | Wymagane | Struna | Zazwyczaj imię lub nazwisko atrybutu. |
Nie
funkcja :
Not(source)
opis :
Przerzuca wartość logiczną źródła . Jeśli wartość źródła to "true", zwraca wartość "False". W przeciwnym razie zwraca wartość "true".
parametry :
| Nazwa | Wymagane/powtarzane | Typ | Notatki |
|---|---|---|---|
| źródłowej | Wymagane | Ciąg logiczny | Oczekiwane wartości źródłowe to "True" lub "False". |
RemoveDuplicates
opis :
Funkcja RemoveDuplicates przyjmuje ciąg wielowartościowy i upewnij się, że każda wartość jest unikatowa.
składnia :
mvstr RemoveDuplicates(mvstr attribute)
przykład :
RemoveDuplicates([proxyAddresses])
Zwraca atrybut sanitized proxyAddress, w którym wszystkie zduplikowane wartości zostały usunięte.
Zastąpić
funkcja :
Replace(source, oldValue, regexPattern, regexGroupName, replaceValue, replaceAttributeName, template)
opis :
Zamienia wartości w ciągu. Działa inaczej w zależności od podanych parametrów:
Gdy są udostępniane oldValue i replacementValue:
- Zastępuje wszystkie wystąpienia oldValue w źródłowymreplaceValue
Gdy oldValue i szablon są dostępne:
- Zamienia wszystkie wystąpienia oldValue w szablonie wartością źródłową
Gdy regexPattern i wartościami zastępczymi są dostępne:
- Funkcja stosuje regexPattern do ciągu źródłowego i można użyć nazw grup wyrażeń regularnych, aby skonstruować ciąg replacementValue
Gdy regexPattern, regexGroupNamesą udostępniane replacementValue:
- Funkcja stosuje regexPattern do ciągu źródłowego i zastępuje wszystkie wartości pasujące regexGroupNamereplaceValue
Gdy regexPattern, regexGroupName, zastępczyAttributeName są dostępne:
- Jeśli źródłowy nie ma wartości, zwracana jest źródłowa
- Jeśli źródłowy ma wartość, funkcja stosuje regexPattern do ciągu źródłowego i zastępuje wszystkie wartości pasujące regexGroupName wartością skojarzona z replaceAttributeName
parametry :
| Nazwa | Wymagane/powtarzane | Typ | Notatki |
|---|---|---|---|
| źródłowej | Wymagane | Struna | Zazwyczaj nazwa atrybutu z obiektu źródłowego. |
| oldValue | Fakultatywny | Struna | Wartość do zastąpienia w źródłowych lub szablonie . |
| regexPattern | Fakultatywny | Struna | Wzorzec wyrażeń regularnych dla wartości do zastąpienia w źródłowym. Lub gdy jest używana replacementPropertyName, wzorzec wyodrębnia wartość z replacementPropertyName. |
| regexGroupName | Fakultatywny | Struna | Nazwa grupy wewnątrz regexPattern. Tylko wtedy, gdy jest używana replacementPropertyName, wyodrębnimy wartość tej grupy jako replacementValue z replacementPropertyName. |
| replacementValue | Fakultatywny | Struna | Nowa wartość, która ma zastąpić stary element. |
| replacementAttributeName | Fakultatywny | Struna | Nazwa atrybutu, który ma być używany dla wartości zastępczej |
| szablonu | Fakultatywny | Struna | Gdy zostanie podana wartość szablonu, wyszukamy oldValue wewnątrz szablonu i zastąpimy ją wartością źródła. |
Wybierz pozycjęUniqueValue
funkcja :
SelectUniqueValue(uniqueValueRule1, uniqueValueRule2, uniqueValueRule3, ...)
opis :
Wymaga co najmniej dwóch argumentów, które są unikatowymi regułami generowania wartości zdefiniowanymi przy użyciu wyrażeń. Funkcja ocenia każdą regułę, a następnie sprawdza wartość wygenerowaną pod kątem unikatowości w docelowej aplikacji/katalogu. Pierwsza znaleziona unikatowa wartość będzie zwracana. Jeśli wszystkie wartości już istnieją w obiekcie docelowym, wpis zostanie przekazany, a przyczyna zostanie zarejestrowana w dziennikach inspekcji. Nie ma górnej granicy z liczbą argumentów, które można podać.
Nuta
- Jest to funkcja najwyższego poziomu, której nie można zagnieżdżać.
- Tej funkcji nie można zastosować do atrybutów, które mają pasujący pierwszeństwo.
- Ta funkcja jest przeznaczona tylko do tworzenia pozycji. W przypadku używania go z atrybutem ustaw właściwość zastosuj mapowanie, aby tylko podczas tworzenia obiektu.
- Ta funkcja jest obecnie obsługiwana tylko w przypadku "Workday i SuccessFactors do aprowizacji użytkowników usługi Active Directory". Nie można jej używać z innymi aplikacjami aprowizacji.
parametry :
| Nazwa | Wymagane/powtarzane | Typ | Notatki |
|---|---|---|---|
| uniqueValueRule1 ... uniqueValueRuleN | Co najmniej 2 są wymagane, bez górnej granicy | Struna | Lista reguł generowania unikatowych wartości do oceny. |
SingleAppRoleAssignment
funkcja :
SingleAppRoleAssignment([appRoleAssignments])
opis :
Zwraca pojedynczy element appRoleAssignment z listy wszystkich elementów appRoleAssignments przypisanych do użytkownika dla danej aplikacji. Ta funkcja jest wymagana do przekonwertowania obiektu appRoleAssignments na pojedynczy ciąg nazwy roli. Należy pamiętać, że najlepszym rozwiązaniem jest zapewnienie, że tylko jeden element appRoleAssignment jest przypisany do jednego użytkownika jednocześnie, a jeśli do zwracanego ciągu roli przypisano wiele ról, może nie być przewidywalne.
parametry :
| Nazwa | Wymagane/powtarzane | Typ | Notatki |
|---|---|---|---|
| [appRoleAssignments] | Wymagane | Struna | [appRoleAssignments] obiekt. |
Rozszczepiać
funkcja :
Split(source, ogranicznik)
opis :
Dzieli ciąg na tablicę wielowartościową przy użyciu określonego znaku ogranicznika.
parametry :
| Nazwa | Wymagane/powtarzane | Typ | Notatki |
|---|---|---|---|
| źródłowej | Wymagane | Struna | wartość źródłowa do zaktualizowania. |
| ogranicznika | Wymagane | Struna | Określa znak, który będzie używany do dzielenia ciągu (na przykład: ",") |
StringFromSid
opis :
Funkcja StringFromSid konwertuje tablicę bajtów zawierającą identyfikator zabezpieczeń na ciąg.
składnia :
str StringFromSid(bin ObjectSID)
Przestrzenie paskowe
funkcja :
StripSpaces(źródło)
opis :
Usuwa wszystkie znaki spacji (" ") z ciągu źródłowego.
parametry :
| Nazwa | Wymagane/powtarzane | Typ | Notatki |
|---|---|---|---|
| źródłowej | Wymagane | Struna | wartość źródłowa do zaktualizowania. |
Przełącznik
funkcja :
Switch(source, defaultValue, key1, value1, key2, value2, ...)
opis :
Gdy wartość źródłowej jest zgodna z klucza, zwraca wartość dla tego klucza . Jeśli wartość źródłowej nie jest zgodna z żadnymi kluczami, zwraca wartość defaultValue.
klucz i wartość parametrów muszą zawsze znajdować się w parach. Funkcja zawsze oczekuje parzystej liczby parametrów.
parametry :
| Nazwa | Wymagane/powtarzane | Typ | Notatki |
|---|---|---|---|
| źródłowej | Wymagane | Struna | wartość źródłowa do sprawdzenia. |
| defaultValue | Fakultatywny | Struna | Wartość domyślna, która ma być używana, gdy źródło nie jest zgodne z żadnymi kluczami. Może być pusty ciąg (""). |
| klucza | Wymagane | Struna | Klucz, aby porównać wartość źródła z. |
| wartości | Wymagane | Struna | Wartość zastępcza źródła pasującą do klucza. |
ToLower
funkcja :
ToLower(źródło, kultura)
opis :
Pobiera wartość ciągu źródła i konwertuje ją na małe litery przy użyciu określonych reguł kultury. Jeśli nie określono informacji o kulturze , będzie ona używać niezmiennej kultury.
parametry :
| Nazwa | Wymagane/powtarzane | Typ | Notatki |
|---|---|---|---|
| źródłowej | Wymagane | Struna | Zazwyczaj nazwa atrybutu z obiektu źródłowego |
| kultury | Fakultatywny | Struna | Format nazwy kultury opartej na specyfikacji RFC 4646 to languagecode2-country/regioncode2, gdzie languagecode2 to dwuliterowy kod języka, a kraj/regioncode2 to dwuliterowy kod subkultury. Przykłady obejmują ja-JP dla języka japońskiego (Japonia) i en-US dla języka angielskiego (Stany Zjednoczone). W przypadkach, gdy kod języka dwuliterowego jest niedostępny, jest używany trzyliterowy kod pochodzący z iso 639-2. |
Funkcja ToUpper
funkcja :
ToUpper(źródło, kultura)
opis :
Pobiera wartość ciągu i konwertuje ją na wielkie litery przy użyciu określonych reguł kultury. Jeśli nie określono informacji o kulturze , będzie ona używać niezmiennej kultury.
parametry :
| Nazwa | Wymagane/powtarzane | Typ | Notatki |
|---|---|---|---|
| źródłowej | Wymagane | Struna | Zazwyczaj nazwa atrybutu z obiektu źródłowego. |
| kultury | Fakultatywny | Struna | Format nazwy kultury opartej na specyfikacji RFC 4646 to languagecode2-country/regioncode2, gdzie languagecode2 to dwuliterowy kod języka, a kraj/regioncode2 to dwuliterowy kod subkultury. Przykłady obejmują ja-JP dla języka japońskiego (Japonia) i en-US dla języka angielskiego (Stany Zjednoczone). W przypadkach, gdy kod języka dwuliterowego jest niedostępny, jest używany trzyliterowy kod pochodzący z iso 639-2. |
Przycinać
opis :
Funkcja Trim usuwa wiodące i końcowe białe spacje z ciągu.
składnia :
str Trim(str value)
przykład :
Trim(" Test ")
Zwraca wartość "Test".
Trim([proxyAddresses])
Usuwa spacje wiodące i końcowe dla każdej wartości w atrybucie proxyAddress.
Słowo
opis :
Funkcja programu Word zwraca wyraz zawarty w ciągu na podstawie parametrów opisujących ograniczniki do użycia i liczbę wyrazów do zwrócenia.
składnia :
str Word(str string, num WordNumber, str delimiters)
- string: ciąg, z który ma zwrócić słowo.
- WordNumber: liczba identyfikująca, która liczba wyrazów powinna zwracać.
- ograniczniki: ciąg reprezentujący ograniczniki, które powinny być używane do identyfikowania wyrazów
uwagi :
Każdy ciąg znaków w ciągu rozdzielanym jedną z znaków ograniczników jest identyfikowany jako wyrazy:
- Jeśli liczba < 1, zwraca pusty ciąg.
- Jeśli ciąg ma wartość null, zwraca pusty ciąg.
Jeśli ciąg zawiera wyrazy mniejsze niż liczba lub ciąg nie zawiera żadnych wyrazów zidentyfikowanych przez ograniczniki, zwracany jest pusty ciąg.
przykład :
Word("The quick brown fox",3," ")
Zwraca wartość "brown"
Word("This,string!has&many separators",3,",!&#")
Zwraca wartość "has"
Przykłady
Usuwanie znanej nazwy domeny
Aby uzyskać nazwę użytkownika, musisz usunąć znaną nazwę domeny z adresu e-mail użytkownika.
Jeśli na przykład domena ma wartość "contoso.com", możesz użyć następującego wyrażenia:
Wyrażenie :
Replace([mail], "@contoso.com", , ,"", ,)
Przykładowe dane wejściowe/wyjściowe:
- INPUT (poczta): "john.doe@contoso.com"
- DANE WYJŚCIOWE: "john.doe"
Dołączanie sufiksu stałej do nazwy użytkownika
Jeśli używasz piaskownicy usługi Salesforce, może być konieczne dołączenie dodatkowego sufiksu do wszystkich nazw użytkowników przed ich zsynchronizowaniem.
Wyrażenie :
Append([userPrincipalName], ".test")
Przykładowe dane wejściowe/wyjściowe:
- INPUT: (userPrincipalName): "John.Doe@contoso.com"
- output: "John.Doe@contoso.com.test"
Generowanie aliasu użytkownika przez łączenie części pierwszego i nazwiska
Należy wygenerować alias użytkownika, przyjmując pierwsze 3 litery pierwszego imienia użytkownika i 5 pierwszych liter nazwiska użytkownika.
Wyrażenie :
Append(Mid([givenName], 1, 3), Mid([surname], 1, 5))
Przykładowe dane wejściowe/wyjściowe:
- INPUT (givenName): "John"
- INPUT (nazwisko): "Doe"
- output: "JohDoe"
Usuwanie znaków diakrytycznych z ciągu
Należy zastąpić znaki zawierające znaczniki wyróżniające równoważnymi znakami, które nie zawierają znaków wyróżniających.
Wyrażenie :
NormalizeDiacritics([givenName])
Przykładowe dane wejściowe/wyjściowe:
- INPUT (givenName): "Zoë"
- wyjściowe: "Zoe"
Dzielenie ciągu na tablicę wielowartej
Musisz pobrać rozdzielaną przecinkami listę ciągów i podzielić je na tablicę, która może zostać podłączona do atrybutu wielowartościowego, takiego jak atrybut PermissionSets usługi Salesforce. W tym przykładzie lista zestawów uprawnień została wypełniona w rozszerzeniuAttribute5 w identyfikatorze Entra firmy Microsoft.
Wyrażenie :
Split([extensionAttribute5], ",")
Przykładowe dane wejściowe/wyjściowe:
- INPUT (extensionAttribute5): "PermissionSetOne, PermissionSetTwo"
- wyjściowe: ["PermissionSetOne", "PermissionSetTwo"]
Data wyjściowa jako ciąg w określonym formacie
Chcesz wysłać daty do aplikacji SaaS w określonym formacie.
Na przykład chcesz sformatować daty dla usługi ServiceNow.
Wyrażenie :
FormatDateTime([extensionAttribute1], "yyyyMMddHHmmss.fZ", "yyyy-MM-dd")
Przykładowe dane wejściowe/wyjściowe:
- input (extensionAttribute1): "20150123105347.1Z"
- wyjściowe: "2015-01-23"
Zamień wartość na podstawie wstępnie zdefiniowanego zestawu opcji
Musisz zdefiniować strefę czasową użytkownika na podstawie kodu stanu przechowywanego w identyfikatorze Entra firmy Microsoft.
Jeśli kod stanu nie jest zgodny z żadną ze wstępnie zdefiniowanych opcji, użyj wartości domyślnej "Australia/Sydney".
Wyrażenie :
Switch([state], "Australia/Sydney", "NSW", "Australia/Sydney","QLD", "Australia/Brisbane", "SA", "Australia/Adelaide")
Przykładowe dane wejściowe/wyjściowe:
- input (stan): "QLD"
- output: "Australia/Brisbane"
Zastępowanie znaków przy użyciu wyrażenia regularnego
Musisz znaleźć znaki pasujące do wartości wyrażenia regularnego i usunąć je.
Wyrażenie :
Replace([mailNickname], , "[a-zA-Z_]*", , "", , , )
Przykładowe dane wejściowe/wyjściowe:
- INPUT (mailNickname: "john_doe72"
- wyjściowe: "72"
Konwertowanie wygenerowanej wartości userPrincipalName (UPN) na małe litery
W poniższym przykładzie wartość nazwy UPN jest generowana przez łączenie pól źródłowych PreferredFirstName i PreferredLastName, a funkcja ToLower działa na wygenerowany ciąg, aby przekonwertować wszystkie znaki na małe litery.
ToLower(Join("@", NormalizeDiacritics(StripSpaces(Join(".", [PreferredFirstName], [PreferredLastName]))), "contoso.com"))
Przykładowe dane wejściowe/wyjściowe:
- INPUT (PreferredFirstName): "John"
- INPUT (PreferredLastName): "Smith"
- output: "john.smith@contoso.com"
Generowanie unikatowej wartości atrybutu userPrincipalName (UPN)
Na podstawie nazwy i nazwiska użytkownika należy wygenerować wartość atrybutu NAZWY UPN i sprawdzić jego unikatowość w docelowym katalogu usługi AD przed przypisaniem wartości do atrybutu NAZWY UPN.
Wyrażenie :
SelectUniqueValue(
Join("@", NormalizeDiacritics(StripSpaces(Join(".", [PreferredFirstName], [PreferredLastName]))), "contoso.com"),
Join("@", NormalizeDiacritics(StripSpaces(Join(".", Mid([PreferredFirstName], 1, 1), [PreferredLastName]))), "contoso.com"),
Join("@", NormalizeDiacritics(StripSpaces(Join(".", Mid([PreferredFirstName], 1, 2), [PreferredLastName]))), "contoso.com")
)
Przykładowe dane wejściowe/wyjściowe:
- INPUT (PreferredFirstName): "John"
- INPUT (PreferredLastName): "Smith"
- wyjściowych: "John.Smith@contoso.com", jeśli wartość nazwy UPN John.Smith@contoso.com jeszcze nie istnieje w katalogu
- wyjściowych: "J.Smith@contoso.com", jeśli wartość nazwy UPN John.Smith@contoso.com już istnieje w katalogu
- wyjściowych: "Jo.Smith@contoso.com", jeśli powyższe dwie wartości nazwy UPN już istnieją w katalogu