Bagikan melalui


Menulis ekspresi untuk pemetaan atribut di ID Microsoft Entra

Saat mengonfigurasi sinkronisasi cloud, salah satu jenis pemetaan atribut yang dapat Anda tentukan adalah pemetaan ekspresi.

Pemetaan ekspresi memungkinkan Anda mengkustomisasi atribut menggunakan ekspresi yang mirip skrip. Hal ini memungkinkan Anda mengubah data lokal menjadi nilai baru atau berbeda. Contohnya, Anda mungkin ingin menggabungkan dua atribut menjadi sebuah atribut tunggal karena atribut tunggal ini digunakan oleh salah satu aplikasi cloud Anda.

Dokumen berikut ini akan membahas ekspresi mirip skrip yang digunakan untuk mengubah data. Ini hanya sebagian dari prosesnya. Selanjutnya Anda harus menggunakan ekspresi ini dan meletakkannya di dalam permintaan web ke penyewa. Untuk informasi selengkapnya lihat Transformasi

Gambaran umum sintaksis

Sintaksis untuk Ekspresi untuk Pemetaan Atribut mengingatkan pada fungsi Visual Basic for Applications (VBA).

  • Seluruh ekspresi harus didefinisikan dalam hal fungsi, yang terdiri dari nama yang diikuti oleh argumen dalam tanda kurung:
    FunctionName(<<argument 1>>,<<argument N>>)

  • Anda dapat menumpuk fungsi dalam satu sama lain. Misalnya:
    FunctionOne(FunctionTwo(<<argument1>>))

  • Anda dapat meneruskan tiga jenis argumen ke dalam fungsi:

    1. Atribut, yang harus diapit dalam kurung siku. Misalnya: [attributeName]
    2. Konstanta string, yang harus diapit dalam tanda kutip ganda. Misalnya: "Amerika Serikat"
    3. Fungsi Lainnya. Misalnya: FunctionOne(<<argument1>>, FunctionTwo(<<argument2>>))
  • Untuk konstanta string, jika Anda membutuhkan backslash ( \ ) atau tanda kutip ( " ) dalam string, harus di-escape dengan simbol backslash ( \ ). Misalnya: "Nama perusahaan: \"Contoso\""

Daftar fungsi

Daftar fungsi Deskripsi
Tambah Mengambil nilai string sumber dan menambahkan akhiran ke ujungnya.
BitAnd Fungsi BitAnd menetapkan bit yang ditentukan terhadap suatu nilai.
CBool Fungsi CBool menampilkan Boolean berdasarkan ekspresi yang dievaluasi
ConvertFromBase64 Fungsi ConvertFromBase64 mengonversi nilai base64 tertentu yang dikodekan menjadi string reguler.
ConvertToBase64 Fungsi ConvertToBase64 mengonversi sebuah string menjadi string base64 Unicode.
ConvertToUTF8Hex Fungsi ConvertToUTF8Hex mengonversi sebuah string menjadi nilai UTF8 Hex yang dikodekan.
Hitung Fungsi Count menampilkan jumlah elemen dalam atribut multinilai
Cstr Fungsi CStr mengonversi menjadi jenis data string.
DateFromNum Fungsi DateFromNum mengonversi nilai dalam format tanggal AD menjadi jenis DateTime.
DNComponent Fungsi DNComponent menampilkan nilai suatu komponen DN tertentu dari sebelah kiri.
Kesalahan Fungsi Error digunakan untuk menampilkan kesalahan kustom.
FormatDateTime Mengambil string tanggal dari suatu format dan mengonversinya menjadi format yang berbeda.
GUID Fungsi Guid menghasilkan GUID baru secara acak.
IIF Fungsi IIF menampilkan salah satu kemungkinan set nilai berdasarkan syarat yang ditentukan.
InStr Fungsi InStr menemukan kemunculan pertama suatu substring dalam sebuah string.
IsNull Jika ekspresi tersebut mengevaluasi Null, maka fungsi IsNull menampilkan nilai true.
IsNullOrEmpty Jika ekspresi adalah null atau string kosong, maka fungsi IsNullOrEmpty menampilkan nilai true.
IsPresent Jika ekspresi tersebut mengevaluasi string yang tidak Null dan tidak kosong, maka fungsi IsPresent menampilkan nilai true.
IsString Jika ekspresi dapat dievaluasi ke dalam jenis string, maka evaluasi fungsi IsString menunjukkan nilai True.
Benda Fungsi Item menampilkan satu item dari string/atribut multinilai.
Gabungkan Join() hampir sama dengan Append(), hanya saja Join() dapat menggabungkan beberapa nilai string sumber menjadi satu string tunggal, dan setiap nilainya akan dipisahkan oleh string pemisah.
Left Fungsi Left menampilkan sejumlah karakter tertentu dari bagian kiri string.
Mid Menampilkan substring dari nilai sumber. Substring adalah string yang hanya berisi beberapa karakter dari string sumber.
NormalizeDiacritics Memerlukan satu string argumen. Menampilkan string, tetapi dengan karakter diakritik apa pun diganti dengan karakter non-diakritik yang setara.
Tidak Membalik nilai boolean dari sumber. Jika nilai sumber adalah "True", menampilkan "False". Jika sebaliknya, menampilkan "True".
RemoveDuplicates Fungsi RemoveDuplicates mengambil string multinilai dan memastikan bahwa setiap nilai bersifat unik.
Menggantikan Menggantikan nilai di dalam string.
SelectUniqueValue Memerlukan minimal dua argumen, yang merupakan aturan pembuatan nilai unik yang ditentukan menggunakan ekspresi. Fungsi ini mengevaluasi setiap aturan lalu memeriksa nilai yang dihasilkan untuk keunikan di aplikasi/direktori target.
SingleAppRoleAssignment Menampilkan appRoleAssignment tunggal dari daftar seluruh appRoleAssignment yang ditetapkan ke pengguna untuk aplikasi yang diberikan.
Split Membelah string menjadi array multinilai menggunakan karakter pemisah tertentu.
StringFromSID Fungsi StringFromSid mengonversi array byte yang berisi pengidentifikasi keamanan menjadi sebuah string.
StripSpaces Menghapus semua karakter spasi (" ") dari string sumber.
Sakelar Saat nilai sumber cocok dengan kunci, menampilkan nilai untuk kunci tersebut.
ToLower Mengambil nilai string sumber dan mengonversinya menjadi huruf kecil menggunakan aturan budaya yang ditentukan.
ToUpper Mengambil nilai string sumber dan mengonversinya menjadi huruf besar menggunakan aturan budaya yang ditentukan.
Pangkas Fungsi Trim menghapus spasi kosong di awal dan akhir suatu string.
Kata Fungsi Word menampilkan kata yang terkandung di dalam suatu string, berdasarkan parameter yang menjelaskan pemisah yang harus digunakan serta jumlah kata yang ditampilkan.

Lampirkan

Fungsi:
Append(source, suffix)

Deskripsi:
Mengambil nilai string sumber dan menambahkan akhiran ke ujungnya.

Parameter:

Nama Diperlukan/Berulang Jenis Catatan
sumber Wajib String Biasanya nama atribut dari objek sumber.
akhiran Wajib String String yang ingin Anda tambahkan ke akhir nilai sumber.

BitAnd

Deskripsi:
Fungsi BitAnd menetapkan bit yang ditentukan terhadap suatu nilai.

Sintaks:
num BitAnd(num value1, num value2)

  • value1, value2: nilai numerik yang seharusnya di-AND secara bersamaan

Keterangan:
Fungsi ini mengubah kedua parameter menjadi representasi biner dan menetapkan sedikit ke:

  • 0 - jika salah satu atau kedua bit terkait dalam value1 dan value2 adalah 0
  • 1 - jika kedua bit terkait adalah 1.

Dengan kata lain, Dengan kata lain, 0 ditampilkan dalam semua kasus kecuali saat bit yang sesuai dari kedua parameter adalah 1.

Contoh:

BitAnd(&HF, &HF7)
Menampilkan 7 karena heksadesimal "F" AND "F7" mengevaluasi nilai ini.


CBool

Deskripsi:
Fungsi CBool menampilkan Boolean berdasarkan ekspresi yang dievaluasi

Sintaks:
bool CBool(exp Expression)

Keterangan:
Jika ekspresi tersebut mengevaluasi nilai yang bukan nol, maka CBool menampilkan nilai True, sebaliknya menampilkan nilai False.

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

Menampilkan nilai True jika kedua atribut memiliki nilai yang sama.


ConvertFromBase64

Deskripsi:
Fungsi ConvertFromBase64 mengonversi nilai base64 tertentu yang dikodekan menjadi string reguler.

Sintaks:
str ConvertFromBase64(str source) - menggunakan Unicode untuk pengodean
str ConvertFromBase64(str source, enum Encoding)

  • sumber: String Base64 yang dikodekan
  • Pengodean: Unicode, ASCII, UTF8

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

Kedua contoh menampilkan "Halo dunia!"


ConvertToBase64

Deskripsi:
Fungsi ConvertToBase64 mengonversi sebuah string menjadi string base64 Unicode.
Mengonversi nilai suatu array bilangan bulat ke representasi string yang setara yang dikodekan dengan digit base-64.

Sintaks:
str ConvertToBase64(str source)

Contoh:
ConvertToBase64("Hello world!")
Mengembalikan "SABlAGwAbABvACAAdwBvAHIAbABkACEA"


ConvertToUTF8Hex

Deskripsi:
Fungsi ConvertToUTF8Hex mengonversi sebuah string menjadi nilai UTF8 Hex yang dikodekan.

Sintaks:
str ConvertToUTF8Hex(str source)

Keterangan:
Format output fungsi ini digunakan oleh MICROSOFT Entra ID sebagai format atribut DN.

Contoh:
ConvertToUTF8Hex("Hello world!")
Mengembalikan 48656C6C6F20776F726C6421


Hitung

Deskripsi:
Fungsi Count menampilkan jumlah elemen dalam atribut multinilai

Sintaks:
num Count(mvstr attribute)


Cstr

Deskripsi:
Fungsi CStr mengonversi menjadi jenis data string.

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

  • nilai: Dapat berupa nilai numerik, atribut referensi, atau Boolean.

Contoh:
CStr([dn])
Dapat menampilkan "cn=Joe,dc=contoso,dc=com"


DateFromNum

Deskripsi:
Fungsi DateFromNum mengonversi nilai dalam format tanggal AD menjadi jenis DateTime.

Sintaks:
dt DateFromNum(num value)

Contoh:
DateFromNum([lastLogonTimestamp])
DateFromNum(129699324000000000)
Mengembalikan DateTime yang mewakili 2012-01-01 23:00:00


DNComponent

Deskripsi:
Fungsi DNComponent menampilkan nilai suatu komponen DN tertentu dari sebelah kiri.

Sintaks:
str DNComponent(ref dn, num ComponentNumber)

  • dn: atribut referensi untuk diartikan
  • ComponentNumber: Komponen dalam DN untuk ditampilkan

Contoh:
DNComponent(CRef([dn]),1)
Jika dn adalah "cn=Joe,ou=…," akan menampilkan Joe


Kesalahan

Deskripsi:
Fungsi Error digunakan untuk menampilkan kesalahan kustom.

Sintaks:
void Error(str ErrorMessage)

Contoh:
IIF(IsPresent([accountName]),[accountName],Error("AccountName is required"))
Jika atribut accountName tidak ada, melemparkan kesalahan pada objek.


FormatDateTime

Fungsi:
FormatDateTime(sumber, inputFormat, outputFormat)

Deskripsi:
Mengambil string tanggal dari suatu format dan mengonversinya menjadi format yang berbeda.

Parameter:

Nama Diperlukan/Berulang Jenis Catatan
sumber Wajib String Biasanya nama atribut dari objek sumber.
inputFormat Wajib String Format yang diharapkan dari nilai sumber. Untuk format yang didukung, lihat /dotnet/standard/base-types/custom-date-and-time-format-strings.
outputFormat Wajib String Format tanggal keluaran.

Guid

Deskripsi:
Fungsi Guid menghasilkan GUID baru secara acak

Sintaks:
str Guid()


IIF

Deskripsi:
Fungsi IIF menampilkan salah satu kemungkinan set nilai berdasarkan syarat yang ditentukan.

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

  • condition: nilai atau ekspresi yang dapat dievaluasi menjadi nilai true atau false.
  • valueIfTrue: Jika condition mengevaluasi nilai true, nilai yang ditampilkan.
  • valueIfFalse: Jika condition mengevaluasi nilai false, nilai yang ditampilkan.

Contoh:
IIF([employeeType]="Intern","t-" & [alias],[alias])
Jika pengguna adalah pegawai magang, menampilkan nama alias pengguna dengan "t-" yang ditambahkan di depan, jika tidak menampilkan nama alias pengguna sesuai yang tertera.


InStr

Deskripsi:
Fungsi InStr menemukan kemunculan pertama suatu substring dalam sebuah string

Sintaks:

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: string untuk dicari
  • stringmatch: string untuk ditemukan
  • start: posisi awal untuk menemukan substring
  • compare: vbTextCompare atau vbBinaryCompare

Keterangan:
Menampilkan posisi di mana substring ditemukan atau 0 jika tidak ditemukan.

Contoh:
InStr("The quick brown fox","quick")
Mengevaluasi ke 5

InStr("repEated","e",3,vbBinaryCompare)
Mengevaluasi ke 7


IsNull

Deskripsi:
Jika ekspresi tersebut mengevaluasi Null, maka fungsi IsNull menampilkan nilai true.

Sintaks:
bool IsNull(var Expression)

Keterangan:
Untuk atribut, Null dinyatakan oleh tidak adanya atribut.

Contoh:
IsNull([displayName])
Menampilkan nilai True jika atribut tidak ada dalam CS atau MV.


IsNullOrEmpty

Deskripsi:
Jika ekspresi adalah null atau string kosong, maka fungsi IsNullOrEmpty menampilkan nilai true.

Sintaks:
bool IsNullOrEmpty(var Expression)

Keterangan:
Untuk atribut, ini akan mengevaluasi ke nilai True jika atribut tidak ada atau ada tetapi merupakan string kosong.
Inversi dari fungsi ini bernama IsPresent.

Contoh:
IsNullOrEmpty([displayName])
Menampilkan nilai True jika atribut tidak ada atau merupakan string kosong dalam CS atau MV.


IsPresent

Deskripsi:
Jika ekspresi tersebut mengevaluasi string yang tidak Null dan tidak kosong, maka fungsi IsPresent menampilkan nilai true.

Sintaks:
bool IsPresent(var expression)

Keterangan:
Inversi dari fungsi ini bernama IsNullOrEmpty.

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


Item

Deskripsi:
Fungsi Item menampilkan satu item dari string/atribut multinilai.

Sintaks:
var Item(mvstr attribute, num index)

  • attribute: atribut multinilai
  • index: indeks suatu item dalam string multinilai.

Keterangan:
Fungsi Item berguna saat dipadukan dengan fungsi Contains karena fungsi Item menampilkan indeks suatu item dalam atribut multinilai.

Melemparkan kesalahan jika indeks berada di luar jangkauan.

Contoh:
Mid(Item([proxyAddresses],Contains([proxyAddresses], "SMTP:")),6)
Menampilkan alamat email utama.


IsString

Deskripsi:
Jika ekspresi dapat dievaluasi ke dalam jenis string, maka evaluasi fungsi IsString menunjukkan nilai True.

Sintaks:
bool IsString(var expression)

Keterangan:
Digunakan untuk menentukan jika CStr() dapat berhasil mengurai ekspresi tersebut.


Bergabung

Fungsi:
Join(separator, source1, source2, )

Deskripsi:
Join() hampir sama dengan Append(), hanya saja Join() dapat menggabungkan beberapa nilai string sumber menjadi satu string tunggal, dan setiap nilainya akan dipisahkan oleh string pemisah.

Jika salah satu nilai sumber merupakan atribut multinilai, maka setiap nilai dalam atribut tersebut akan digabungkan, dipisahkan oleh nilai pemisah.

Parameter:

Nama Diperlukan/Berulang Jenis Catatan
pemisah Wajib String String yang digunakan untuk memisahkan nilai sumber saat disusun menjadi satu string. Bisa berupa "" jika tidak diperlukan pemisah.
source1 … sourceN Diperlukan, frekuensi variabel String Nilai string yang akan digabungkan.

Left

Deskripsi:
Fungsi Left menampilkan sejumlah karakter tertentu dari bagian kiri string.

Sintaks:
str Left(str string, num NumChars)

  • string: string yang akan menampilkan karakter
  • NumChars: angka yang menunjukkan jumlah karakter untuk ditampilkan dari awal (kiri) string

Keterangan:
String yang berisi karakter numChars pertama dalam string:

  • Jika numChars = 0, mengembalikan string kosong.
  • Jika numChars < 0, kembalikan string input.
  • Jika string null, mengembalikan string kosong.

Jika string berisi lebih sedikit karakter daripada jumlah yang ditentukan dalam numChars, string yang identik dengan string (yaitu, berisi semua karakter dalam parameter 1) ditampilkan.

Contoh:
Left("John Doe", 3)
Menampilkan Joh.


Mid

Fungsi:
Mid(source, start, length)

Deskripsi:
Menampilkan substring dari nilai sumber. Substring adalah string yang hanya berisi beberapa karakter dari string sumber.

Parameter:

Nama Diperlukan/Berulang Jenis Catatan
sumber Wajib String Biasanya nama atribut.
mulai Wajib Integer Indeks dalam string sumber tempat substring harus dimulai. Karakter pertama dalam string akan memiliki indeks 1, karakter kedua akan memiliki indeks 2, dan seterusnya.
length Wajib Integer Panjang substring. Jika panjang berakhir di luar string sumber, fungsi akan menampilkan substring dari indeks awal hingga akhir string sumber.

NormalizeDiacritics

Fungsi:
NormalizeDiacritics(source)

Deskripsi:
Memerlukan satu string argumen. Menampilkan string, tetapi dengan karakter diakritik apa pun diganti dengan karakter non-diakritik yang setara. Biasanya digunakan untuk mengonversi nama depan dan nama belakang yang berisi karakter diakritik (tanda aksen) menjadi nilai hukum yang dapat digunakan dalam berbagai pengidentifikasi pengguna seperti nama prinsipal pengguna, nama akun SAM, dan alamat email.

Parameter:

Nama Diperlukan/Berulang Jenis Catatan
sumber Wajib String Biasanya atribut nama depan atau nama belakang.

Not

Fungsi:
Not(source)

Deskripsi:
Membalik nilai boolean dari sumber. Jika nilai sumber adalah "True", menampilkan "False". Jika sebaliknya, menampilkan "True".

Parameter:

Nama Diperlukan/Berulang Jenis Catatan
sumber Wajib String Boolean Nilai sumber yang diharapkan adalah "True" atau "False".

RemoveDuplicates

Deskripsi:
Fungsi RemoveDuplicates mengambil string multinilai dan memastikan bahwa setiap nilai bersifat unik.

Sintaks:
mvstr RemoveDuplicates(mvstr attribute)

Contoh:
RemoveDuplicates([proxyAddresses])
Menampilkan atribut proxyAddress yang sudah dibersihkan di mana semua nilai duplikat sudah dihapus.


Menggantikan

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

Deskripsi:
Menggantikan nilai di dalam string. Cara kerjanya berbeda tergantung pada parameter yang disediakan:

  • Saat oldValue dan replacementValue disediakan:

    • Mengganti semua kemunculan oldValue di sumber dengan replacementValue
  • Saat oldValue dan template disediakan:

    • Mengganti semua kemunculan OldValue dalam templat dengan nilai sumber
  • Saat regexPattern dan replacementValue disediakan:

    • Fungsi ini menerapkan regexPattern ke string sumber dan Anda dapat menggunakan nama grup regex untuk membuat string untuk replacementValue
  • Saat regexPattern, regexGroupName, replacementValue disediakan:

    • Fungsi ini menerapkan regexPattern ke string sumber dan mengganti semua nilai yang cocok dengan regexGroupName dengan replacementValue
  • Saat regexPattern, regexGroupName, replacementAttributeName disediakan:

    • Jika sumber tidak memiliki nilai, sumber ditampilkan
    • Jika sumber memiliki nilai, fungsi menerapkan regexPattern ke string sumber dan mengganti semua nilai yang cocok dengan regexGroupName dengan nilai yang terkait dengan replacementAttributeName

Parameter:

Nama Diperlukan/Berulang Jenis Catatan
sumber Wajib String Biasanya nama atribut dari objek sumber.
oldValue Opsional String Nilai yang akan digantikan di sumber atau templat.
regexPattern Opsional String Pola regex untuk nilai yang akan digantikan di sumber. Atau, saat replacementPropertyName digunakan, pola untuk mengekstrak nilai dari replacementPropertyName.
regexGroupName Opsional String Nama grup di dalam regexPattern. Hanya saat replacementPropertyName digunakan, kami akan mengekstrak nilai grup ini sebagai replacementValue dari replacementPropertyName.
replacementValue Opsional String Nilai baru untuk mengganti nilai lama.
replacementAttributeName Opsional String Nama atribut yang akan digunakan untuk nilai pengganti
templat Opsional String Saat nilai templat disediakan, kami akan mencari oldValue di dalam templat dan menggantinya dengan nilai sumber.

SelectUniqueValue

Fungsi:
SelectUniqueValue(uniqueValueRule1, uniqueValueRule2, uniqueValueRule3, )

Deskripsi:
Memerlukan minimal dua argumen, yang merupakan aturan pembuatan nilai unik yang ditentukan menggunakan ekspresi. Fungsi ini mengevaluasi setiap aturan lalu memeriksa nilai yang dihasilkan untuk keunikan di aplikasi/direktori target. Nilai unik pertama yang ditemukan adalah yang akan ditampilkan. Jika semua nilai sudah ada di target, entri akan di-escrow dan alasannya dicatat di log audit. Tidak ada batas atas untuk jumlah argumen yang dapat disediakan.

Catatan

  • Ini adalah fungsi tingkat atas, tidak dapat ditumpuk.
  • Fungsi ini tidak dapat diterapkan pada atribut yang memiliki prioritas yang cocok.
  • Fungsi ini hanya dimaksudkan untuk digunakan dalam pembuatan entri. Saat menggunakannya dengan atribut, atur properti Terapkan Pemetaan ke Hanya selama pembuatan objek.
  • Saat ini, fungsi ini hanya didukung untuk "Provisi Pengguna Workday dan SuccessFactors ke Active Directory". Tidak dapat digunakan dengan aplikasi provisi lainnya.

Parameter:

Nama Diperlukan/Berulang Jenis Catatan
uniqueValueRule1 … uniqueValueRuleN Setidaknya 2 diperlukan, tidak ada batas atas String Daftar aturan pembuatan nilai unik untuk dievaluasi.

SingleAppRoleAssignment

Fungsi:
SingleAppRoleAssignment([appRoleAssignments])

Deskripsi:
Menampilkan appRoleAssignment tunggal dari daftar seluruh appRoleAssignment yang ditetapkan ke pengguna untuk aplikasi yang diberikan. Fungsi ini diperlukan untuk mengonversi objek appRoleAssignments menjadi string nama peran tunggal. Perhatikan bahwa praktik terbaik adalah untuk memastikan hanya satu appRoleAssignment yang ditetapkan untuk satu pengguna pada satu waktu, dan jika beberapa peran ditetapkan, string peran yang ditampilkan mungkin tidak dapat diprediksi.

Parameter:

Nama Diperlukan/Berulang Jenis Catatan
[appRoleAssignments] Wajib String Objek [appRoleAssignments].

Split

Fungsi:
Split(source, delimiter)

Deskripsi:
Membelah string menjadi array multinilai menggunakan karakter pemisah tertentu.

Parameter:

Nama Diperlukan/Berulang Jenis Catatan
sumber Wajib String Nilai sumber yang akan diperbarui.
delimiter Wajib String Menentukan karakter yang akan digunakan untuk memisahkan string (misalnya: ",")

StringFromSid

Deskripsi:
Fungsi StringFromSid mengonversi array byte yang berisi pengidentifikasi keamanan menjadi sebuah string.

Sintaks:
str StringFromSid(bin ObjectSID)


StripSpaces

Fungsi:
StripSpaces(source)

Deskripsi:
Menghapus semua karakter spasi (" ") dari string sumber.

Parameter:

Nama Diperlukan/Berulang Jenis Catatan
sumber Wajib String Nilai sumber yang akan diperbarui.

Mengalihkan

Fungsi:
Switch(source, defaultValue, key1, value1, key2, value2, )

Deskripsi:
Saat nilai sumber cocok dengan kunci, menampilkan nilai untuk kunci tersebut. Jika nilai sumber tidak cocok dengan kunci apa pun, menampilkan defaultValue. Parameter kunci dan nilai harus selalu berpasangan. Fungsi ini selalu mengharapkan jumlah parameter yang genap.

Parameter:

Nama Diperlukan/Berulang Jenis Catatan
sumber Wajib String Nilai sumber yang akan diperiksa.
defaultValue Opsional String Nilai default yang akan digunakan saat sumber tidak cocok dengan kunci apa pun. Bisa berupa string kosong ("").
kunci Wajib String Kunci untuk dibandingkan dengan nilai sumber.
value Wajib String Nilai pengganti untuk sumber yang cocok dengan kunci.

ToLower

Fungsi:
ToLower(source, culture)

Deskripsi:
Mengambil nilai string sumber dan mengonversinya menjadi huruf kecil menggunakan aturan budaya yang ditentukan. Jika tidak ada info budaya yang ditentukan, maka akan menggunakan budaya Invariant.

Parameter:

Nama Diperlukan/Berulang Jenis Catatan
sumber Wajib String Biasanya nama atribut dari objek sumber
budaya Opsional String Format untuk nama budaya berdasarkan RFC 4646 adalah languagecode2-country/regioncode2, yang mana languagecode2 adalah kode bahasa dua huruf dan country/regioncode2 adalah kode subkultur dua huruf. Contohnya mencakup ja-JP untuk bahasa Jepang (Jepang) dan en-US untuk bahasa Inggris (Amerika Serikat). Jika kode bahasa dua huruf tidak tersedia, kode tiga huruf yang berasal dari ISO 639-2 digunakan.

ToUpper

Fungsi:
ToUpper(source, culture)

Deskripsi:
Mengambil nilai string sumber dan mengonversinya menjadi huruf besar menggunakan aturan budaya yang ditentukan. Jika tidak ada info budaya yang ditentukan, maka akan menggunakan budaya Invariant.

Parameter:

Nama Diperlukan/Berulang Jenis Catatan
sumber Wajib String Biasanya nama atribut dari objek sumber.
budaya Opsional String Format untuk nama budaya berdasarkan RFC 4646 adalah languagecode2-country/regioncode2, yang mana languagecode2 adalah kode bahasa dua huruf dan country/regioncode2 adalah kode subkultur dua huruf. Contohnya mencakup ja-JP untuk bahasa Jepang (Jepang) dan en-US untuk bahasa Inggris (Amerika Serikat). Jika kode bahasa dua huruf tidak tersedia, kode tiga huruf yang berasal dari ISO 639-2 digunakan.

Trim

Deskripsi:
Fungsi Trim menghapus spasi kosong di awal dan akhir suatu string.

Sintaks:
str Trim(str value)

Contoh:
Trim(" Test ")
Mengembalikan "Pengujian".

Trim([proxyAddresses])
Menghapus spasi di depan dan di belakang untuk setiap nilai dalam atribut proxyAddress.


Word

Deskripsi:
Fungsi Word menampilkan kata yang terkandung di dalam suatu string, berdasarkan parameter yang menjelaskan pemisah yang harus digunakan serta jumlah kata yang ditampilkan.

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

  • string: string untuk menampilkan kata.
  • WordNumber: angka yang mengidentifikasi angka kata mana yang akan ditampilkan.
  • delimiters: string yang mewakili pemisah yang harus digunakan untuk mengidentifikasi kata

Keterangan:
Setiap string karakter dalam string yang dipisahkan oleh salah satu karakter dalam pemisah diidentifikasi sebagai kata:

  • Jika jumlah < 1, menampilkan string kosong.
  • Jika string null, menampilkan string kosong.

Jika string berisi kurang dari kata angka, atau string tidak berisi kata apa pun yang diidentifikasi oleh pemisah, string kosong akan ditampilkan.

Contoh:
Word("The quick brown fox",3," ")
Menampilkan "coklat"

Word("This,string!has&many separators",3,",!&#")
Akan menampilkan "telah"

Contoh

Mengosongkan nama domain yang diketahui

Anda perlu mengosongkan nama domain yang diketahui dari email pengguna untuk mendapatkan nama pengguna.
Misalnya, jika domain adalah "contoso.com", Anda dapat menggunakan ekspresi berikut:

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

Sampel input / output:

  • INPUT (mail): "john.doe@contoso.com"
  • OUTPUT: "john.doe"

Menambahkan akhiran konstanta ke nama pengguna

Jika menggunakan Salesforce Sandbox, Anda mungkin perlu menambahkan akhiran tambahan ke semua nama pengguna Anda sebelum melakukan sinkronisasi.

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

Sampel input/output:

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

Menghasilkan alias pengguna dengan menggabungkan bagian dari nama depan dan belakang

Anda perlu menghasilkan alias pengguna dengan mengambil 3 huruf pertama nama depan pengguna dan 5 huruf pertama nama belakang pengguna.

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

Sampel input/output:

  • INPUT (givenName): "John"
  • INPUT (surname): "Doe"
  • OUTPUT: "JohDoe"

Menghapus diakritik dari string

Anda perlu mengganti karakter yang berisi tanda aksen dengan karakter tanpa tanda aksen yang setara.

Ekspresi:
NormalizeDiacritics([givenName])

Sampel input/output:

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

Memisahkan string menjadi array multinilai

Anda perlu mengambil daftar string yang dipisahkan oleh koma, dan membaginya ke dalam array yang dapat dipasangkan ke dalam atribut multinilai seperti atribut PermissionSets dari Salesforce. Dalam contoh ini, daftar set izin telah diisi di extensionAttribute5 di ID Microsoft Entra.

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

Sampel input/output:

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

Tanggal keluaran sebagai string dalam format tertentu

Anda ingin mengirimkan tanggal ke aplikasi SaaS dalam format tertentu.
Contohnya, Anda ingin memformat tanggal untuk ServiceNow.

Ekspresi:

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

Sampel input/output:

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

Mengganti nilai berdasarkan kumpulan opsi yang sudah ditentukan sebelumnya

Anda perlu menentukan zona waktu pengguna berdasarkan kode status yang disimpan di ID Microsoft Entra.
Jika kode status tidak cocok dengan salah satu opsi yang telah ditentukan sebelumnya, gunakan nilai default "Australia/Sydney".

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

Sampel input/output:

  • INPUT (state): "QLD"
  • OUTPUT: "Australia/Brisbane"

Mengganti karakter menggunakan ekspresi reguler

Anda perlu menemukan karakter yang cocok dengan nilai ekspresi reguler dan menghapusnya.

Ekspresi:

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

Sampel input/output:

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

Mengonversi nilai userPrincipalName (UPN) yang dihasilkan menjadi huruf kecil

Dalam contoh di bawah, nilai UPN yang dihasilkan melalui penggabungan bidang sumber PreferredFirstName dan PreferredLastName dan fungsi ToLower beroperasi pada string yang dihasilkan untuk mengonversi semua karakter menjadi huruf kecil.

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

Sampel input/output:

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

Menghasilkan nilai unik untuk atribut userPrincipalName (UPN)

Berdasarkan nama depan, nama tengah, dan nama belakang pengguna, Anda perlu menghasilkan nilai untuk atribut UPN dan memeriksa keunikannya pada direktori AD target sebelum menetapkan nilai tersebut ke atribut UPN.

Ekspresi:

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

Sampel input/output:

  • INPUT (PreferredFirstName): "John"
  • INPUT (PreferredLastName): "Smith"
  • OUTPUT: "John.Smith@contoso.com" jika nilai UPN John.Smith@contoso.com belum ada di direktori
  • OUTPUT: "J.Smith@contoso.com" jika nilai UPN John.Smith@contoso.com sudah ada di direktori
  • OUTPUT: "Jo.Smith@contoso.com" jika dua nilai UPN di atas sudah ada di direktori

Langkah berikutnya