Microsoft Entra Bağlan Sync: İşlevler Başvurusu

Microsoft Entra Bağlan işlevleri, eşitleme sırasında bir öznitelik değerini işlemek için kullanılır.
İşlevlerin söz dizimi aşağıdaki biçim kullanılarak ifade edilir:
<output type> FunctionName(<input type> <position name>, ..)

bir işlev aşırı yüklenmişse ve birden çok söz dizimi kabul ederse, tüm geçerli söz dizimleri listelenir.
İşlevler kesin olarak yazılır ve geçirilen türün belgelenen türle eşleşip eşleşmediğini doğrular.
Tür eşleşmiyorsa bir hata oluşur.

Türler aşağıdaki söz dizimi ile ifade edilir:

  • bin – İkili
  • bool – Boole
  • dt – UTC Tarih/Saat
  • enum – Bilinen sabitlerin sabit listesi
  • exp – Boole değerinin hesaplanması beklenen ifade
  • mvbin – Çok Değerli İkili
  • mvstr – Çok Değerli Dize
  • mvref – Çok Değerli Başvuru
  • num – Sayısal
  • ref – Başvuru
  • str – Dize
  • var – Başka herhangi bir türün (neredeyse) bir çeşidi
  • void – değer döndürmez

mvbin, mvstr ve mvref türlerine sahip işlevler yalnızca çok değerli öznitelikler üzerinde çalışabilir. Bölme, str ve ref işlevleri hem tek değerli hem de çok değerli öznitelikler üzerinde çalışır.

İşlevler Başvurusu


BitAnd

Açıklama:
BitAnd işlevi bir değer üzerinde belirtilen bitleri ayarlar.

Söz dizimi:
num BitAnd(num value1, num value2)

  • değer1, değer2: VE birlikte olması gereken sayısal değerler

Açıklamalar:
Bu işlev her iki parametreyi de ikili gösterime dönüştürür ve bir bit ayarlar:

  • 0 - değer1 ve değer2'deki ilgili bitlerden biri veya her ikisi de 0 ise
  • 1 - karşılık gelen bitlerin her ikisi de 1 ise.

Başka bir deyişle, her iki parametrenin karşılık gelen bitlerinin 1 olması dışında her durumda 0 döndürür.

Örnek:
BitAnd(&HF, &HF7)
Onaltılık "F" VE "F7" değeri bu değere değerlendirildiği için 7 döndürür.


BitOr

Açıklama:
BitOr işlevi bir değer üzerinde belirtilen bitleri ayarlar.

Söz dizimi:
num BitOr(num value1, num value2)

  • değer1, değer2: BIRLIKTE OR'ed olması gereken sayısal değerler

Açıklamalar:
Bu işlev her iki parametreyi de ikili gösterime dönüştürür ve maske ve bayrak içindeki ilgili bitlerden biri veya her ikisi de 1 ise biti 1'e, karşılık gelen bitlerin her ikisi de 0 ise 0'a ayarlar. Başka bir deyişle, her iki parametrenin karşılık gelen bitlerinin 0 olması dışında her durumda 1 döndürür.


Cbool

Açıklama:
CBool işlevi, değerlendirilen ifadeyi temel alan bir Boole değeri döndürür

Söz dizimi:
bool CBool(exp Expression)

Açıklamalar:
İfade sıfır olmayan bir değere değerlendirilirse, CBool True döndürür, aksi takdirde False döndürür.

Örnek:
CBool([attrib1] = [attrib2])

Her iki öznitelik de aynı değere sahipse True döndürür.


Cdate

Açıklama:
CDate işlevi bir dizeden UTC DateTime döndürür. DateTime, Eşitleme'de yerel bir öznitelik türü değildir, ancak bazı işlevler tarafından kullanılır.

Söz dizimi:
dt CDate(str value)

  • Değer: Tarih, saat ve isteğe bağlı olarak saat dilimine sahip bir dize

Açıklamalar:
Döndürülen dize her zaman UTC cinsindendir.

Örnek:
CDate([employeeStartTime])
Çalışanın başlangıç saatini temel alan bir DateTime döndürür

CDate("2013-01-10 4:00 PM -8")
"2013-01-11 12:00" değerini temsil eden bir DateTime döndürür


CertExtensionOids

Açıklama:
Bir sertifika nesnesinin tüm kritik uzantılarının Oid değerlerini döndürür.

Söz dizimi:
mvstr CertExtensionOids(binary certificateRawData)

  • certificateRawData: X.509 sertifikasının bayt dizisi gösterimi. Bayt dizisi ikili (DER) kodlanmış veya Base64 ile kodlanmış X.509 verileri olabilir.

CertFormat

Açıklama:
Bu X.509v3 sertifikasının biçiminin adını döndürür.

Söz dizimi:
str CertFormat(binary certificateRawData)

  • certificateRawData: X.509 sertifikasının bayt dizisi gösterimi. Bayt dizisi ikili (DER) kodlanmış veya Base64 ile kodlanmış X.509 verileri olabilir.

CertFriendlyName

Açıklama:
Sertifikanın ilişkili diğer adını döndürür.

Söz dizimi:
str CertFriendlyName(binary certificateRawData)

  • certificateRawData: X.509 sertifikasının bayt dizisi gösterimi. Bayt dizisi ikili (DER) kodlanmış veya Base64 ile kodlanmış X.509 verileri olabilir.

CertHashString

Açıklama:
X.509v3 sertifikasının SHA1 karma değerini onaltılık dize olarak döndürür.

Söz dizimi:
str CertHashString(binary certificateRawData)

  • certificateRawData: X.509 sertifikasının bayt dizisi gösterimi. Bayt dizisi ikili (DER) kodlanmış veya Base64 ile kodlanmış X.509 verileri olabilir.

CertIssuer

Açıklama:
X.509v3 sertifikasını veren sertifika yetkilisinin adını döndürür.

Söz dizimi:
str CertIssuer(binary certificateRawData)

  • certificateRawData: X.509 sertifikasının bayt dizisi gösterimi. Bayt dizisi ikili (DER) kodlanmış veya Base64 ile kodlanmış X.509 verileri olabilir.

