Microsoft Entra Connect Sync: Funktionsreferens

I Microsoft Entra Connect används funktioner för att ändra ett attributvärde under synkroniseringen.
Syntaxen för funktionerna uttrycks med följande format:
<output type> FunctionName(<input type> <position name>, ..)

Om en funktion är överbelastad och accepterar flera syntaxer visas alla giltiga syntaxer.
Funktionerna är starkt inskrivna och de kontrollerar att den typ som skickas in matchar den dokumenterade typen.
Om typen inte matchar utlöses ett fel.

Typerna uttrycks med följande syntax:

  • bin – Binär
  • bool – boolesk
  • dt – UTC-datum/tid
  • uppräkning av kända konstanter
  • exp – Uttryck som förväntas utvärderas till ett booleskt
  • mvbin – flervärdesbinär
  • mvstr – Flervärdessträng
  • mvref – Flervärdesreferens
  • num – numeriskt
  • referens – referens
  • str – Sträng
  • var – en variant av (nästan) någon annan typ
  • void – returnerar inte ett värde

Funktionerna med typerna mvbin, mvstr och mvref kan bara fungera med flervärdesattribut. Funktioner med bin-, str- och ref-funktioner fungerar på både attribut med enkelvärde och flera värden.

Referens för funktioner


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.


Bitor

Beskrivning:
BitOr-funktionen anger angivna bitar på ett värde.

Syntax:
num BitOr(num value1, num value2)

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

Kommentarer:
Den här funktionen konverterar båda parametrarna till den binära representationen och anger en bit till 1 om en eller båda motsvarande bitar i mask och flagga är 1 och till 0 om båda motsvarande bitar är 0. Med andra ord returnerar den 1 i alla fall utom där motsvarande bitar av båda parametrarna är 0.


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.


CDate

Beskrivning:
Funktionen CDate returnerar en UTC DateTime från en sträng. DateTime är inte en inbyggd attributtyp i Sync men används av vissa funktioner.

Syntax:
dt CDate(str value)

  • Värde: En sträng med datum, tid och valfritt tidszon

Kommentarer:
Den returnerade strängen finns alltid i UTC.

Exempel:
CDate([employeeStartTime])
Returnerar en DateTime baserat på medarbetarens starttid

CDate("2013-01-10 4:00 PM -8")
Returnerar en DateTime som representerar "2013-01-11 12:00"


CertExtensionOids

Beskrivning:
Returnerar Oid-värdena för alla kritiska tillägg för ett certifikatobjekt.

Syntax:
mvstr CertExtensionOids(binary certificateRawData)

  • certificateRawData: Bytematrisrepresentation av ett X.509-certifikat. Bytematrisen kan vara binär (DER) kodad eller Base64-kodade X.509-data.

CertFormat

Beskrivning:
Returnerar namnet på formatet för det här X.509v3-certifikatet.

Syntax:
str CertFormat(binary certificateRawData)

  • certificateRawData: Bytematrisrepresentation av ett X.509-certifikat. Bytematrisen kan vara binär (DER) kodad eller Base64-kodade X.509-data.

CertFriendlyName

Beskrivning:
Returnerar det associerade aliaset för ett certifikat.

Syntax:
str CertFriendlyName(binary certificateRawData)

  • certificateRawData: Bytematrisrepresentation av ett X.509-certifikat. Bytematrisen kan vara binär (DER) kodad eller Base64-kodade X.509-data.

CertHashString

Beskrivning:
Returnerar SHA1-hashvärdet för X.509v3-certifikatet som en hexadecimal sträng.

Syntax:
str CertHashString(binary certificateRawData)

  • certificateRawData: Bytematrisrepresentation av ett X.509-certifikat. Bytematrisen kan vara binär (DER) kodad eller Base64-kodade X.509-data.

CertIssuer

Beskrivning:
Returnerar namnet på certifikatutfärdare som utfärdade X.509v3-certifikatet.

Syntax:
str CertIssuer(binary certificateRawData)

  • certificateRawData: Bytematrisrepresentation av ett X.509-certifikat. Bytematrisen kan vara binär (DER) kodad eller Base64-kodade X.509-data.

