Skriva uttryck för attributmappningar i Microsoft Entra-ID

När du konfigurerar molnsynkronisering är en av de typer av attributmappningar som du kan ange en uttrycksmappning.

Med uttrycksmappningen kan du anpassa attribut med hjälp av ett skriptliknande uttryck. På så sätt kan du omvandla lokala data till ett nytt eller annat värde. Du kanske till exempel vill kombinera två attribut till ett enda attribut eftersom det här enkla attributet används av ett av dina molnprogram.

I följande dokument beskrivs de skriptliknande uttryck som används för att transformera data. Detta är bara en del av processen. Därefter måste du använda det här uttrycket och placera det i en webbbegäran till din klientorganisation. Mer information om detta finns i Transformeringar

Syntaxöversikt

Syntaxen för Uttryck för attributmappningar påminner om VBA-funktioner (Visual Basic for Applications).

  • Hela uttrycket måste definieras i termer av funktioner, som består av ett namn följt av argument inom parenteser:
    FunctionName(<<argument 1>>,<<argument N>>)

  • Du kan kapsla funktioner inom varandra. Till exempel:
    FunctionOne(FunctionTwo(<<argument1>>))

  • Du kan skicka tre olika typer av argument till funktioner:

    1. Attribut som måste omges av hakparenteser. Till exempel: [attributeName]
    2. Strängkonstanter, som måste omges av dubbla citattecken. Till exempel: "USA"
    3. Andra funktioner. Till exempel: FunctionOne(<<argument1>>, FunctionTwo(<<argument2>>))
  • För strängkonstanter, om du behöver ett omvänt snedstreck ( \ ) eller citattecken ( " ) i strängen, måste det vara undantaget med omvänt snedstreck ( \ ) symbolen. Exempel: "Företagsnamn: \"Contoso\""

Lista över funktioner

Lista över funktioner beskrivning
Lägga till Tar ett källsträngsvärde och lägger till suffixet i slutet av det.
BitAnd Funktionen BitAnd anger angivna bitar på ett värde.
CBool Funktionen CBool returnerar ett booleskt värde baserat på det utvärderade uttrycket
ConvertFromBase64 Funktionen ConvertFromBase64 konverterar det angivna base64-kodade värdet till en vanlig sträng.
ConvertToBase64 Funktionen ConvertToBase64 konverterar en sträng till en Unicode base64-sträng.
ConvertToUTF8Hex Funktionen ConvertToUTF8Hex konverterar en sträng till ett UTF8 Hex-kodat värde.
Antal Funktionen Count returnerar antalet element i ett flervärdesattribut
Cstr Funktionen CStr konverteras till en strängdatatyp.
DateFromNum Funktionen DateFromNum konverterar ett värde i AD:s datumformat till en DateTime-typ.
DNComponent Funktionen DNComponent returnerar värdet för en angiven DN-komponent från vänster.
Fel Funktionen Fel används för att returnera ett anpassat fel.
FormatDateTime Tar en datumsträng från ett format och konverterar den till ett annat format.
GUID Funktionen Guid genererar ett nytt slumpmässigt GUID.
IIF Funktionen IIF returnerar ett av en uppsättning möjliga värden baserat på ett angivet villkor.
Instr Funktionen InStr hittar den första förekomsten av en delsträng i en sträng.
Ärnull Om uttrycket utvärderas till Null returnerar funktionen IsNull sant.
IsNullOrEmpty Om uttrycket är null eller en tom sträng returnerar funktionen IsNullOrEmpty sant.
IsPresent Om uttrycket utvärderas till en sträng som inte är Null och inte är tom returnerar funktionen IsPresent sant.
IsString Om uttrycket kan utvärderas till en strängtyp utvärderas funktionen IsString till True.
Artikel Funktionen Item returnerar ett objekt från en sträng/ett attribut med flera värden.
Join Join() liknar Append(), förutom att det kan kombinera flera källsträngsvärden i en enda sträng, och varje värde avgränsas med en avgränsarsträng .
Vänster Funktionen Vänster returnerar ett angivet antal tecken från vänster om en sträng.
Mid Returnerar en delsträng av källvärdet. En delsträng är en sträng som bara innehåller några av tecknen från källsträngen.
NormalizeDiacritics Kräver ett strängargument. Returnerar strängen, men med alla diakritiska tecken ersatta med motsvarande icke-diakritiska tecken.
Not Vänder källans booleska värde. Om källvärdet är "True" returnerar "False". Annars returneras "True".
RemoveDuplicates Funktionen RemoveDuplicates tar en sträng med flera värden och kontrollerar att varje värde är unikt.
Replace Ersätter värden i en sträng.
SelectUniqueValue Kräver minst två argument, som är unika värdegenereringsregler som definieras med hjälp av uttryck. Funktionen utvärderar varje regel och kontrollerar sedan värdet som genererats för unikhet i målappen/katalogen.
SingleAppRoleAssignment Returnerar en enda appRoleAssignment från listan över alla appRoleAssignments som tilldelats en användare för ett visst program.
Delad Delar upp en sträng i en matris med flera värden med det angivna avgränsartecknet.
StringFromSID Funktionen StringFromSid konverterar en bytematris som innehåller en säkerhetsidentifierare till en sträng.
StripSpaces Tar bort alla blanksteg (" ") tecken från källsträngen.
Växling När källvärdet matchar en nyckel returnerar värdet för den nyckeln.
ToLower Tar ett källsträngsvärde och konverterar det till gemener med de kulturregler som anges.
ToUpper Tar ett källsträngsvärde och konverterar det till versaler med de kulturregler som anges.
Trimma Funktionen Trim tar bort inledande och avslutande blanksteg från en sträng.
Word Funktionen Word returnerar ett ord som finns i en sträng, baserat på parametrar som beskriver avgränsarna som ska användas och det ordnummer som ska returneras.

Lägga till

Funktion:
Lägg till(källa, suffix)

Beskrivning:
Tar ett källsträngsvärde och lägger till suffixet i slutet av det.

Parametrar:

Name Obligatoriskt/upprepande Type Anteckningar
Källkod Obligatoriskt String Vanligtvis namnet på attributet från källobjektet.
Suffix Obligatoriskt String Strängen som du vill lägga till i slutet av källvärdet.

BitAnd

Beskrivning:
Funktionen BitAnd anger angivna bitar på ett värde.

Syntax:
num BitAnd(num value1, num value2)

  • value1, value2: numeriska värden som ska vara AND'ed tillsammans

Kommentarer:
Den här funktionen konverterar båda parametrarna till den binära representationen och anger lite till:

  • 0 – om en eller båda motsvarande bitar i värde1 och värde2 är 0
  • 1 – om båda motsvarande bitar är 1.

Med andra ord returnerar den 0 i alla fall utom när motsvarande bitar av båda parametrarna är 1.

Exempel:

BitAnd(&HF, &HF7)
Returnerar 7 eftersom hexadecimalt "F" OCH "F7" utvärderas till det här värdet.


CBool

Beskrivning:
Funktionen CBool returnerar ett booleskt värde baserat på det utvärderade uttrycket

Syntax:
bool CBool(exp Expression)

Kommentarer:
Om uttrycket utvärderas till ett värde som inte är noll returnerar CBool Sant, annars returneras False.

Exempel:
CBool([attrib1] = [attrib2])

Returnerar True om båda attributen har samma värde.


ConvertFromBase64

Beskrivning:
Funktionen ConvertFromBase64 konverterar det angivna base64-kodade värdet till en vanlig sträng.

Syntax:
str ConvertFromBase64(str source) - förutsätter Unicode för kodning
str ConvertFromBase64(str source, enum Encoding)

  • källa: Base64-kodad sträng
  • Kodning: Unicode, ASCII, UTF8

Exempel
ConvertFromBase64("SABlAGwAbABvACAAdwBvAHIAbABkACEA")
ConvertFromBase64("SGVsbG8gd29ybGQh", UTF8)

Båda exemplen returnerar "Hello world!"


ConvertToBase64

Beskrivning:
Funktionen ConvertToBase64 konverterar en sträng till en Unicode base64-sträng.
Konverterar värdet för en matris med heltal till motsvarande strängrepresentation som är kodad med base-64-siffror.

Syntax:
str ConvertToBase64(str source)

Exempel:
ConvertToBase64("Hello world!")
Returnerar "SABlAGwAbABvACAAdwBvAHIAbABkACEA"


ConvertToUTF8Hex

Beskrivning:
Funktionen ConvertToUTF8Hex konverterar en sträng till ett UTF8 Hex-kodat värde.

Syntax:
str ConvertToUTF8Hex(str source)

Kommentarer:
Utdataformatet för den här funktionen används av Microsoft Entra ID som DN-attributformat.

Exempel:
ConvertToUTF8Hex("Hello world!")
Returnerar 48656C6C6F20776F726C6421


Antal

Beskrivning:
Funktionen Count returnerar antalet element i ett flervärdesattribut

Syntax:
num Count(mvstr attribute)


CStr

Beskrivning:
Funktionen CStr konverteras till en strängdatatyp.

Syntax:
str CStr(num value)
str CStr(ref value)
str CStr(bool value)

  • värde: Kan vara ett numeriskt värde, ett referensattribut eller booleskt värde.

Exempel:
CStr([dn])
Kan returnera "cn=Joe,dc=contoso,dc=com"


DateFromNum

Beskrivning:
Funktionen DateFromNum konverterar ett värde i AD:s datumformat till en DateTime-typ.

Syntax:
dt DateFromNum(num value)

Exempel:
DateFromNum([lastLogonTimestamp])
DateFromNum(129699324000000000)
Returnerar en DateTime som representerar 2012-01-01 23:00:00


DNComponent

Beskrivning:
Funktionen DNComponent returnerar värdet för en angiven DN-komponent från vänster.

Syntax:
str DNComponent(ref dn, num ComponentNumber)

  • dn: referensattributet som ska tolkas
  • ComponentNumber: Komponenten i DN som ska returneras

Exempel:
DNComponent(CRef([dn]),1)
Om dn är "cn=Joe,ou=..." returneras Joe


Fel

Beskrivning:
Funktionen Fel används för att returnera ett anpassat fel.

Syntax:
void Error(str ErrorMessage)

Exempel:
IIF(IsPresent([accountName]),[accountName],Error("AccountName is required"))
Om attributet accountName inte finns utlöser du ett fel på objektet.


FormatDateTime

Funktion:
FormatDateTime(källa, inputFormat, outputFormat)

Beskrivning:
Tar en datumsträng från ett format och konverterar den till ett annat format.

Parametrar:

Name Obligatoriskt/upprepande Type Anteckningar
Källkod Obligatoriskt String Vanligtvis namnet på attributet från källobjektet.
inputFormat Obligatoriskt String Förväntat format för källvärdet. För format som stöds, se /dotnet/standard/base-types/custom-date-and-time-format-strings.
outputFormat Obligatoriskt String Format för utdatadatumet.

GUID

Beskrivning:
Funktionen Guid genererar ett nytt slumpmässigt GUID

Syntax:
str Guid()


IIF

Beskrivning:
Funktionen IIF returnerar ett av en uppsättning möjliga värden baserat på ett angivet villkor.

Syntax:
var IIF(exp condition, var valueIfTrue, var valueIfFalse)

  • villkor: valfritt värde eller uttryck som kan utvärderas till sant eller falskt.
  • valueIfTrue: Om villkoret utvärderas till true returneras värdet.
  • valueIfFalse: Om villkoret utvärderas till false returneras värdet.

Exempel:
IIF([employeeType]="Intern","t-" & [alias],[alias])
Om användaren är en praktikant returnerar aliaset för en användare med "t-" som lagts till i början av den, annars returnerar användarens alias som det är.


Instr

Beskrivning:
Funktionen InStr hittar den första förekomsten av en delsträng i en sträng

Syntax:

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: sträng som ska sökas
  • stringmatch: sträng som ska hittas
  • start: startposition för att hitta delsträngen
  • compare: vbTextCompare eller vbBinaryCompare

Kommentarer:
Returnerar positionen där delsträngen hittades eller 0 om den inte hittades.

Exempel:
InStr("The quick brown fox","quick")
Evalues till 5

InStr("repEated","e",3,vbBinaryCompare)
Utvärderar till 7


Ärnull

Beskrivning:
Om uttrycket utvärderas till Null returnerar funktionen IsNull sant.

Syntax:
bool IsNull(var Expression)

Kommentarer:
För ett attribut uttrycks en Null genom att attributet inte finns.

Exempel:
IsNull([displayName])
Returnerar True om attributet inte finns i CS eller MV.


IsNullOrEmpty

Beskrivning:
Om uttrycket är null eller en tom sträng returnerar funktionen IsNullOrEmpty sant.

Syntax:
bool IsNullOrEmpty(var Expression)

Kommentarer:
För ett attribut skulle detta utvärderas till Sant om attributet saknas eller finns men är en tom sträng.
Inversen för den här funktionen heter IsPresent.

Exempel:
IsNullOrEmpty([displayName])
Returnerar True om attributet inte finns eller är en tom sträng i CS eller MV.


IsPresent

Beskrivning:
Om uttrycket utvärderas till en sträng som inte är Null och inte är tom returnerar funktionen IsPresent sant.

Syntax:
bool IsPresent(var expression)

Kommentarer:
Inversen för den här funktionen heter IsNullOrEmpty.

Exempel:
Switch(IsPresent([directManager]),[directManager], IsPresent([skiplevelManager]),[skiplevelManager], IsPresent([director]),[director])


Artikel

Beskrivning:
Funktionen Item returnerar ett objekt från en sträng/ett attribut med flera värden.

Syntax:
var Item(mvstr attribute, num index)

  • attribut: flervärdesattribut
  • index: index till ett objekt i strängen med flera värden.

Kommentarer:
Funktionen Item är användbar tillsammans med funktionen Contains eftersom den senare funktionen returnerar indexet till ett objekt i attributet med flera värden.

Utlöser ett fel om indexet ligger utanför gränserna.

Exempel:
Mid(Item([proxyAddresses],Contains([proxyAddresses], "SMTP:")),6)
Returnerar den primära e-postadressen.


IsString

Beskrivning:
Om uttrycket kan utvärderas till en strängtyp utvärderas funktionen IsString till True.

Syntax:
bool IsString(var expression)

Kommentarer:
Används för att avgöra om CStr() kan lyckas parsa uttrycket.


Anslut

Funktion:
Join(separator, source1, source2, ...)

Beskrivning:
Join() liknar Append(), förutom att det kan kombinera flera källsträngsvärden i en enda sträng, och varje värde avgränsas med en avgränsarsträng .

Om ett av källvärdena är ett attribut med flera värden kopplas varje värde i attributet samman, avgränsat med avgränsarens värde.

Parametrar:

Name Obligatoriskt/upprepande Type Anteckningar
Avgränsare Obligatoriskt String Sträng som används för att separera källvärden när de sammanfogas till en sträng. Kan vara "" om ingen avgränsare krävs.
source1 ... sourceN Obligatoriskt, variabelt antal gånger String Strängvärden som ska kopplas samman.

Vänster

Beskrivning:
Funktionen Vänster returnerar ett angivet antal tecken från vänster om en sträng.

Syntax:
str Left(str string, num NumChars)

  • sträng: strängen som ska returnera tecken från
  • NumChars: ett tal som identifierar antalet tecken som ska returneras från början (till vänster) av strängen

Kommentarer:
En sträng som innehåller de första numChars-tecknen i strängen:

  • Om numChars = 0 returnerar du en tom sträng.
  • Om numChars < 0 returnerar du indatasträngen.
  • Om strängen är null returnerar du en tom sträng.

Om strängen innehåller färre tecken än det tal som anges i numChars returneras en sträng som är identisk med strängen (dvs. innehåller alla tecken i parameter 1).

Exempel:
Left("John Doe", 3)
Returnerar Joh.


Medel

Funktion:
Mid(source, start, length)

Beskrivning:
Returnerar en delsträng av källvärdet. En delsträng är en sträng som bara innehåller några av tecknen från källsträngen.

Parametrar:

Name Obligatoriskt/upprepande Type Anteckningar
Källkod Obligatoriskt String Vanligtvis namnet på attributet.
start Obligatoriskt integer Indexera i källsträngen där delsträngen ska starta. Det första tecknet i strängen har indexet 1, det andra tecknet har index 2 och så vidare.
length Obligatoriskt integer Längden på delsträngen. Om längden slutar utanför källsträngen returnerar funktionen delsträng från startindex till slutet av källsträngen.

NormalizeDiacritics

Funktion:
NormalizeDiacritics(source)

Beskrivning:
Kräver ett strängargument. Returnerar strängen, men med alla diakritiska tecken ersatta med motsvarande icke-diakritiska tecken. Används vanligtvis för att konvertera förnamn och efternamn som innehåller diakritiska tecken (accenttecken) till juridiska värden som kan användas i olika användaridentifierare, till exempel användarnamn, SAM-kontonamn och e-postadresser.

Parametrar:

Name Obligatoriskt/upprepande Type Anteckningar
Källkod Obligatoriskt String Vanligtvis ett förnamn eller efternamnsattribut.

Not

Funktion:
Not(source)

Beskrivning:
Vänder källans booleska värde. Om källvärdet är "True" returnerar "False". Annars returneras "True".

Parametrar:

Name Obligatoriskt/upprepande Type Anteckningar
Källkod Obligatoriskt Boolesk sträng Förväntade källvärden är "True" eller "False".

RemoveDuplicates

Beskrivning:
Funktionen RemoveDuplicates tar en sträng med flera värden och kontrollerar att varje värde är unikt.

Syntax:
mvstr RemoveDuplicates(mvstr attribute)

Exempel:
RemoveDuplicates([proxyAddresses])
Returnerar ett sanerat proxyAddress-attribut där alla duplicerade värden har tagits bort.


Replace

Funktion:
Replace(source, oldValue, regexPattern, regexGroupName, replacementValue, replacementAttributeName, template)

Beskrivning:
Ersätter värden i en sträng. Det fungerar olika beroende på de parametrar som tillhandahålls:

  • När oldValue och replacementValue tillhandahålls:

    • Ersätter alla förekomster av oldValue i källan med replacementValue
  • När oldValue och mall tillhandahålls:

    • Ersätter alla förekomster av oldValue i mallen med källvärdet
  • När regexPattern och replacementValue tillhandahålls:

    • Funktionen tillämpar regexPattern på källsträngenoch du kan använda regex-gruppnamnen för att konstruera strängen för replacementValue
  • När regexPattern, regexGroupName, replacementValue tillhandahålls:

    • Funktionen tillämpar regexPattern på källsträngen och ersätter alla värden som matchar regexGroupName med replacementValue
  • När regexPattern, regexGroupName, replacementAttributeName tillhandahålls:

    • Om källan inte har något värde returneras källan
    • Om källan har ett värde tillämpar funktionen regexPattern på källsträngenoch ersätter alla värden som matchar regexGroupName med värdet som är associerat med replacementAttributeName

Parametrar:

Name Obligatoriskt/upprepande Type Anteckningar
Källkod Obligatoriskt String Vanligtvis namnet på attributet från källobjektet .
oldValue Valfritt String Värde som ska ersättas i källa eller mall.
regexPattern Valfritt String Regex-mönster för det värde som ska ersättas i källan. Eller när replacementPropertyName används, mönster för att extrahera värde från replacementPropertyName.
regexGroupName Valfritt String Namnet på gruppen i regexPattern. Endast när replacementPropertyName används extraherar vi värdet för den här gruppen som replacementValue från replacementPropertyName.
replacementValue Valfritt String Nytt värde att ersätta gamla med.
replacementAttributeName Valfritt String Namnet på attributet som ska användas för ersättningsvärde
mall Valfritt String När mallvärdet anges letar vi efter oldValue i mallen och ersätter det med källvärdet .

SelectUniqueValue

Funktion:
SelectUniqueValue(uniqueValueRule1, uniqueValueRule2, uniqueValueRule3, ...)

Beskrivning:
Kräver minst två argument, som är unika värdegenereringsregler som definieras med hjälp av uttryck. Funktionen utvärderar varje regel och kontrollerar sedan värdet som genererats för unikhet i målappen/katalogen. Det första unika värdet som hittas är det som returneras. Om alla värden redan finns i målet depositioneras posten och orsaken loggas i granskningsloggarna. Det finns ingen övre gräns för antalet argument som kan anges.

Kommentar

  • Det här är en funktion på den översta nivån. Den kan inte kapslas.
  • Den här funktionen kan inte tillämpas på attribut som har matchande prioritet.
  • Den här funktionen är endast avsedd att användas för att skapa inmatningar. När du använder den med ett attribut anger du egenskapen Tillämpa mappning till Endast när objektet skapas.
  • Den här funktionen stöds för närvarande endast för "Workday and SuccessFactors to Active Directory User Provisioning". Det kan inte användas med andra etableringsprogram.

Parametrar:

Name Obligatoriskt/upprepande Type Anteckningar
uniqueValueRule1 ... uniqueValueRuleN Minst 2 krävs, ingen övre gräns String Lista över regler för unik värdegenerering som ska utvärderas.

SingleAppRoleAssignment

Funktion:
SingleAppRoleAssignment([appRoleAssignments])

Beskrivning:
Returnerar en enda appRoleAssignment från listan över alla appRoleAssignments som tilldelats en användare för ett visst program. Den här funktionen krävs för att konvertera objektet appRoleAssignments till en enskild rollnamnssträng. Observera att bästa praxis är att se till att endast en appRoleAssignment tilldelas till en användare i taget, och om flera roller tilldelas kan rollsträngen som returneras inte vara förutsägbar.

Parametrar:

Name Obligatoriskt/upprepande Type Anteckningar
[appRoleAssignments] Obligatoriskt String [appRoleAssignments] Objekt.

Delad

Funktion:
Split(source, delimiter)

Beskrivning:
Delar upp en sträng i en matris med flera värden med det angivna avgränsartecknet.

Parametrar:

Name Obligatoriskt/upprepande Type Anteckningar
Källkod Obligatoriskt String källvärde som ska uppdateras.
Avgränsare Obligatoriskt String Anger det tecken som ska användas för att dela upp strängen (exempel: ",")

StringFromSid

Beskrivning:
Funktionen StringFromSid konverterar en bytematris som innehåller en säkerhetsidentifierare till en sträng.

Syntax:
str StringFromSid(bin ObjectSID)


StripSpaces

Funktion:
StripSpaces(källa)

Beskrivning:
Tar bort alla blanksteg (" ") tecken från källsträngen.

Parametrar:

Name Obligatoriskt/upprepande Type Anteckningar
Källkod Obligatoriskt String källvärde som ska uppdateras.

Växling

Funktion:
Switch(source, defaultValue, key1, value1, key2, value2, ...)

Beskrivning:
När källvärdet matchar en nyckel returnerar värdet för den nyckeln. Om källvärdet inte matchar några nycklar returnerar defaultValue. Nyckel - och värdeparametrar måste alltid komma i par. Funktionen förväntar sig alltid ett jämnt antal parametrar.

Parametrar:

Name Obligatoriskt/upprepande Type Anteckningar
Källkod Obligatoriskt String Källvärde att kontrollera.
Standardvärde Valfritt String Standardvärde som ska användas när källan inte matchar några nycklar. Kan vara en tom sträng ("").
nyckel Obligatoriskt String Nyckel att jämföra källvärde med.
värde Obligatoriskt String Ersättningsvärde för källan som matchar nyckeln.

ToLower

Funktion:
ToLower(källa, kultur)

Beskrivning:
Tar ett källsträngsvärde och konverterar det till gemener med de kulturregler som anges. Om ingen kulturinformation har angetts använder den invariant kultur.

Parametrar:

Name Obligatoriskt/upprepande Type Anteckningar
Källkod Obligatoriskt String Vanligtvis namnet på attributet från källobjektet
Kultur Valfritt String Formatet för kulturnamnet baserat på RFC 4646 är languagecode2-country/regioncode2, där languagecode2 är språkkoden med två bokstäver och country/regioncode2 är subkulturkoden med två bokstäver. Exempel är ja-JP för japanska (Japan) och en-US för engelska (USA). I fall där en språkkod med två bokstäver inte är tillgänglig används en kod med tre bokstäver som härleds från ISO 639-2.

ToUpper

Funktion:
ToUpper(källa, kultur)

Beskrivning:
Tar ett källsträngsvärde och konverterar det till versaler med de kulturregler som anges. Om ingen kulturinformation har angetts använder den invariant kultur.

Parametrar:

Name Obligatoriskt/upprepande Type Anteckningar
Källkod Obligatoriskt String Vanligtvis namnet på attributet från källobjektet.
Kultur Valfritt String Formatet för kulturnamnet baserat på RFC 4646 är languagecode2-country/regioncode2, där languagecode2 är språkkoden med två bokstäver och country/regioncode2 är subkulturkoden med två bokstäver. Exempel är ja-JP för japanska (Japan) och en-US för engelska (USA). I fall där en språkkod med två bokstäver inte är tillgänglig används en kod med tre bokstäver som härleds från ISO 639-2.

Trimma

Beskrivning:
Funktionen Trim tar bort inledande och avslutande blanksteg från en sträng.

Syntax:
str Trim(str value)

Exempel:
Trim(" Test ")
Returnerar "Test".

Trim([proxyAddresses])
Tar bort inledande och avslutande blanksteg för varje värde i attributet proxyAddress.


Word

Beskrivning:
Funktionen Word returnerar ett ord som finns i en sträng, baserat på parametrar som beskriver avgränsarna som ska användas och det ordnummer som ska returneras.

Syntax:
str Word(str string, num WordNumber, str delimiters)

  • sträng: strängen som du vill returnera ett ord från.
  • WordNumber: ett tal som identifierar vilket ordnummer som ska returneras.
  • avgränsare: en sträng som representerar avgränsare som ska användas för att identifiera ord

Kommentarer:
Varje sträng med tecken i sträng avgränsad med ett av tecknen i avgränsare identifieras som ord:

  • Om nummer < 1 returnerar den tomma strängen.
  • Om strängen är null returnerar den tomma strängen.

Om strängen innehåller mindre än talord, eller om strängen inte innehåller några ord som identifieras av avgränsare, returneras en tom sträng.

Exempel:
Word("The quick brown fox",3," ")
Returnerar "brun"

Word("This,string!has&many separators",3,",!&#")
Skulle returnera "har"

Exempel

Ta bort känt domännamn

Du måste ta bort ett känt domännamn från en användares e-post för att få ett användarnamn.
Om domänen till exempel är "contoso.com" kan du använda följande uttryck:

Expression:
Replace([mail], "@contoso.com", , ,"", ,)

Exempel på indata/utdata:

  • INPUT (e-post): "john.doe@contoso.com"
  • UTDATA: "john.doe"

Lägga till konstant suffix i användarnamnet

Om du använder en Salesforce Sandbox-miljö kan du behöva lägga till ytterligare ett suffix i alla dina användarnamn innan du synkroniserar dem.

Expression:
Append([userPrincipalName], ".test")

Exempel på indata/utdata:

  • INPUT: (userPrincipalName): "John.Doe@contoso.com"
  • UTDATA: "John.Doe@contoso.com.test"

Generera användaralias genom att sammanfoga delar av för- och efternamn

Du måste generera ett användaralias genom att ta första 3 bokstäverna i användarens förnamn och de första 5 bokstäverna i användarens efternamn.

Expression:
Append(Mid([givenName], 1, 3), Mid([surname], 1, 5))

Exempel på indata/utdata:

  • INPUT (givenName): "John"
  • INPUT (efternamn): "Doe"
  • UTDATA: "JohDoe"

Ta bort diakritiska tecken från en sträng

Du måste ersätta tecken som innehåller accenttecken med motsvarande tecken som inte innehåller dekorstreck.

Expression:
NormalizeDiacritics([givenName])

Exempel på indata/utdata:

  • INPUT (givenName): "Zoë"
  • UTDATA: "Zoe"

Dela upp en sträng i en matris med flera värden

Du måste ta en kommaavgränsad lista med strängar och dela upp dem i en matris som kan anslutas till ett flervärdesattribut som Salesforces attribute PermissionSets. I det här exemplet har en lista med behörighetsuppsättningar fyllts i i extensionAttribute5 i Microsoft Entra ID.

Expression:
Split([extensionAttribute5], ",")

Exempel på indata/utdata:

  • INPUT (extensionAttribute5): "PermissionSetOne, PermissionSetTwo"
  • UTDATA: ["PermissionSetOne", "PermissionSetTwo"]

Utdatadatum som en sträng i ett visst format

Du vill skicka datum till ett SaaS-program i ett visst format.
Du vill till exempel formatera datum för ServiceNow.

Expression:

FormatDateTime([extensionAttribute1], "yyyyMMddHHmmss.fZ", "yyyy-MM-dd")

Exempel på indata/utdata:

  • INPUT (extensionAttribute1): "20150123105347.1Z"
  • UTDATA: "2015-01-23"

Ersätt ett värde baserat på fördefinierad uppsättning alternativ

Du måste definiera tidszonen för användaren baserat på tillståndskoden som lagras i Microsoft Entra-ID.
Om delstatskoden inte matchar något av de fördefinierade alternativen använder du standardvärdet "Australien/Sydney".

Expression:
Switch([state], "Australia/Sydney", "NSW", "Australia/Sydney","QLD", "Australia/Brisbane", "SA", "Australia/Adelaide")

Exempel på indata/utdata:

  • INPUT (tillstånd): "QLD"
  • UTDATA: "Australien/Brisbane"

Ersätt tecken med ett reguljärt uttryck

Du måste hitta tecken som matchar ett reguljärt uttrycksvärde och ta bort dem.

Expression:

Replace([mailNickname], , "[a-zA-Z_]*", , "", , )

Exempel på indata/utdata:

  • INPUT (mailNickname: "john_doe72"
  • UTDATA: "72"

Konvertera genererat upn-värde (userPrincipalName) till gemener

I exemplet nedan genereras UPN-värdet genom att sammanfoga källfälten PreferredFirstName och PreferredLastName och funktionen ToLower fungerar på den genererade strängen för att konvertera alla tecken till gemener.

ToLower(Join("@", NormalizeDiacritics(StripSpaces(Join(".", [PreferredFirstName], [PreferredLastName]))), "contoso.com"))

Exempel på indata/utdata:

  • INPUT (PreferredFirstName): "John"
  • INPUT (PreferredLastName): "Smith"
  • UTDATA: "john.smith@contoso.com"

Generera unikt värde för attributet userPrincipalName (UPN)

Baserat på användarens förnamn, mellannamn och efternamn måste du generera ett värde för UPN-attributet och kontrollera dess unikhet i ad-målkatalogen innan du tilldelar värdet till UPN-attributet.

Expression:

    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")
    )

Exempel på indata/utdata:

  • INPUT (PreferredFirstName): "John"
  • INPUT (PreferredLastName): "Smith"
  • UTDATA: "John.Smith@contoso.com" om UPN-värdet John.Smith@contoso.com inte redan finns i katalogen
  • UTDATA: "J.Smith@contoso.com" om UPN-värdet John.Smith@contoso.com redan finns i katalogen
  • UTDATA: "Jo.Smith@contoso.com" om ovanstående två UPN-värden redan finns i katalogen

Nästa steg