CertIssuerDN

Açıklama:
Sertifika verenin ayırt edici adını döndürür.

Söz dizimi:
str CertIssuerDN(binary certificateRawData)

  • certificateRawData: X.509 sertifikasının bayt dizisi gösterimi. Bayt dizisi ikili (DER) kodlanmış veya Base64 ile kodlanmış X.509 verileri olabilir.

CertIssuerOid

Açıklama:
Sertifika verenin Oid değerini döndürür.

Söz dizimi:
str CertIssuerOid(binary certificateRawData)

  • certificateRawData: X.509 sertifikasının bayt dizisi gösterimi. Bayt dizisi ikili (DER) kodlanmış veya Base64 ile kodlanmış X.509 verileri olabilir.

CertKeyAlgorithm

Açıklama:
Bu X.509v3 sertifikasının anahtar algoritması bilgilerini dize olarak döndürür.

Söz dizimi:
str CertKeyAlgorithm(binary certificateRawData)

  • certificateRawData: X.509 sertifikasının bayt dizisi gösterimi. Bayt dizisi ikili (DER) kodlanmış veya Base64 ile kodlanmış X.509 verileri olabilir.

CertKeyAlgorithmParams

Açıklama:
X.509v3 sertifikasının anahtar algoritması parametrelerini onaltılık dize olarak döndürür.

Söz dizimi:
str CertKeyAlgorithm(binary certificateRawData)

  • certificateRawData: X.509 sertifikasının bayt dizisi gösterimi. Bayt dizisi ikili (DER) kodlanmış veya Base64 ile kodlanmış X.509 verileri olabilir.

CertNameInfo

Açıklama:
Sertifikadan konu ve veren adlarını döndürür.

Söz dizimi:
str CertNameInfo(binary certificateRawData, str x509NameType, bool includesIssuerName)

  • certificateRawData: X.509 sertifikasının bayt dizisi gösterimi. Bayt dizisi ikili (DER) kodlanmış veya Base64 ile kodlanmış X.509 verileri olabilir.
  • X509NameType: Konu için X509NameType değeri.
  • includesIssuerName: verenin adını eklemek için true; aksi takdirde false.

CertNotAfter

Açıklama:
Sertifikanın artık geçerli olmadığı tarihi yerel saat olarak döndürür.

Söz dizimi:
dt CertNotAfter(binary certificateRawData)

  • certificateRawData: X.509 sertifikasının bayt dizisi gösterimi. Bayt dizisi ikili (DER) kodlanmış veya Base64 ile kodlanmış X.509 verileri olabilir.

CertNotBefore

Açıklama:
Sertifikanın geçerli olduğu yerel saat içindeki tarihi döndürür.

Söz dizimi:
dt CertNotBefore(binary certificateRawData)

  • certificateRawData: X.509 sertifikasının bayt dizisi gösterimi. Bayt dizisi ikili (DER) kodlanmış veya Base64 ile kodlanmış X.509 verileri olabilir.

CertPublicKeyOid

Açıklama:
X.509v3 sertifikası için ortak anahtarın Oid değerini döndürür.

Söz dizimi:
str CertKeyAlgorithm(binary certificateRawData)

  • certificateRawData: X.509 sertifikasının bayt dizisi gösterimi. Bayt dizisi ikili (DER) kodlanmış veya Base64 ile kodlanmış X.509 verileri olabilir.

CertPublicKeyParametersOid

Açıklama:
X.509v3 sertifikası için ortak anahtar parametrelerinin Oid değerini döndürür.

Söz dizimi:
str CertPublicKeyParametersOid(binary certificateRawData)

  • certificateRawData: X.509 sertifikasının bayt dizisi gösterimi. Bayt dizisi ikili (DER) kodlanmış veya Base64 ile kodlanmış X.509 verileri olabilir.

CertSerialNumber

Açıklama:
X.509v3 sertifikasının seri numarasını döndürür.

Söz dizimi:
str CertSerialNumber(binary certificateRawData)

  • certificateRawData: X.509 sertifikasının bayt dizisi gösterimi. Bayt dizisi ikili (DER) kodlanmış veya Base64 ile kodlanmış X.509 verileri olabilir.

CertSignatureAlgorithmOid

Açıklama:
Bir sertifikanın imzasını oluşturmak için kullanılan algoritmanın Oid değerini döndürür.

Söz dizimi:
str CertSignatureAlgorithmOid(binary certificateRawData)

  • certificateRawData: X.509 sertifikasının bayt dizisi gösterimi. Bayt dizisi ikili (DER) kodlanmış veya Base64 ile kodlanmış X.509 verileri olabilir.

CertSubject

Açıklama:
Bir sertifikadan konu ayırt edici adını alır.

Söz dizimi:
str CertSubject(binary certificateRawData)

  • certificateRawData: X.509 sertifikasının bayt dizisi gösterimi. Bayt dizisi ikili (DER) kodlanmış veya Base64 ile kodlanmış X.509 verileri olabilir.

CertSubjectNameDN

Açıklama:
Sertifikadan konu ayırt edici adını döndürür.

Söz dizimi:
str CertSubjectNameDN(binary certificateRawData)

  • certificateRawData: X.509 sertifikasının bayt dizisi gösterimi. Bayt dizisi ikili (DER) kodlanmış veya Base64 ile kodlanmış X.509 verileri olabilir.

CertSubjectNameOid

Açıklama:
Bir sertifikadaki konu adının Oid değerini döndürür.

Söz dizimi:
str CertSubjectNameOid(binary certificateRawData)

  • certificateRawData: X.509 sertifikasının bayt dizisi gösterimi. Bayt dizisi ikili (DER) kodlanmış veya Base64 ile kodlanmış X.509 verileri olabilir.

CertThumbprint

Açıklama:
Sertifikanın parmak izini döndürür.

Söz dizimi:
str CertThumbprint(binary certificateRawData)

  • certificateRawData: X.509 sertifikasının bayt dizisi gösterimi. Bayt dizisi ikili (DER) kodlanmış veya Base64 ile kodlanmış X.509 verileri olabilir.