CertIssuerDN

Beskrivning:
Returnerar certifikatutfärdarens unika namn.

Syntax:
str CertIssuerDN(binary certificateRawData)

  • certificateRawData: Bytematrisrepresentation av ett X.509-certifikat. Bytematrisen kan vara binär (DER) kodad eller Base64-kodade X.509-data.

CertIssuerOid

Beskrivning:
Returnerar Oid för certifikatutfärdaren.

Syntax:
str CertIssuerOid(binary certificateRawData)

  • certificateRawData: Bytematrisrepresentation av ett X.509-certifikat. Bytematrisen kan vara binär (DER) kodad eller Base64-kodade X.509-data.

CertKeyAlgorithm

Beskrivning:
Returnerar nyckelalgoritminformationen för det här X.509v3-certifikatet som en sträng.

Syntax:
str CertKeyAlgorithm(binary certificateRawData)

  • certificateRawData: Bytematrisrepresentation av ett X.509-certifikat. Bytematrisen kan vara binär (DER) kodad eller Base64-kodade X.509-data.

CertKeyAlgorithmParams

Beskrivning:
Returnerar nyckelalgoritmparametrarna för X.509v3-certifikatet som en hexadecimal sträng.

Syntax:
str CertKeyAlgorithm(binary certificateRawData)

  • certificateRawData: Bytematrisrepresentation av ett X.509-certifikat. Bytematrisen kan vara binär (DER) kodad eller Base64-kodade X.509-data.

CertNameInfo

Beskrivning:
Returnerar ämnes- och utfärdarnamnen från ett certifikat.

Syntax:
str CertNameInfo(binary certificateRawData, str x509NameType, bool includesIssuerName)

  • certificateRawData: Bytematrisrepresentation av ett X.509-certifikat. Bytematrisen kan vara binär (DER) kodad eller Base64-kodade X.509-data.
  • X509NameType: X509NameType-värdet för ämnet.
  • includeIssuerName: true för att inkludera utfärdarnamnet; annars falskt.

CertNotAfter

Beskrivning:
Returnerar datumet i lokal tid varefter ett certifikat inte längre är giltigt.

Syntax:
dt CertNotAfter(binary certificateRawData)

  • certificateRawData: Bytematrisrepresentation av ett X.509-certifikat. Bytematrisen kan vara binär (DER) kodad eller Base64-kodade X.509-data.

CertNotBefore

Beskrivning:
Returnerar det datum i lokal tid då ett certifikat blir giltigt.

Syntax:
dt CertNotBefore(binary certificateRawData)

  • certificateRawData: Bytematrisrepresentation av ett X.509-certifikat. Bytematrisen kan vara binär (DER) kodad eller Base64-kodade X.509-data.

CertPublicKeyOid

Beskrivning:
Returnerar Oid för den offentliga nyckeln för X.509v3-certifikatet.

Syntax:
str CertKeyAlgorithm(binary certificateRawData)

  • certificateRawData: Bytematrisrepresentation av ett X.509-certifikat. Bytematrisen kan vara binär (DER) kodad eller Base64-kodade X.509-data.

CertPublicKeyParametersOid

Beskrivning:
Returnerar Oid för de offentliga nyckelparametrarna för X.509v3-certifikatet.

Syntax:
str CertPublicKeyParametersOid(binary certificateRawData)

  • certificateRawData: Bytematrisrepresentation av ett X.509-certifikat. Bytematrisen kan vara binär (DER) kodad eller Base64-kodade X.509-data.

CertSerialNumber

Beskrivning:
Returnerar serienumret för X.509v3-certifikatet.

Syntax:
str CertSerialNumber(binary certificateRawData)

  • certificateRawData: Bytematrisrepresentation av ett X.509-certifikat. Bytematrisen kan vara binär (DER) kodad eller Base64-kodade X.509-data.

CertSignatureAlgorithmOid

Beskrivning:
Returnerar Oid för algoritmen som används för att skapa signaturen för ett certifikat.