CertVersion

Açıklama:
Sertifikanın X.509 biçimli sürümünü döndürür.

Söz dizimi:
str CertThumbprint(binary certificateRawData)

  • certificateRawData: X.509 sertifikasının bayt dizisi gösterimi. Bayt dizisi ikili (DER) kodlanmış veya Base64 ile kodlanmış X.509 verileri olabilir.

CGuid

Açıklama:
CGuid işlevi, GUID'nin dize gösterimini ikili gösterimine dönüştürür.

Söz dizimi:
bin CGuid(str GUID)

  • Bu desende biçimlendirilmiş bir Dize: xxxxxxxx-xxxx-xxxx-xxxx veya {xxxxx-xxxx-xxxx-xxxx}

Contains

Açıklama:
Contains işlevi, çok değerli bir özniteliğin içinde bir dize bulur

Söz dizimi:
num Contains (mvstring attribute, str search) -Duyarlı
num Contains (mvstring attribute, str search, enum Casetype)
num Contains (mvref attribute, str search) -Duyarlı

  • attribute: aranacak çok değerli öznitelik.
  • search: özniteliğinde bulunacak dize.
  • Casetype: CaseInsensitive veya CaseSensitive.

Dizenin bulunduğu çok değerli öznitelikte dizini döndürür. Dize bulunamazsa 0 döndürülür.

Açıklamalar:
Çok değerli dize öznitelikleri için arama, değerlerdeki alt dizeleri bulur.
Başvuru öznitelikleri için, aranan dizenin eşleşme olarak kabul edilecek değerle tam olarak eşleşmesi gerekir.

Örnek:
IIF(Contains([proxyAddresses],"SMTP:")>0,[proxyAddresses],Error("No primary SMTP address found."))
proxyAddresses özniteliğinin birincil e-posta adresi varsa ("SMTP:" büyük harfle gösterilir), proxyAddress özniteliğini döndür, aksi takdirde hata döndür.


ConvertFromBase64

Açıklama:
ConvertFromBase64 işlevi, belirtilen base64 kodlanmış değerini normal bir dizeye dönüştürür.

Söz dizimi:
str ConvertFromBase64(str source) - kodlama için Unicode varsayılır
str ConvertFromBase64(str source, enum Encoding)

  • kaynak: Base64 kodlanmış dize
  • Kodlama: Unicode, ASCII, UTF8

Örnek
ConvertFromBase64("SABlAGwAbABvACAAdwBvAHIAbABkACEA")
ConvertFromBase64("SGVsbG8gd29ybGQh", UTF8)

Her iki örnek de "Merhaba dünya!" döndürür


ConvertFromUTF8Hex

Açıklama:
ConvertFromUTF8Hex işlevi, belirtilen UTF8 Onaltılık kodlanmış değeri bir dizeye dönüştürür.

Söz dizimi:
str ConvertFromUTF8Hex(str source)

  • kaynak: UTF8 2 bayt kodlanmış sting

Açıklamalar:
Bu işlev ile ConvertFromBase64([],UTF8) arasındaki fark, sonucun DN özniteliği için kolay olmasıdır.
Bu biçim, Microsoft Entra Id tarafından DN olarak kullanılır.

Örnek:
ConvertFromUTF8Hex("48656C6C6F20776F726C6421")
"Merhaba dünya!" döndürür


ConvertToBase64

Açıklama:
ConvertToBase64 işlevi bir dizeyi Unicode base64 dizesine dönüştürür.
Bir tamsayı dizisinin değerini, taban-64 basamaklı kodlanmış eşdeğer dize gösterimine dönüştürür.

Söz dizimi:
str ConvertToBase64(str source)

Örnek:
ConvertToBase64("Hello world!")
"SABlAGwAbABvACAAdwBvAHIAbABkACEA" döndürür


ConvertToUTF8Hex

Açıklama:
ConvertToUTF8Hex işlevi bir dizeyi UTF8 Onaltılık kodlanmış bir değere dönüştürür.

Söz dizimi:
str ConvertToUTF8Hex(str source)

Açıklamalar:
Bu işlevin çıkış biçimi, Microsoft Entra ID tarafından DN öznitelik biçimi olarak kullanılır.

Örnek:
ConvertToUTF8Hex("Hello world!")
48656C6C6F20776F726C6421 döndürür


Sayı

Açıklama:
Count işlevi, çok değerli bir öznitelikteki öğe sayısını döndürür

Söz dizimi:
num Count(mvstr attribute)


CNum

Açıklama:
CNum işlevi bir dize alır ve sayısal bir veri türü döndürür.

Söz dizimi:
num CNum(str value)


Cref

Açıklama:
Bir dizeyi başvuru özniteliğine dönüştürür

Söz dizimi:
ref CRef(str value)

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


Cstr

Açıklama:
CStr işlevi bir dize veri türüne dönüştürülür.

Söz dizimi:
str CStr(num value)
str CStr(ref value)
str CStr(bool value)

  • value: Sayısal bir değer, başvuru özniteliği veya Boole olabilir.

Örnek:
CStr([dn])
"cn=Joe,dc=contoso,dc=com" döndürebilir


DateAdd

Açıklama:
Belirtilen zaman aralığının eklendiği tarihi içeren bir Tarih döndürür.

Söz dizimi:
dt DateAdd(str interval, num value, dt date)

  • interval: Eklemek istediğiniz zaman aralığı olan dize ifadesi. Dize aşağıdaki değerlerden birine sahip olmalıdır:
    • yyyy Yılı
    • q Quarter
    • m Ay
    • yılın y günü
    • d Gün
    • w Hafta içi
    • ww Haftası
    • s Saat
    • n Dakika
    • s Saniye
  • değer: Eklemek istediğiniz birim sayısı. Pozitif (gelecekteki tarihleri almak için) veya negatif (geçmişteki tarihleri almak için) olabilir.
  • date: Aralığın eklendiği tarihi temsil eden DateTime.

Örnek:
DateAdd("m", 3, CDate("2001-01-01"))
3 ay ekler ve "2001-04-01" değerini temsil eden bir DateTime döndürür.


DateFromNum

Açıklama:
DateFromNum işlevi AD'nin tarih biçimindeki bir değeri DateTime türüne dönüştürür.

Söz dizimi:
dt DateFromNum(num value)

Örnek:
DateFromNum([lastLogonTimestamp])
DateFromNum(129699324000000000)
2012-01-01 23:00:00'i temsil eden bir DateTime döndürür


DNComponent

Açıklama:
DNComponent işlevi, soldan giden belirtilen DN bileşeninin değerini döndürür.

Söz dizimi:
str DNComponent(ref dn, num ComponentNumber)

  • dn: Yorumlanacak başvuru özniteliği
  • ComponentNumber: DN'de döndürülecek bileşen

Örnek:
DNComponent(CRef([dn]),1)
Dn "cn=Joe,ou=..." ise, Joe döndürür


DNComponentRev

Açıklama:
DNComponentRev işlevi, sağdan (uç) giden belirtilen DN bileşeninin değerini döndürür.

Söz dizimi:
str DNComponentRev(ref dn, num ComponentNumber)
str DNComponentRev(ref dn, num ComponentNumber, enum Options)

  • dn: Yorumlanacak başvuru özniteliği
  • ComponentNumber - DN'de döndürülecek bileşen
  • Seçenekler: DC – "dc=" ile tüm bileşenleri yoksay

Örnek:
dn "cn=Joe,ou=Atlanta,ou=GA,ou=US, dc=contoso,dc=com" ise
DNComponentRev(CRef([dn]),3)
DNComponentRev(CRef([dn]),1,"DC")
her ikisi de ABD'ye geri döner.


Hata

Açıklama:
Error işlevi özel bir hata döndürmek için kullanılır.

Söz dizimi:
void Error(str ErrorMessage)

Örnek:
IIF(IsPresent([accountName]),[accountName],Error("AccountName is required"))
accountName özniteliği yoksa nesneye bir hata oluşturun.


EscapeDNComponent

Açıklama:
EscapeDNComponent işlevi DN'nin bir bileşenini alır ve LDAP'de temsil edilebilmesi için bu bileşenden kaçar.

Söz dizimi:
str EscapeDNComponent(str value)

Örnek:
EscapeDNComponent("cn=" & [displayName]) & "," & %ForestLDAP%)
displayName özniteliğinin LDAP'de kaçış karakteri olsa bile nesnenin ldap dizininde oluşturulabileceğinden emin olur.


FormatDateTime

Açıklama:
FormatDateTime işlevi, datetime değerini belirtilen biçime sahip bir dizeye biçimlendirmek için kullanılır

Söz dizimi:
str FormatDateTime(dt value, str format)

  • value: DateTime biçiminde bir değer
  • format: Dönüştürülecek biçimi temsil eden bir dize.

Açıklamalar:
Biçimin olası değerleri burada bulunabilir: FORMAT işlevi için özel tarih ve saat biçimleri.

Örnek:

FormatDateTime(CDate("12/25/2007"),"yyyy-MM-dd")
"2007-12-25" ile sonuçlanıyor.

FormatDateTime(DateFromNum([pwdLastSet]),"yyyyMMddHHmmss.0Z")
"20140905081453.0Z" ile sonuçlanabilir


Guid

Açıklama:
İşlev Guid'i yeni bir rastgele GUID oluşturur

Söz dizimi:
str Guid()


IIF

Açıklama:
IIF işlevi, belirtilen koşula göre bir dizi olası değerden birini döndürür.

Söz dizimi:
var IIF(exp condition, var valueIfTrue, var valueIfFalse)

  • condition: true veya false olarak değerlendirilebilecek herhangi bir değer veya ifade.
  • valueIfTrue: Koşul true olarak değerlendirilirse, döndürülen değer.
  • valueIfFalse: Koşul false olarak değerlendirilirse, döndürülen değer.

Örnek:
IIF([employeeType]="Intern","t-" & [alias],[alias])
Kullanıcı bir stajyerse, başına "t-" eklenmiş bir kullanıcının diğer adını döndürür, aksi takdirde kullanıcının diğer adını olduğu gibi döndürür.


Instr

Açıklama:
InStr işlevi, dizedeki bir alt dizenin ilk oluşumunu bulur

Söz dizimi:

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: aranacak dize
  • stringmatch: bulunabilecek dize
  • start: alt dizeyi bulmak için başlangıç konumu
  • compare: vbTextCompare veya vbBinaryCompare

Açıklamalar:
Alt dizenin bulunduğu konumu veya bulunamazsa 0 değerini döndürür.

Örnek:
InStr("The quick brown fox","quick")
5 olarak değerlendirilir

InStr("repEated","e",3,vbBinaryCompare)
7 olarak değerlendirilir


InStrRev

Açıklama:
InStrRev işlevi, dizedeki bir alt dizenin son oluşumunu bulur

Söz dizimi:
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: aranacak dize
  • stringmatch: bulunabilecek dize
  • start: alt dizeyi bulmak için başlangıç konumu
  • compare: vbTextCompare veya vbBinaryCompare

Açıklamalar:
Alt dizenin bulunduğu konumu veya bulunamazsa 0 değerini döndürür.

Örnek:
InStrRev("abbcdbbbef","bb")
7 döndürür


IsBitSet

Açıklama:
Bit ayarlanmışsa veya ayarlanmadıysa IsBitSet Testleri işlevi

Söz dizimi:
bool IsBitSet(num value, num flag)

  • value: evaluated.flag olan sayısal bir değer: değerlendirilecek bit değerine sahip sayısal değer

Örnek:
IsBitSet(&HF,4)
"4" biti "F" onaltılık değerde ayarlandığından True döndürür


Isdate

Açıklama:
İfade bir DateTime türü olarak değerlendirilebiliyorsa IsDate işlevi True olarak değerlendirilir.

Söz dizimi:
bool IsDate(var Expression)

Açıklamalar:
CDate() öğesinin başarılı olup olmadığını belirlemek için kullanılır.


IsCert