Syntax:
str CertSignatureAlgorithmOid(binary certificateRawData)

  • certificateRawData: Bytematrisrepresentation av ett X.509-certifikat. Bytematrisen kan vara binär (DER) kodad eller Base64-kodade X.509-data.

CertSubject

Beskrivning:
Hämtar ämnets unika namn från ett certifikat.

Syntax:
str CertSubject(binary certificateRawData)

  • certificateRawData: Bytematrisrepresentation av ett X.509-certifikat. Bytematrisen kan vara binär (DER) kodad eller Base64-kodade X.509-data.

CertSubjectNameDN

Beskrivning:
Returnerar det unika namnet för ämnet från ett certifikat.

Syntax:
str CertSubjectNameDN(binary certificateRawData)

  • certificateRawData: Bytematrisrepresentation av ett X.509-certifikat. Bytematrisen kan vara binär (DER) kodad eller Base64-kodade X.509-data.

CertSubjectNameOid

Beskrivning:
Returnerar Oid för ämnesnamnet från ett certifikat.

Syntax:
str CertSubjectNameOid(binary certificateRawData)

  • certificateRawData: Bytematrisrepresentation av ett X.509-certifikat. Bytematrisen kan vara binär (DER) kodad eller Base64-kodade X.509-data.

CertThumbprint

Beskrivning:
Returnerar tumavtrycket för ett certifikat.

Syntax:
str CertThumbprint(binary certificateRawData)

  • certificateRawData: Bytematrisrepresentation av ett X.509-certifikat. Bytematrisen kan vara binär (DER) kodad eller Base64-kodade X.509-data.

CertVersion

Beskrivning:
Returnerar X.509-formatversionen av ett certifikat.

Syntax:
str CertThumbprint(binary certificateRawData)

  • certificateRawData: Bytematrisrepresentation av ett X.509-certifikat. Bytematrisen kan vara binär (DER) kodad eller Base64-kodade X.509-data.

CGuid

Beskrivning:
Funktionen CGuid konverterar strängrepresentationen av ett GUID till dess binära representation.

Syntax:
bin CGuid(str GUID)

  • En sträng formaterad i det här mönstret: 00001111-aaaa-2222-bbbb-3333cccc4444 eller {00001111-aaaa-2222-bbbb-3333cccc4444}

Innehåller

Beskrivning:
Funktionen Contains hittar en sträng i ett attribut med flera värden

Syntax:
num Contains (mvstring attribute, str search) - skiftlägeskänslig
num Contains (mvstring attribute, str search, enum Casetype)
num Contains (mvref attribute, str search) - skiftlägeskänslig

  • attribut: attributet med flera värden för sökning.
  • sök: sträng som ska hittas i attributet.
  • Casetype: CaseInsensitive eller CaseSensitive.

Returnerar index i det flervärdesattribut där strängen hittades. 0 returneras om strängen inte hittas.

Kommentarer:
För flervärdessträngsattribut hittar sökningen delsträngar i värdena.
För referensattribut måste den sökta strängen exakt matcha värdet för att betraktas som en matchning.

Exempel:
IIF(Contains([proxyAddresses],"SMTP:")>0,[proxyAddresses],Error("No primary SMTP address found."))
Om attributet proxyAddresses har en primär e-postadress (anges med versaler "SMTP:"),, returnerar du attributet proxyAddress, annars returnerar du ett fel.


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


ConvertFromUTF8Hex

Beskrivning:
Funktionen ConvertFromUTF8Hex konverterar det angivna UTF8 Hex-kodade värdet till en sträng.

Syntax:
str ConvertFromUTF8Hex(str source)

  • källa: UTF8 2 byte kodat sting

Kommentarer:
Skillnaden mellan den här funktionen och ConvertFromBase64([],UTF8) eftersom resultatet är användarvänligt för DN-attributet.
Det här formatet används av Microsoft Entra ID som DN.

Exempel:
ConvertFromUTF8Hex("48656C6C6F20776F726C6421")
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)


CNum

Beskrivning:
Funktionen CNum tar en sträng och returnerar en numerisk datatyp.