Açıklama:
Ham veriler .NET X509Certificate2 sertifika nesnesine seri hale getirilebiliyorsa true döndürür.

Söz dizimi:
bool CertThumbprint(binary certificateRawData)

  • certificateRawData: X.509 sertifikasının bayt dizisi gösterimi. Bayt dizisi ikili (DER) kodlanmış veya Base64 ile kodlanmış X.509 verileri olabilir.

IsEmpty

Açıklama:
Öznitelik CS veya MV'de mevcutsa ancak boş bir dize olarak değerlendiriliyorsa, IsEmpty işlevi True olarak değerlendirilir.

Söz dizimi:
bool IsEmpty(var Expression)


IsGuid

Açıklama:
Dize bir GUID'ye dönüştürülebilse, IsGuid işlevi true olarak değerlendirilir.

Söz dizimi:
bool IsGuid(str GUID)

Açıklamalar:
GUID, şu desenlerden birini izleyen bir dize olarak tanımlanır: xxxxxxxx-xxxx-xxxx-xxxx-xxxx veya {xxxxx-xxxx-xxxx-xxxx}

CGuid() öğesinin başarılı olup olmadığını belirlemek için kullanılır.

Örnek:
IIF(IsGuid([strAttribute]),CGuid([strAttribute]),NULL)
StrAttribute bir GUID biçimine sahipse ikili bir gösterim döndür, aksi takdirde Null döndür.


Isnull

Açıklama:
İfade Null olarak değerlendirilirse, IsNull işlevi true değerini döndürür.

Söz dizimi:
bool IsNull(var Expression)

Açıklamalar:
Bir öznitelik için Null, özniteliğin olmamasıyla ifade edilir.

Örnek:
IsNull([displayName])
Öznitelik CS veya MV'de yoksa True döndürür.


Isnullorempty

Açıklama:
İfade null veya boş bir dizeyse, IsNullOrEmpty işlevi true döndürür.

Söz dizimi:
bool IsNullOrEmpty(var Expression)

Açıklamalar:
Bir öznitelik için, öznitelik yoksa veya mevcutsa ancak boş bir dizeyse, bu True olarak değerlendirilir.
Bu işlevin tersi IsPresent olarak adlandırılır.

Örnek:
IsNullOrEmpty([displayName])
Öznitelik yoksa veya CS veya MV'de boş bir dizeyse True döndürür.


IsNumeric

Açıklama:
IsNumeric işlevi, bir ifadenin sayı türü olarak değerlendirilip değerlendirilemeyeceğini belirten bir Boole değeri döndürür.

Söz dizimi:
bool IsNumeric(var Expression)

Açıklamalar:
CNum() öğesinin ifadeyi ayrıştırmak için başarılı olup olmadığını belirlemek için kullanılır.


IsString

Açıklama:
İfade bir dize türüne değerlendirilebilirse, IsString işlevi True olarak değerlendirilir.

Söz dizimi:
bool IsString(var expression)

Açıklamalar:
CStr() öğesinin ifadeyi ayrıştırmak için başarılı olup olmadığını belirlemek için kullanılır.


Ispresent

Açıklama:
İfade Null olmayan ve boş olmayan bir dize olarak değerlendirilirse, IsPresent işlevi true döndürür.

Söz dizimi:
bool IsPresent(var expression)

Açıklamalar:
Bu işlevin tersi IsNullOrEmpty olarak adlandırılır.

Örnek:
Switch(IsPresent([directManager]),[directManager], IsPresent([skiplevelManager]),[skiplevelManager], IsPresent([director]),[director])


Ürün

Açıklama:
Item işlevi, çok değerli bir dizeden/öznitelikten bir öğe döndürür.

Söz dizimi:
var Item(mvstr attribute, num index)

  • öznitelik: çok değerli öznitelik
  • index: çok değerli dizedeki bir öğenin dizinini oluşturun.

Açıklamalar:
Item işlevi contains işleviyle birlikte yararlıdır çünkü ikinci işlev dizini çok değerli öznitelikteki bir öğeye döndürür.

Dizin sınırların dışındaysa hata oluşturur.

Örnek:
Mid(Item([proxyAddresses],Contains([proxyAddresses], "SMTP:")),6)
Birincil e-posta adresini döndürür.


ItemOrNull

Açıklama:
ItemOrNull işlevi, çok değerli bir dizeden/öznitelikten bir öğe döndürür.

Söz dizimi:
var ItemOrNull(mvstr attribute, num index)

  • öznitelik: çok değerli öznitelik
  • index: çok değerli dizedeki bir öğenin dizinini oluşturun.

Açıklamalar:
ItemOrNull işlevi contains işleviyle birlikte yararlıdır çünkü ikinci işlev dizini çok değerli öznitelikteki bir öğeye döndürür.

Dizin sınırların dışındaysa Bir Null değer döndürür.


Katılın

Açıklama:
Join işlevi çok değerli bir dize alır ve her öğe arasına belirtilen ayırıcı eklenmiş tek değerli bir dize döndürür.

Söz dizimi:
str Join(mvstr attribute)
str Join(mvstr attribute, str Delimiter)

  • attribute: Birleştirilecek dizeleri içeren çok değerli öznitelik.
  • sınırlayıcı: Döndürülen dizedeki alt dizeleri ayırmak için kullanılan herhangi bir dize. Atlanırsa, boşluk karakteri (" ") kullanılır. Sınırlayıcı sıfır uzunluklu bir dize ("") veya Hiçbir şey ise, listedeki tüm öğeler sınırlayıcı olmadan birleştirilir.

Açıklamalar
Join ve Split işlevleri arasında eşlik vardır. Join işlevi bir dize dizisi alır ve tek bir dize döndürmek için bir sınırlayıcı dize kullanarak bunları birleştirir. Split işlevi bir dize alır ve bir dize dizisi döndürmek için bunu sınırlayıcıda ayırır. Ancak önemli bir fark, Join'in dizeleri herhangi bir sınırlayıcı dizeyle birleştirebildiği, Böl'un dizeleri yalnızca tek karakterli sınırlayıcı kullanarak ayırabilmesidir.

Örnek:
Join([proxyAddresses],",")
Döndürebilir: "SMTP:john.doe@contoso.com,smtp:jd@contoso.com"


Lcase

Açıklama:
LCase işlevi bir dizedeki tüm karakterleri küçük harfe dönüştürür.

Söz dizimi:
str LCase(str value)

Örnek:
LCase("TeSt")
"test" döndürür.


Left

Açıklama:
Left işlevi, bir dizenin solundan belirtilen sayıda karakter döndürür.

Söz dizimi:
str Left(str string, num NumChars)

  • string: karakter döndürülecek dize
  • NumChars: Dizenin başından (soldan) döndürülecek karakter sayısını tanımlayan bir sayı

Açıklamalar:
Dizedeki ilk numChars karakterlerini içeren bir dize:

  • numChars = 0 ise boş dize döndürün.
  • numChars < 0 ise giriş dizesini döndürün.
  • Dize null ise boş dize döndür.

Dize, numChars içinde belirtilen sayıdan daha az karakter içeriyorsa, dizeyle aynı bir dize (yani, parametre 1'deki tüm karakterleri içeren) döndürülür.

Örnek:
Left("John Doe", 3)
"Joh" değerini döndürür.


Len

Açıklama:
Uzunluk işlevi bir dizedeki karakter sayısını döndürür.

Söz dizimi:
num Len(str value)

Örnek:
Len("John Doe")
8 döndürür


Ltrim

Açıklama:
LTrim işlevi, bir dizedeki baştaki boşlukları kaldırır.

Söz dizimi:
str LTrim(str value)

Örnek:
LTrim(" Test ")
"Test" döndürür


Mid

Açıklama:
Mid işlevi, bir dizedeki belirtilen konumdan belirtilen sayıda karakter döndürür.

Söz dizimi:
str Mid(str string, num start, num NumChars)

  • string: karakter döndürülecek dize
  • start: Dizede karakterlerin döndürüleceği başlangıç konumunu tanımlayan bir sayı
  • NumChars: Dizedeki konumdan döndürülecek karakter sayısını tanımlayan sayı

Açıklamalar:
Dizedeki konumdan başlayarak numChars karakterleri döndürür.
Konumdan başlayarak dizedeki numChars karakterlerini içeren bir dize:

  • numChars = 0 ise boş dize döndürün.
  • numChars < 0 ise giriş dizesini döndürün.
  • Dizenin uzunluğunu başlatırsanız > giriş dizesini döndürür.
  • Başlangıç <= 0 ise, giriş dizesini döndür.
  • Dize null ise boş dize döndür.

Konumdan başlayarak dizede numChar karakteri kalmadıysa, mümkün olduğunca çok karakter döndürülür.

Örnek:
Mid("John Doe", 3, 5)
"hn Do" döndürür.

Mid("John Doe", 6, 999)
"Doe" döndürür


Şimdi

Açıklama:
Now işlevi, bilgisayarınızın sistem tarih ve saatine göre geçerli tarih ve saati belirten bir DateTime döndürür.

Söz dizimi:
dt Now()


NumFromDate

Açıklama:
NumFromDate işlevi AD'nin tarih biçiminde bir tarih döndürür.

Söz dizimi:
num NumFromDate(dt value)

Örnek:
NumFromDate(CDate("2012-01-01 23:00:00"))
129699324000000000 döndürür


PadLeft

Açıklama:
PadLeft işlevi, sağlanan doldurma karakterini kullanarak bir dizeyi belirtilen uzunlukta sol tuş takımına ekler.

Söz dizimi:
str PadLeft(str string, num length, str padCharacter)

  • string: doldurulacak dize.
  • length: İstenen dize uzunluğunu temsil eden bir tamsayı.
  • padCharacter: Tuş takımı karakteri olarak kullanılacak tek bir karakterden oluşan dize

Açıklamalar:

  • Dizenin uzunluğu uzunluk değerinden küçükse padCharacter, uzunluğa eşit bir uzunluğa sahip olana kadar dizenin başına (sol) tekrar tekrar eklenir.
  • PadCharacter bir boşluk karakteri olabilir, ancak null değer olamaz.
  • Dizenin uzunluğu uzunluğa eşit veya ondan büyükse, dize değiştirilmeden döndürülür.
  • Dizenin uzunluğu uzunluk değerinden büyük veya buna eşitse, dizeyle aynı bir dize döndürülür.
  • Dizenin uzunluğu uzunluktan küçükse, padCharacter ile doldurulmuş dizeyi içeren istenen uzunlukta yeni bir dize döndürülür.
  • Dize null ise işlev boş bir dize döndürür.

Örnek:
PadLeft("User", 10, "0")
"000000User" döndürür.


Padright

Açıklama:
PadRight işlevi, sağlanan doldurma karakterini kullanarak bir dizeyi belirtilen uzunlukta sağ tuşa koyar.

Söz dizimi:
str PadRight(str string, num length, str padCharacter)

  • string: doldurulacak dize.
  • length: İstenen dize uzunluğunu temsil eden bir tamsayı.
  • padCharacter: Tuş takımı karakteri olarak kullanılacak tek bir karakterden oluşan dize

Açıklamalar:

  • Dizenin uzunluğu uzunluk değerinden küçükse padCharacter, uzunluğa eşit bir uzunluğa sahip olana kadar dizenin sonuna (sağda) art arda eklenir.
  • padCharacter bir boşluk karakteri olabilir, ancak null değer olamaz.
  • Dizenin uzunluğu uzunluğa eşit veya ondan büyükse, dize değiştirilmeden döndürülür.
  • Dizenin uzunluğu uzunluk değerinden büyük veya buna eşitse, dizeyle aynı bir dize döndürülür.
  • Dizenin uzunluğu uzunluktan küçükse, padCharacter ile doldurulmuş dizeyi içeren istenen uzunlukta yeni bir dize döndürülür.
  • Dize null ise işlev boş bir dize döndürür.

Örnek:
PadRight("User", 10, "0")
"User000000" döndürür.


PCase

Açıklama:
PCase işlevi, bir dizedeki boşlukla ayrılmış her sözcüğün ilk karakterini büyük harfe dönüştürür ve diğer tüm karakterler küçük harfe dönüştürülür.

Söz dizimi:
String PCase(string)

Açıklamalar:

  • Bu işlev şu anda kısaltma gibi tamamen büyük harfli bir sözcüğü dönüştürmek için uygun büyük/küçük harf sağlamaz.

Örnek:
PCase("TEsT")
"Test" döndürür.

PCase(LCase("TEST"))
"Test" döndürür


RandomNum

Açıklama:
RandomNum işlevi, belirtilen aralık arasında rastgele bir sayı döndürür.

Söz dizimi:
num RandomNum(num start, num end)

  • start: Oluşturulacak rastgele değerin alt sınırını tanımlayan bir sayı
  • end: Oluşturulacak rastgele değerin üst sınırını tanımlayan bir sayı

Örnek:
Random(100,999)
734 döndürebilir.


Removeduplicates

Açıklama:
RemoveDuplicates işlevi çok değerli bir dize alır ve her değerin benzersiz olduğundan emin olun.

Söz dizimi:
mvstr RemoveDuplicates(mvstr attribute)

Örnek:
RemoveDuplicates([proxyAddresses])
Tüm yinelenen değerlerin kaldırıldığı temizlenmiş proxyAddress özniteliğini döndürür.


Replace

Açıklama:
Replace işlevi, bir dizenin tüm oluşumlarını başka bir dizeyle değiştirir.

Söz dizimi:
str Replace(str string, str OldValue, str NewValue)

  • string: içindeki değerlerin değiştirilme dizesi.
  • OldValue: Aranacak ve değiştirilecek dize.
  • NewValue: Yerine geçecek dize.

Açıklamalar:
işlevi aşağıdaki özel takma adlarını tanır:

  • \n – Yeni Satır
  • \r – Satır Başı
  • \t – Sekme

Örnek:
Replace([address],"\r\n",", ")
CRLF'yi virgül ve boşlukla değiştirir ve "One Microsoft Way, Redmond, WA, USA" ile sonuçlanabilir


ReplaceChars

Açıklama:
ReplaceChars işlevi ReplacePattern dizesinde bulunan karakterlerin tüm oluşumlarının yerini alır.

Söz dizimi:
str ReplaceChars(str string, str ReplacePattern)

  • string: karakterlerin değiştirilme dizesi.
  • ReplacePattern: Değiştirilme karakterleri içeren bir sözlük içeren dize.

Biçim: {source1}:{target1},{source2}:{target2},{sourceN},{targetN} burada kaynak, değiştirileceği dizeyi bulup hedefleyebileceğiniz karakterdir.

Açıklamalar:

  • işlevi, tanımlı kaynakların her bir örneğini alır ve bunları hedeflerle değiştirir.
  • Kaynak tam olarak bir (Unicode) karakter olmalıdır.
  • Kaynak boş veya bir karakterden uzun olamaz (ayrıştırma hatası).
  • Hedefte ö:oe, β:ss gibi birden çok karakter olabilir.
  • Hedef, karakterin kaldırılması gerektiğini belirten boş olabilir.
  • Kaynak büyük/küçük harfe duyarlıdır ve tam eşleşme olmalıdır.
  • , (virgül) ve : (iki nokta üst üste) ayrılmış karakterlerdir ve bu işlev kullanılarak değiştirilemez.
  • ReplacePattern dizesindeki boşluklar ve diğer beyaz karakterler yoksayılır.

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

ReplaceChars("Räksmörgås",%ReplaceString%)
Raksmorgas döndürür

ReplaceChars("O’Neil",%ReplaceString%)
"ONeil" değerini döndürür, tek bir değer işareti kaldırılacak şekilde tanımlanır.


Açıklama:
Right işlevi, bir dizenin sağından (sonundan) belirtilen sayıda karakter döndürür.

Söz dizimi:
str Right(str string, num NumChars)

  • string: karakter döndürülecek dize
  • NumChars: Dizenin sonundan (sağdan) döndürülecek karakter sayısını tanımlayan bir sayı

Açıklamalar:
NumChars karakterleri dizenin son konumundan döndürülür.

Dizedeki son numChars karakterlerini içeren bir dize:

  • numChars = 0 ise boş dize döndürün.
  • numChars < 0 ise giriş dizesini döndürün.
  • Dize null ise boş dize döndür.

Dize, NumChars içinde belirtilen sayıdan daha az karakter içeriyorsa, dizeyle aynı bir dize döndürülür.

Örnek:
Right("John Doe", 3)
"Doe" döndürür.


Rtrım

Açıklama:
RTrim işlevi bir dizeden sondaki boşlukları kaldırır.

Söz dizimi:
str RTrim(str value)

Örnek:
RTrim(" Test ")
" Test" döndürür.


Seç

Açıklama:
Belirtilen işleve göre çok değerli bir öznitelikteki (veya bir ifadenin çıkışındaki) tüm değerleri işleyin.

Söz dizimi:
mvattr Select(variable item, mvattr attribute, func function)
mvattr Select(variable item, exp expression, func function)

  • item: Çok değerli öznitelikteki bir öğeyi temsil eder
  • öznitelik: çok değerli öznitelik
  • ifade: Bir değer koleksiyonu döndüren ifade
  • condition: özniteliğindeki bir öğeyi işleyebilen herhangi bir işlev

Örnekler:
Select($item,[otherPhone],Replace($item,"-",""))
Kısa çizgi (-) kaldırıldıktan sonra diğer Telefon çok değerli özniteliğindeki tüm değerleri döndürür.


Bölünme

Açıklama:
Split işlevi, sınırlayıcıyla ayrılmış bir dize alır ve bunu çok değerli bir dize yapar.

Söz dizimi:
mvstr Split(str value, str delimiter)
mvstr Split(str value, str delimiter, num limit)

  • value: Ayrılacak sınırlayıcı karaktere sahip dize.
  • sınırlayıcı: Sınırlayıcı olarak kullanılacak tek karakter.
  • limit: döndürebilecek en fazla değer sayısı.

Örnek:
Split("SMTP:john.doe@contoso.com,smtp:jd@contoso.com",",")
proxyAddress özniteliği için yararlı olan 2 öğe içeren çok değerli bir dize döndürür.


StringFromGuid

Açıklama:
StringFromGuid işlevi bir ikili GUID alır ve bunu bir dizeye dönüştürür

Söz dizimi:
str StringFromGuid(bin GUID)


StringFromSid

Açıklama:
StringFromSid işlevi, güvenlik tanımlayıcısı içeren bir bayt dizisini dizeye dönüştürür.

Söz dizimi:
str StringFromSid(bin ObjectSID)


Switch

Açıklama:
Switch işlevi, değerlendirilen koşullara göre tek bir değer döndürmek için kullanılır.

Söz dizimi:
var Switch(exp expr1, var value1[, exp expr2, var value … [, exp expr, var valueN]])

  • expr: Değerlendirmek istediğiniz değişken ifadesi.
  • value: karşılık gelen ifade True ise döndürülecek değer.

Açıklamalar:
Switch işlevi bağımsız değişken listesi, ifade ve değer çiftlerinden oluşur. İfadeler soldan sağa değerlendirilir ve True olarak değerlendirilecek ilk ifadeyle ilişkili değer döndürülür. Parçalar düzgün eşlenmemişse bir çalışma zamanı hatası oluşur.

Örneğin, ifade1 True ise Switch değeri1 döndürür. İfade-1 Yanlış, ancak ifade-2 True ise, Switch 2 değerini döndürür ve bu şekilde devam edilir.

Anahtar, şunun durumunda hiçbir şey döndürmez:

  • İfadelerin hiçbiri True değil.
  • İlk True ifadesi Null olan karşılık gelen bir değere sahiptir.

Switch, yalnızca birini döndürse bile tüm ifadeleri değerlendirir. Bu nedenle istenmeyen yan etkilere dikkat etmelisiniz. Örneğin, herhangi bir ifadenin değerlendirmesi sıfıra bölme hatasıyla sonuçlanırsa bir hata oluşur.

Değer, özel bir dize döndüren Error işlevi de olabilir.

Örnek:
Switch([city] = "London", "English", [city] = "Rome", "Italian", [city] = "Paris", "French", True, Error("Unknown city"))
Bazı büyük şehirlerde konuşulan dili döndürür, aksi takdirde bir Hata döndürür.


Trim

Açıklama:
Trim işlevi bir dizeden baştaki ve sondaki boşlukları kaldırır.

Söz dizimi:
str Trim(str value)

Örnek:
Trim(" Test ")
"Test" döndürür.

Trim([proxyAddresses])
proxyAddress özniteliğindeki her değer için baştaki ve sondaki boşlukları kaldırır.


Ucase

Açıklama:
UCase işlevi, bir dizedeki tüm karakterleri büyük harfe dönüştürür.

Söz dizimi:
str UCase(str string)

Örnek:
UCase("TeSt")
"TEST" döndürür.


Konumu

Açıklama:
Belirli bir koşula göre çok değerli bir öznitelikten (veya bir ifadenin çıkışından) değerlerin bir alt kümesini döndürür.

Söz dizimi:
mvattr Where(variable item, mvattr attribute, exp condition)
mvattr Where(variable item, exp expression, exp condition)

  • item: Çok değerli öznitelikteki bir öğeyi temsil eder
  • öznitelik: çok değerli öznitelik
  • condition: true veya false olarak değerlendirilebilecek herhangi bir ifade
  • ifade: Bir değer koleksiyonu döndüren ifade

Örnek:
Where($item,[userCertificate],CertNotAfter($item)>Now())
Süresi dolmayan çok değerli userCertificate özniteliğindeki sertifika değerlerini döndürür.


With

Açıklama:
With işlevi, karmaşık ifadede bir veya daha fazla kez görünen bir alt ifadeyi temsil eden bir değişken kullanarak karmaşık ifadeyi basitleştirmenin bir yolunu sağlar.

Söz dizimi:With(var variable, exp subExpression, exp complexExpression)

  • değişken: Alt ifadeyi temsil eder.
  • subExpression: değişkenle temsil edilen alt ifade.
  • complexExpression: Karmaşık bir ifade.

Örnek:
With($unExpiredCerts,Where($item,[userCertificate],CertNotAfter($item)>Now()),IIF(Count($unExpiredCerts)>0,$unExpiredCerts,NULL))
İşlevsel olarak şu değere eşdeğerdir:
IIF (Count(Where($item,[userCertificate],CertNotAfter($item)>Now()))>0, Where($item,[userCertificate],CertNotAfter($item)>Now()),NULL)
Bu, userCertificate özniteliğinde yalnızca desteklenmeyen sertifika değerlerini döndürür.


Word

Açıklama:
Word işlevi, kullanılacak sınırlayıcıları ve döndürülecek sözcük numarasını açıklayan parametrelere bağlı olarak bir dizenin içinde yer alan bir sözcüğü döndürür.

Söz dizimi:
str Word(str string, num WordNumber, str delimiters)

  • string: sözcüğün döndürüleceği dize.
  • WordNumber: Hangi sözcük numarasının döndürülmesi gerektiğini tanımlayan bir sayıdır.
  • sınırlayıcılar: Sözcükleri tanımlamak için kullanılması gereken sınırlayıcıları temsil eden bir dize

Açıklamalar:
Sınırlayıcılardaki karakterlerden biriyle ayrılmış dizedeki her karakter dizesi, sözcükler olarak tanımlanır:

  • < Sayı 1 ise, boş dize döndürür.
  • Dize null ise boş dize döndürür.

Dize sayı sözcüklerinden küçükse veya dize sınırlayıcılar tarafından tanımlanan herhangi bir sözcük içermiyorsa boş bir dize döndürülür.

Örnek:
Word("The quick brown fox",3," ")
"kahverengi" döndürür

Word("This,string!has&many separators",3,",!&#")
"has" döndürür

Ek Kaynaklar