Syntax:
num CNum(str value)


CRef

Beskrivning:
Konverterar en sträng till ett referensattribut

Syntax:
ref CRef(str value)

Exempel:
CRef("CN=LC Services,CN=Microsoft,CN=lcspool01,CN=Pools,CN=RTC Service," & %Forest.LDAP%)


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"


DateAdd

Beskrivning:
Returnerar ett datum som innehåller ett datum som ett angivet tidsintervall har lagts till i.

Syntax:
dt DateAdd(str interval, num value, dt date)

  • intervall: Stränguttryck som är det tidsintervall som du vill lägga till. Strängen måste ha något av följande värden:
    • yyyy år
    • q Kvartal
    • m Månad
    • y Dag på året
    • d Dag
    • w Veckodag
    • ww Week
    • h Timme
    • n Minut
    • s Second
  • värde: Antalet enheter som du vill lägga till. Det kan vara positivt (för att hämta datum i framtiden) eller negativt (för att hämta datum tidigare).
  • date: DateTime som representerar det datum då intervallet läggs till.

Exempel:
DateAdd("m", 3, CDate("2001-01-01"))
Lägger till 3 månader och returnerar en DateTime som representerar "2001-04-01".


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


DNComponentRev

Beskrivning:
Funktionen DNComponentRev returnerar värdet för en angiven DN-komponent som går från höger (slutet).

Syntax:
str DNComponentRev(ref dn, num ComponentNumber)
str DNComponentRev(ref dn, num ComponentNumber, enum Options)

  • dn: referensattributet som ska tolkas
  • ComponentNumber – komponenten i DN som ska returneras
  • Alternativ: DC – Ignorera alla komponenter med "dc="

Exempel:
Om dn är "cn=Joe,ou=Atlanta,ou=GA,ou=US, dc=contoso,dc=com" så
DNComponentRev(CRef([dn]),3)
DNComponentRev(CRef([dn]),1,"DC")
Båda returnerar USA.


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.


EscapeDNComponent

Beskrivning:
Funktionen EscapeDNComponent tar en komponent i ett DN och tar bort den så att den kan representeras i LDAP.

Syntax:
str EscapeDNComponent(str value)

Exempel:
EscapeDNComponent("cn=" & [displayName]) & "," & %ForestLDAP%)
Kontrollerar att objektet kan skapas i en LDAP-katalog även om attributet displayName innehåller tecken som måste vara undantagna i LDAP.


FormatDateTime

Beskrivning:
Funktionen FormatDateTime används för att formatera en DateTime till en sträng med ett angivet format

Syntax:
str FormatDateTime(dt value, str format)

  • värde: ett värde i DateTime-format
  • format: en sträng som representerar formatet som ska konverteras till.

Kommentarer:
Möjliga värden för formatet finns här: Anpassade datum- och tidsformat för funktionen FORMAT.

Exempel:

FormatDateTime(CDate("12/25/2007"),"yyyy-MM-dd")
Resultat i "2007-12-25".

FormatDateTime(DateFromNum([pwdLastSet]),"yyyyMMddHHmmss.0Z")
Kan resultera i "20140905081453.0Z"


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")
Utvärderar till 5

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


InStrRev

Beskrivning:
Funktionen InStrRev hittar den sista förekomsten av en delsträng i en sträng

Syntax:
num InstrRev(str stringcheck, str stringmatch)
num InstrRev(str stringcheck, str stringmatch, num start)
num InstrRev(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:
InStrRev("abbcdbbbef","bb")
Returnerar 7


IsBitSet

Beskrivning:
Funktionen IsBitSet-tester om en bit har angetts eller inte

Syntax:
bool IsBitSet(num value, num flag)

  • värde: ett numeriskt värde som utvärderas.flagga: ett numeriskt värde som har biten som ska utvärderas

Exempel:
IsBitSet(&HF,4)
Returnerar Sant eftersom biten "4" har angetts i hexadecimalt värde "F"


IsDate

Beskrivning:
Om uttrycket kan utvärderas som en DateTime-typ utvärderas funktionen IsDate till True.

Syntax:
bool IsDate(var Expression)

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


IsCert

Beskrivning:
Returnerar sant om rådata kan serialiseras till .NET X509Certificate2-certifikatobjekt.

Syntax:
bool CertThumbprint(binary certificateRawData)

  • certificateRawData: Bytematrisrepresentation av ett X.509-certifikat. Bytematrisen kan vara binär (DER) kodad eller Base64-kodade X.509-data.

IsEmpty

Beskrivning:
Om attributet finns i CS eller MV men utvärderas till en tom sträng utvärderas funktionen IsEmpty till True.

Syntax:
bool IsEmpty(var Expression)


IsGuid

Beskrivning:
Om strängen kunde konverteras till ett GUID utvärderas funktionen IsGuid till true.

Syntax:
bool IsGuid(str GUID)

Kommentarer:
Ett GUID definieras som en sträng som följer något av följande mönster: 00001111-aaaa-2222-bbbb-3333cccc4444 eller {00001111-aaaa-2222-bbbb-3333cccc4444}

Används för att avgöra om CGuid() kan lyckas.

Exempel:
IIF(IsGuid([strAttribute]),CGuid([strAttribute]),NULL)
Om StrAttribute har ett GUID-format returnerar du en binär representation, annars returnerar du null.


IsNull

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.


IsNumeric

Beskrivning:
Funktionen IsNumeric returnerar ett booleskt värde som anger om ett uttryck kan utvärderas som en taltyp.

Syntax:
bool IsNumeric(var Expression)

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


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.


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.


ItemOrNull

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

Syntax:
var ItemOrNull(mvstr attribute, num index)

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

Kommentarer:
Funktionen ItemOrNull är användbar tillsammans med funktionen Contains eftersom den senare funktionen returnerar indexet till ett objekt i flervärdesattributet.

Om indexet ligger utanför gränserna returneras ett Null-värde.


Anslut

Beskrivning:
Funktionen Join tar en sträng med flera värden och returnerar en sträng med ett värde med angiven avgränsare infogad mellan varje objekt.

Syntax:
str Join(mvstr attribute)
str Join(mvstr attribute, str Delimiter)

  • attribut: Flervärdesattribut som innehåller strängar som ska kopplas.
  • avgränsare: Alla strängar som används för att separera delsträngarna i den returnerade strängen. Om det utelämnas används blankstegstecknet (" "). Om Avgränsaren är en sträng med noll längd ("") eller Ingenting sammanfogas alla objekt i listan utan avgränsare.

Kommentarer
Det finns paritet mellan funktionerna Join och Split. Funktionen Join tar en matris med strängar och kopplar dem med en avgränsarsträng för att returnera en enda sträng. Funktionen Split tar en sträng och separerar den vid avgränsaren för att returnera en matris med strängar. En viktig skillnad är dock att Join kan sammanfoga strängar med valfri avgränsarsträng. Split kan bara separera strängar med en avgränsare med ett enda tecken.

Exempel:
Join([proxyAddresses],",")
Kan returnera: "SMTP:john.doe@contoso.com,smtp:jd@contoso.com"


LCase

Beskrivning:
Funktionen LCase konverterar alla tecken i en sträng till gemener.

Syntax:
str LCase(str value)

Exempel:
LCase("TeSt")
Returnerar "test".


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


Len

Beskrivning:
Funktionen Len returnerar antalet tecken i en sträng.

Syntax:
num Len(str value)

Exempel:
Len("John Doe")
Returnerar 8


LTrim

Beskrivning:
Funktionen LTrim tar bort inledande blanksteg från en sträng.

Syntax:
str LTrim(str value)

Exempel:
LTrim(" Test ")
Returnerar "Test"


Medel

Beskrivning:
Funktionen Mid returnerar ett angivet antal tecken från en angiven position i en sträng.

Syntax:
str Mid(str string, num start, num NumChars)

  • sträng: strängen som ska returnera tecken från
  • start: ett tal som identifierar startpositionen i strängen för att returnera tecken från
  • NumChars: ett tal som identifierar antalet tecken som ska returneras från position i sträng

Kommentarer:
Returnera numChars-tecken som börjar från position i sträng.
En sträng som innehåller numChars-tecken från position startar i sträng:

  • Om numChars = 0 returnerar du en tom sträng.
  • Om numChars < 0 returnerar du indatasträngen.
  • Om du startar > längden på strängen returnerar du indatasträngen.
  • Om start <= 0 returnerar du indatasträngen.
  • Om strängen är null returnerar du en tom sträng.

Om det inte finns numChar-tecken kvar i strängen från position start returneras så många tecken som möjligt.

Exempel:
Mid("John Doe", 3, 5)
Returnerar "hn Do".

Mid("John Doe", 6, 999)
Returnerar "Doe"


Nu

Beskrivning:
Funktionen Now returnerar en DateTime som anger aktuellt datum och tid enligt datorns systemdatum och -tid.

Syntax:
dt Now()


NumFromDate

Beskrivning:
Funktionen NumFromDate returnerar ett datum i AD:s datumformat.

Syntax:
num NumFromDate(dt value)

Exempel:
NumFromDate(CDate("2012-01-01 23:00:00"))
Returnerar 129699324000000000


PadLeft

Beskrivning:
Funktionen PadLeft vänster-pads en sträng till en angiven längd med hjälp av en angiven utfyllnad tecken.

Syntax:
str PadLeft(str string, num length, str padCharacter)

  • sträng: strängen som ska fyllas i.
  • längd: Ett heltal som representerar den önskade längden på strängen.
  • padCharacter: En sträng som består av ett enda tecken som ska användas som strecktecken

Kommentarer:

  • Om längden på strängen är mindre än längden läggs padCharacter upprepade gånger till början (vänster) av strängen tills den har en längd som är lika med längden.
  • PadCharacter kan vara ett blankstegstecken, men det kan inte vara ett null-värde.
  • Om längden på strängen är lika med eller större än längden returneras strängen oförändrad.
  • Om strängen har en längd som är större än eller lika med längden returneras en sträng som är identisk med strängen.
  • Om längden på strängen är mindre än längden returneras en ny sträng med önskad längd som innehåller sträng vadderad med en padCharacter.
  • Om strängen är null returnerar funktionen en tom sträng.

Exempel:
PadLeft("User", 10, "0")
Returnerar "000000User".


PadRight

Beskrivning:
Funktionen PadRight högerkuddar en sträng till en angiven längd med hjälp av ett angivet utfyllnadstecken.

Syntax:
str PadRight(str string, num length, str padCharacter)

  • sträng: strängen som ska fyllas i.
  • längd: Ett heltal som representerar den önskade längden på strängen.
  • padCharacter: En sträng som består av ett enda tecken som ska användas som strecktecken

Kommentarer:

  • Om längden på strängen är mindre än längden läggs padCharacter upprepade gånger till slutet (höger) av strängen tills den har en längd som är lika med längden.
  • padCharacter kan vara ett blankstegstecken, men det kan inte vara ett null-värde.
  • Om längden på strängen är lika med eller större än längden returneras strängen oförändrad.
  • Om strängen har en längd som är större än eller lika med längden returneras en sträng som är identisk med strängen.
  • Om längden på strängen är mindre än längden returneras en ny sträng med önskad längd som innehåller sträng vadderad med en padCharacter.
  • Om strängen är null returnerar funktionen en tom sträng.

Exempel:
PadRight("User", 10, "0")
Returnerar "User000000".


PCase

Beskrivning:
Funktionen PCase konverterar det första tecknet för varje blanksteg avgränsat ord i en sträng till versaler, och alla andra tecken konverteras till gemener.

Syntax:
String PCase(string)

Kommentarer:

  • Den här funktionen tillhandahåller för närvarande inte rätt hölje för att konvertera ett ord som är helt versalt, till exempel en akronym.

Exempel:
PCase("TEsT")
Returnerar "Test".

PCase(LCase("TEST"))
Returnerar "Test"


RandomNum

Beskrivning:
Funktionen RandomNum returnerar ett slumpmässigt tal mellan ett angivet intervall.

Syntax:
num RandomNum(num start, num end)

  • start: ett tal som identifierar den lägre gränsen för det slumpmässiga värde som ska genereras
  • end: ett tal som identifierar den övre gränsen för det slumpmässiga värde som ska genereras

Exempel:
Random(100,999)
Kan returnera 734.


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

Beskrivning:
Funktionen Ersätt ersätter alla förekomster av en sträng till en annan sträng.

Syntax:
str Replace(str string, str OldValue, str NewValue)

  • sträng: En sträng som ska ersätta värden i.
  • OldValue: Strängen som du vill söka efter och ersätta.
  • NewValue: Strängen som ska ersättas med.

Kommentarer:
Funktionen identifierar följande speciella monikers:

  • \n – Ny rad
  • \r – Vagnretur
  • \t – Flik

Exempel:
Replace([address],"\r\n",", ")
Ersätter CRLF med ett kommatecken och utrymme och kan leda till "One Microsoft Way, Redmond, WA, USA"


ReplaceChars

Beskrivning:
Funktionen ReplaceChars ersätter alla förekomster av tecken som finns i ReplacePattern-strängen.

Syntax:
str ReplaceChars(str string, str ReplacePattern)

  • sträng: En sträng som ska ersätta tecken i.
  • ReplacePattern: en sträng som innehåller en ordlista med tecken som ska ersättas.

Formatet är {source1}:{target1},{source2}:{target2},{sourceN},{targetN} där källan är det tecken som ska hittas och riktas mot strängen som ska ersättas med.

Kommentarer:

  • Funktionen tar varje förekomst av definierade källor och ersätter dem med målen.
  • Källan måste vara exakt ett (Unicode)-tecken.
  • Källan får inte vara tom eller längre än ett tecken (parsningsfel).
  • Målet kan ha flera tecken, till exempel ö:oe, β:ss.
  • Målet kan vara tomt som anger att tecknet ska tas bort.
  • Källan är skiftlägeskänslig och måste vara en exakt matchning.
  • , (komma) och : (kolon) är reserverade tecken och kan inte ersättas med den här funktionen.
  • Blanksteg och andra vita tecken i ReplacePattern-strängen ignoreras.

Exempel:
%ReplaceString% = ’:,Å:A,Ä:A,Ö:O,å:a,ä:a,ö,o

ReplaceChars("Räksmörgås",%ReplaceString%)
Returnerar Raksmorgas

ReplaceChars("O’Neil",%ReplaceString%)
Returnerar "ONeil" definieras det enskilda krysset som ska tas bort.


Beskrivning:
Funktionen Höger returnerar ett angivet antal tecken från höger (slutet) av en sträng.

Syntax:
str Right(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 slutet (höger) av strängen

Kommentarer:
NumChars-tecken returneras från strängens sista position.

En sträng som innehåller de sista 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.

Exempel:
Right("John Doe", 3)
Returnerar "Doe".


RTrim

Beskrivning:
RTrim-funktionen tar bort avslutande blanksteg från en sträng.

Syntax:
str RTrim(str value)

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


Välj

Beskrivning:
Bearbeta alla värden i ett flervärdesattribut (eller utdata från ett uttryck) baserat på den angivna funktionen.

Syntax:
mvattr Select(variable item, mvattr attribute, func function)
mvattr Select(variable item, exp expression, func function)

  • item: Representerar ett element i attributet med flera värden
  • attribut: flervärdesattributet
  • uttryck: ett uttryck som returnerar en samling värden
  • villkor: alla funktioner som kan bearbeta ett objekt i attributet

Exempel:
Select($item,[otherPhone],Replace($item,"-",""))
Returnera alla värden i flervärdesattributet otherPhone efter att bindestreck (-) har tagits bort.


Delad

Beskrivning:
Funktionen Split tar en sträng avgränsad med en avgränsare och gör den till en sträng med flera värden.

Syntax:
mvstr Split(str value, str delimiter)
mvstr Split(str value, str delimiter, num limit)

  • värde: strängen med ett avgränsartecken som ska avgränsas.
  • avgränsare: enstaka tecken som ska användas som avgränsare.
  • gräns: maximalt antal värden som kan returneras.

Exempel:
Split("SMTP:john.doe@contoso.com,smtp:jd@contoso.com",",")
Returnerar en flervärdessträng med 2 element som är användbara för attributet proxyAddress.


StringFromGuid

Beskrivning:
Funktionen StringFromGuid tar ett binärt GUID och konverterar det till en sträng

Syntax:
str StringFromGuid(bin GUID)


StringFromSid

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

Syntax:
str StringFromSid(bin ObjectSID)


Växling

Beskrivning:
Funktionen Switch används för att returnera ett enda värde baserat på utvärderade villkor.

Syntax:
var Switch(exp expr1, var value1[, exp expr2, var value … [, exp expr, var valueN]])

  • expr: Variantuttryck som du vill utvärdera.
  • värde: Värde som ska returneras om motsvarande uttryck är Sant.

Kommentarer:
Switch-funktionens argumentlista består av par med uttryck och värden. Uttrycken utvärderas från vänster till höger och värdet som är associerat med det första uttrycket för att utvärdera till Sant returneras. Om delarna inte är korrekt kopplade uppstår ett körningsfel.

Om expr1 till exempel är True returnerar Switch värde1. Om expr-1 är False, men expr-2 är True, returnerar Switch värde-2 och så vidare.

Växeln returnerar ingenting om:

  • Inget av uttrycken är Sant.
  • Det första True-uttrycket har ett motsvarande värde som är Null.

Switch utvärderar alla uttryck, även om den bara returnerar ett av dem. Av denna anledning bör du titta efter oönskade biverkningar. Om utvärderingen av ett uttryck till exempel resulterar i en division med noll fel uppstår ett fel.

Värdet kan också vara funktionen Fel, som returnerar en anpassad sträng.

Exempel:
Switch([city] = "London", "English", [city] = "Rome", "Italian", [city] = "Paris", "French", True, Error("Unknown city"))
Returnerar språket som talas i vissa större städer, annars returneras ett fel.


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.


UCase

Beskrivning:
Funktionen UCase konverterar alla tecken i en sträng till versaler.

Syntax:
str UCase(str string)

Exempel:
UCase("TeSt")
Returnerar "TEST".


Där

Beskrivning:
Returnerar en delmängd av värden från ett flervärdesattribut (eller utdata från ett uttryck) baserat på ett specifikt villkor.

Syntax:
mvattr Where(variable item, mvattr attribute, exp condition)
mvattr Where(variable item, exp expression, exp condition)

  • item: Representerar ett element i attributet med flera värden
  • attribut: flervärdesattributet
  • villkor: alla uttryck som kan utvärderas till sant eller falskt
  • uttryck: ett uttryck som returnerar en samling värden

Exempel:
Where($item,[userCertificate],CertNotAfter($item)>Now())
Returnera certifikatvärdena i flervärdesattributet userCertificate som inte har upphört att gälla.


With

Beskrivning:
Funktionen Med är ett sätt att förenkla ett komplext uttryck genom att använda en variabel för att representera en underuttryck som visas en eller flera gånger i det komplexa uttrycket.

Syntax:With(var variable, exp subExpression, exp complexExpression)

  • variabel: Representerar underuttryck.
  • subExpression: underuttryck som representeras av variabel.
  • complexExpression: Ett komplext uttryck.

Exempel:
With($unExpiredCerts,Where($item,[userCertificate],CertNotAfter($item)>Now()),IIF(Count($unExpiredCerts)>0,$unExpiredCerts,NULL))
Är funktionellt likvärdigt med:
IIF (Count(Where($item,[userCertificate],CertNotAfter($item)>Now()))>0, Where($item,[userCertificate],CertNotAfter($item)>Now()),NULL)
Vilket endast returnerar oexpirerade certifikatvärden i attributet userCertificate.


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"

Ytterligare resurser