Kelompok fungsi ini melengkapi bahasa ekspresi. Setiap kelompok di bawah mencantumkan fungsi, parameter, tipe nilai yang dikembalikan, dan contohnya.
1. Fungsi teks dan pola
Fungsi ekspresi reguler
Fungsi untuk mencocokkan dan mengganti pola menggunakan ekspresi reguler.
regexMatch
(text, pattern) Memeriksa apakah string cocok dengan pola ekspresi reguler.
| Parameter | | text | string | String yang akan diuji | | pattern | string | Pola ekspresi reguler | |
| Nilai yang dikembalikan | boolean |
| Contoh | regexMatch("abc123", "[0-9]+") → true regexMatch("hello", "^[0-9]+$") → false |
| Lihat juga | |
regexReplace
(text, pattern, replacement) Mengganti setiap bagian string yang cocok dengan pola ekspresi reguler.
| Parameter | | text | string | String masukan | | pattern | string | Pola ekspresi reguler yang dicocokkan | | replacement | string | String pengganti | |
| Nilai yang dikembalikan | string |
| Contoh | regexReplace("abc123def456", "[0-9]+", "#") → abc#def# regexReplace("hello world", "\s+", " ") → hello world |
| Lihat juga | |
(text, pattern, group?) Mengambil kecocokan pertama dari pola ekspresi reguler dalam string. Anda juga bisa mengambil grup tangkapan tertentu.
| Parameter | | text | string | String masukan | | pattern | string | Pola ekspresi reguler | | group (opsional) | number | Indeks grup tangkapan; 0 mengembalikan seluruh kecocokan (bawaan: 0) | |
| Nilai yang dikembalikan | string |
| Contoh | regexExtract("abc123def", "[0-9]+") → 123 regexExtract("2025-01-15", "(\d{4})-(\d{2})", 1) → 2025 |
| Lihat juga | |
Fungsi pengolahan teks
Fungsi tambahan untuk mengolah teks.
repeat
(text, count) Mengulang teks sebanyak jumlah yang ditentukan.
| Parameter | | text | string | Teks yang akan diulang | | count | number | Jumlah pengulangan | |
| Nilai yang dikembalikan | string |
| Contoh | repeat("ab", 3) → "ababab" |
countOccurrences
(text, search) Menghitung kemunculan substring yang tidak saling tumpang tindih.
| Parameter | | text | string | Teks yang dicari | | search | string | Substring yang dicari | |
| Nilai yang dikembalikan | angka |
| Contoh | countOccurrences("abcabc", "abc") → 2 |
split
(text, delimiter, index) Memisahkan teks berdasarkan pemisah dan menghasilkan bagian ke-n, dimulai dari 1.
| Parameter | | text | string | Teks yang akan dipisahkan | | delimiter | string | Pemisah | | index | number | Indeks bagian yang akan dihasilkan, dimulai dari 1 | |
| Nilai yang dikembalikan | string |
| Contoh | split("a-b-c", "-", 2) → "b" |
exact
(a, b) Membandingkan teks dengan memperhatikan huruf besar dan kecil. Menghasilkan true jika kedua teks sama persis.
| Parameter | | a | string | Teks pertama | | b | string | Teks kedua | |
| Nilai yang dikembalikan | boolean |
| Contoh | exact("Hello", "hello") → false |
2. Fungsi tanggal dan durasi
Fungsi bantu durasi
Mengubah durasi dalam milidetik ke satuan waktu yang umum.
durationInDays
(ms) Mengubah milidetik menjadi hari.
| Parameter | | ms | number | Durasi dalam milidetik | |
| Nilai yang dikembalikan | angka |
| Contoh | durationInDays(86400000) → 1 durationInDays(caseThroughputTime) → Waktu penyelesaian dalam hari |
durationInHours
(ms) Mengubah milidetik menjadi jam.
| Parameter | | ms | number | Durasi dalam milidetik | |
| Nilai yang dikembalikan | angka |
| Contoh | durationInHours(3600000) → 1 durationInHours(stepDuration) → Durasi langkah dalam jam |
durationInMinutes
(ms) Mengubah milidetik menjadi menit.
| Parameter | | ms | number | Durasi dalam milidetik | |
| Nilai yang dikembalikan | angka |
| Contoh | durationInMinutes(60000) → 1 durationInMinutes(waitingTime) → Waktu tunggu dalam menit |
durationInSeconds
(ms) Mengubah milidetik menjadi detik.
| Parameter | | ms | number | Durasi dalam milidetik | |
| Nilai yang dikembalikan | angka |
| Contoh | durationInSeconds(1500) → 1.5 |
Membuat tanggal
Membuat tanggal dari komponennya atau membaca teks sebagai tanggal.
date
(year, month, day) Membuat tanggal UTC dari tahun, bulan, dan hari.
| Parameter | | year | number | Tahun | | month | number | Bulan (1-12) | | day | number | Tanggal dalam bulan | |
| Nilai yang dikembalikan | tanggal |
| Contoh | date(2024, 1, 1) → 1704067200000 date(2024, 6, 15) → 15 Juni 2024 |
toDate
(value, format?) Membaca nilai sebagai tanggal. Menerima angka, seperti milidetik sejak epoch, atau teks.
| Parameter | | value | any | Nilai yang akan diubah menjadi tanggal | | format (opsional) | string | Pola format tanggal (opsional) | |
| Nilai yang dikembalikan | tanggal |
| Contoh | toDate(1704067200000) → 1704067200000 toDate("2024-01-15") → 15 Januari 2024 toDate("31/12/2024 23:45:59", "dd/MM/yyyy HH:mm:ss") → 1735688759000 |
| Catatan | Jika format ditentukan, gunakan token yang didukung oleh formatDate. Tanggal dibaca berdasarkan UTC. |
today
() Menghasilkan tanggal saat ini pada tengah malam UTC.
| Nilai yang dikembalikan | tanggal |
| Contoh | today() → Tanggal saat ini pada tengah malam |
Batas periode tanggal
Memotong atau membulatkan tanggal ke batas periode.
startOfDay
(date) Memotong tanggal ke awal hari (tengah malam).
| Parameter | | date | date | Tanggal yang akan dipotong | |
| Nilai yang dikembalikan | tanggal |
| Contoh | startOfDay(StartTime) → Tengah malam pada hari yang sama |
startOfWeek
(date) Menghasilkan awal minggu (Senin).
| Parameter | |
| Nilai yang dikembalikan | tanggal |
| Contoh | startOfWeek(StartTime) → Senin pada minggu yang sama |
startOfMonth
(date) Menghasilkan hari pertama bulan tersebut.
| Parameter | |
| Nilai yang dikembalikan | tanggal |
| Contoh | startOfMonth(StartTime) → Hari pertama bulan tersebut |
startOfYear
(date) Menghasilkan 1 Januari pada tahun tersebut.
| Parameter | |
| Nilai yang dikembalikan | tanggal |
| Contoh | startOfYear(StartTime) → 1 Januari |
endOfWeek
(date) Menghasilkan akhir minggu (Minggu pukul 23:59:59).
| Parameter | |
| Nilai yang dikembalikan | tanggal |
| Contoh | endOfWeek(StartTime) → Akhir hari Minggu |
endOfMonth
(date) Menghasilkan akhir bulan pada pukul 23:59:59.
| Parameter | |
| Nilai yang dikembalikan | tanggal |
| Contoh | endOfMonth(StartTime) → Hari terakhir bulan tersebut, pada akhir hari |
endOfYear
(date) Menghasilkan 31 Desember pukul 23:59:59.
| Parameter | |
| Nilai yang dikembalikan | tanggal |
| Contoh | endOfYear(StartTime) → 31 Desember, pada akhir hari |
Pintasan tanggal
Fungsi praktis untuk menghitung selisih dan penambahan tanggal yang umum.
daysBetween
(date1, date2) Menghasilkan selisih antara dua tanggal dalam hari.
| Parameter | | date1 | date | Tanggal mulai | | date2 | date | Tanggal akhir | |
| Nilai yang dikembalikan | angka |
| Contoh | daysBetween(StartTime, EndTime) → Durasi dalam hari antara dua tanggal |
hoursBetween
(date1, date2) Menghasilkan selisih antara dua tanggal dalam jam.
| Parameter | | date1 | date | Tanggal mulai | | date2 | date | Tanggal akhir | |
| Nilai yang dikembalikan | angka |
| Contoh | hoursBetween(StartTime, EndTime) → Durasi dalam jam antara dua tanggal |
minutesBetween
(date1, date2) Menghasilkan selisih antara dua tanggal dalam menit.
| Parameter | | date1 | date | Tanggal mulai | | date2 | date | Tanggal akhir | |
| Nilai yang dikembalikan | angka |
| Contoh | minutesBetween(StartTime, EndTime) → Durasi dalam menit antara dua tanggal |
secondsBetween
(date1, date2) Menghasilkan selisih antara dua tanggal dalam detik.
| Parameter | | date1 | date | Tanggal mulai | | date2 | date | Tanggal akhir | |
| Nilai yang dikembalikan | angka |
| Contoh | secondsBetween(StartTime, EndTime) → Durasi dalam detik antara dua tanggal |
addDays
(date, days) Menambahkan hari ke tanggal.
| Parameter | | date | date | Tanggal dasar | | days | number | Jumlah hari yang ditambahkan | |
| Nilai yang dikembalikan | tanggal |
| Contoh | addDays(StartTime, 5) → Tanggal 5 hari kemudian |
addHours
(date, hours) Menambahkan jam ke tanggal.
| Parameter | | date | date | Tanggal dasar | | hours | number | Jumlah jam yang ditambahkan | |
| Nilai yang dikembalikan | tanggal |
| Contoh | addHours(StartTime, 3) → Tanggal 3 jam kemudian |
addMinutes
(date, minutes) Menambahkan menit ke tanggal.
| Parameter | | date | date | Tanggal dasar | | minutes | number | Jumlah menit yang ditambahkan | |
| Nilai yang dikembalikan | tanggal |
| Contoh | addMinutes(StartTime, 30) → Tanggal 30 menit kemudian |
addSeconds
(date, seconds) Menambahkan detik ke tanggal.
| Parameter | | date | date | Tanggal dasar | | seconds | number | Jumlah detik yang ditambahkan | |
| Nilai yang dikembalikan | tanggal |
| Contoh | addSeconds(StartTime, 45) → Tanggal 45 detik kemudian |
endOfDay
(date) Menghasilkan waktu akhir hari (23:59:59.999) untuk tanggal tertentu.
| Parameter | |
| Nilai yang dikembalikan | tanggal |
| Contoh | endOfDay(StartTime) → 23:59:59 pada hari yang sama |
startOfQuarter
(date) Menghasilkan hari pertama kuartal untuk tanggal tertentu.
| Parameter | |
| Nilai yang dikembalikan | tanggal |
| Contoh | startOfQuarter(StartTime) → 2024-04-01 untuk tanggal di bulan Juni |
endOfQuarter
(date) Menghasilkan waktu terakhir kuartal untuk tanggal tertentu.
| Parameter | |
| Nilai yang dikembalikan | tanggal |
| Contoh | endOfQuarter(StartTime) → 2024-06-30T23:59:59Z untuk tanggal di bulan Juni |
3. Fungsi logika
Kondisi dengan beberapa pilihan
Mencocokkan nilai dengan beberapa kondisi.
switch
(value, match1, result1, ..., default?) Mencocokkan nilai dengan daftar kondisi, lalu menghasilkan hasil yang sesuai. Mirip dengan fungsi if dengan beberapa pilihan.
| Parameter | | value | any | Nilai yang dicocokkan | | match1, result1, ... | any | Pasangan nilai pencocokan dan hasil | | default (opsional) | any | Hasil default jika tidak ada yang cocok (opsional) | |
| Nilai yang dikembalikan | apa pun |
| Contoh | switch("a", "a", 1, "b", 2, 0) → 1 switch(Status, "Open", 1, "Closed", 2, 0) → 1 jika Open, 2 jika Closed, selain itu 0 |
| Catatan | Menerima argumen dalam jumlah bervariasi: switch(value, match1, result1, match2, result2, ..., default) |
Pemeriksaan rentang
Memeriksa apakah nilai berada dalam rentang atau membatasinya ke rentang tertentu.
between
(value, low, high) Menghasilkan true jika nilai berada di antara batas bawah dan batas atas, termasuk keduanya.
| Parameter | | value | number | Nilai yang diperiksa | | low | number | Batas bawah | | high | number | Batas atas | |
| Nilai yang dikembalikan | boolean |
| Contoh | between(Amount, 100, 1000) → true jika Amount berada di antara 100 dan 1000 |
clamp
(value, min, max) Membatasi nilai ke rentang [min, max].
| Parameter | | value | number | Nilai yang akan dibatasi | | min | number | Nilai minimum | | max | number | Nilai maksimum | |
| Nilai yang dikembalikan | angka |
| Contoh | clamp(Score, 0, 100) → Score dibatasi ke rentang 0-100 |
Pengikatan let
Memberi nama pada nilai sementara agar dapat digunakan dalam ekspresi yang kompleks.
let
(name, value, body) Memberi nama pada sebuah nilai, lalu mengevaluasi ekspresi isi dengan nama tersebut tersedia.
| Parameter | | name | string | Nama variabel (literal string) | | value | any | Ekspresi yang akan ditetapkan | | body | any | Ekspresi yang menggunakan variabel tersebut | |
| Nilai yang dikembalikan | apa pun |
| Contoh | let("avg", caseAvg(Amount), Amount - avg) → Selisih dari rata-rata kasus let("x", Amount * 2, let("y", x + 3, x * y)) → Pengikatan let bertingkat |
4. Fungsi alur, aktivitas, dan SLA
Predikat aktivitas pendahulu
Memeriksa apakah suatu aktivitas didahului aktivitas lain dalam sebuah kasus.
directlyPrecededBy
(activity, predecessor) Menghasilkan true jika aktivitas kedua tepat mendahului aktivitas pertama dalam kasus tersebut.
| Parameter | | activity | string | Aktivitas yang diperiksa | | predecessor | string | Aktivitas pendahulu yang diharapkan | |
| Nilai yang dikembalikan | boolean |
| Contoh | directlyPrecededBy("Approve", "Review") → true jika Review tepat mendahului Approve |
| Lihat juga | |
eventuallyPrecededBy
(activity, predecessor) Menghasilkan true jika aktivitas kedua mendahului aktivitas pertama pada tahap sebelumnya dalam kasus tersebut.
| Parameter | | activity | string | Aktivitas yang diperiksa | | predecessor | string | Aktivitas pendahulu yang diharapkan | |
| Nilai yang dikembalikan | boolean |
| Contoh | eventuallyPrecededBy("Ship", "Order") → true jika Order muncul sebelum Ship dalam kasus tersebut |
| Lihat juga | |
Deteksi pengerjaan ulang
Menemukan pola pengerjaan ulang saat aktivitas berulang dalam sebuah kasus.
isRework
Property True jika aktivitas saat ini pernah terjadi sebelumnya dalam kasus tersebut.
reworkCount
Property Jumlah total pengulangan aktivitas dalam kasus tersebut.
activityOccurrence
Property Urutan kemunculan aktivitas ini dalam kasus: 1 untuk pertama kali, 2 untuk kedua kali, dan seterusnya.
Pencarian aktivitas
Memeriksa apakah aktivitas muncul dalam sebuah kasus dan menghitung jumlah kemunculannya.
hasActivity
(activityName) Menghasilkan true jika aktivitas bernama tersebut muncul di bagian mana pun dalam kasus.
| Parameter | | activityName | string | Nama aktivitas yang diperiksa | |
| Nilai yang dikembalikan | boolean |
| Contoh | hasActivity("Approve") → true jika kasus tersebut berisi aktivitas Approve |
activityCount
(activityName) Menghasilkan jumlah kemunculan aktivitas bernama tersebut dalam kasus.
| Parameter | | activityName | string | Nama aktivitas yang dihitung | |
| Nilai yang dikembalikan | angka |
| Contoh | activityCount("Review") → Jumlah aktivitas Review dalam kasus |
Jeda waktu antaraktivitas
Mengukur jeda waktu antara aktivitas tertentu dalam sebuah kasus.
timeBetween
(activityA, activityB) Menghasilkan jeda waktu antara kemunculan pertama aktivitas A dan kemunculan pertama aktivitas B.
| Parameter | | activityA | string | Aktivitas pertama | | activityB | string | Aktivitas kedua | |
| Nilai yang dikembalikan | angka |
| Contoh | timeBetween("Submit", "Approve") → Waktu dalam milidetik dari Submit hingga Approve |
timeSinceActivity
(activityName) Waktu yang berlalu sejak kemunculan terakhir aktivitas bernama tersebut sebelum event saat ini.
| Parameter | | activityName | string | Nama aktivitas | |
| Nilai yang dikembalikan | angka |
| Contoh | timeSinceActivity("Start") → Waktu sejak aktivitas Start terakhir |
timeToActivity
(activityName) Waktu hingga kemunculan berikutnya aktivitas bernama tersebut setelah event saat ini.
| Parameter | | activityName | string | Nama aktivitas | |
| Nilai yang dikembalikan | angka |
| Contoh | timeToActivity("Complete") → Waktu hingga aktivitas Complete berikutnya |
Fungsi SLA
Memantau perjanjian tingkat layanan dan mendeteksi pelanggaran.
slaBreached
(duration, threshold) Menghasilkan true jika durasi melampaui batas SLA.
| Parameter | | duration | number | Durasi aktual | | threshold | number | Batas SLA | |
| Nilai yang dikembalikan | boolean |
| Contoh | slaBreached(100000, 86400000) → false slaBreached(caseThroughputTime, 86400000) → true jika kasus melampaui SLA 24 jam |
slaRemaining
(startDate, slaDuration) Menghasilkan sisa waktu sebelum SLA dilanggar, atau nilai negatif setelah pelanggaran.
| Parameter | | startDate | date | Stempel waktu mulai | | slaDuration | number | Durasi SLA dalam milidetik | |
| Nilai yang dikembalikan | angka |
| Contoh | slaRemaining(caseStartTime, 172800000) → Sisa waktu untuk SLA 48 jam |
caseAge
Property Waktu yang berlalu sejak kasus dimulai, dalam milidetik dari event pertama hingga sekarang.
Deteksi perulangan aktivitas
Mendeteksi dan menghitung pola perulangan saat aktivitas yang sama terjadi berturut-turut.
isSelfLoop
Property True jika aktivitas saat ini sama dengan aktivitas sebelumnya dalam kasus.
selfLoopCount
Property Jumlah pengulangan berturut-turut aktivitas yang sama dalam kasus saat ini.
Analitik sumber daya
Mendeteksi perpindahan dan perubahan sumber daya dalam suatu kasus.
isResourceChange
(expr) Menghasilkan true jika nilai ekspresi berubah dari event sebelumnya.
| Parameter | | expr | any | Ekspresi kolom untuk memeriksa perubahan | |
| Nilai yang dikembalikan | boolean |
| Contoh | isResourceChange(Resource) → true jika sumber daya berbeda dari event sebelumnya |
resourceHandoffCount
(expr) Menghitung perubahan nilai dalam kasus.
| Parameter | | expr | any | Ekspresi kolom yang perubahannya akan dihitung | |
| Nilai yang dikembalikan | angka |
| Contoh | resourceHandoffCount(Resource) → 2 untuk Alice→Alice→Bob→Bob→Alice |
| Catatan | Belum tersedia untuk ekspresi yang menggunakan Athena. Untuk kueri backend, gunakan isResourceChange(expr) bersama caseCountIf(...) dalam atribut turunan. |
5. Statistik, pemeringkatan, dan perubahan nilai
Fungsi pemeringkatan
Memberi peringkat pada event berdasarkan nilai ekspresi dalam sebuah kasus atau di seluruh event.
caseRank
(expr) Peringkat event saat ini dalam kasus, diurutkan berdasarkan nilai ekspresi. Nilai yang sama akan memiliki peringkat yang sama dan menimbulkan celah pada peringkat berikutnya.
| Parameter | | expr | number | Ekspresi untuk menentukan peringkat | |
| Nilai yang dikembalikan | angka |
| Contoh | caseRank(Amount) → Peringkat Amount dalam kasus |
caseDenseRank
(expr) Peringkat padat dalam kasus, tanpa celah untuk nilai yang sama.
| Parameter | | expr | number | Ekspresi untuk menentukan peringkat | |
| Nilai yang dikembalikan | angka |
| Contoh | caseDenseRank(Amount) → Peringkat padat Amount dalam kasus |
allRank
(expr) Peringkat untuk semua event.
| Parameter | | expr | number | Ekspresi untuk menentukan peringkat | |
| Nilai yang dikembalikan | angka |
| Contoh | allRank(Duration) → Peringkat global berdasarkan Duration |
allPercentRank
(expr) Peringkat persentil untuk semua event, dari 0 hingga 1.
| Parameter | | expr | number | Ekspresi untuk menentukan peringkat | |
| Nilai yang dikembalikan | angka |
| Contoh | allPercentRank(Duration) → Peringkat persentil (0-1) |
Deteksi perubahan nilai
Mendeteksi perubahan nilai antar-event.
changed
(expr) Menghasilkan true jika nilai ekspresi berbeda dari event sebelumnya.
| Parameter | | expr | any | Ekspresi untuk memeriksa perubahan | |
| Nilai yang dikembalikan | boolean |
| Contoh | changed(Resource) → true jika sumber daya berubah dari event sebelumnya |
caseChanges
(expr) Menghitung perubahan nilai di semua event dalam kasus.
| Parameter | | expr | any | Ekspresi untuk memeriksa perubahan | |
| Nilai yang dikembalikan | angka |
| Contoh | caseChanges(Resource) → Jumlah perpindahan sumber daya dalam kasus |
| Catatan | Belum tersedia untuk ekspresi yang menggunakan Athena. Untuk kueri backend, gunakan changed(expr) bersama caseCountIf(...) dalam atribut turunan. |
Agregat berjalan bersyarat
Agregat berjalan dengan kondisi, dihitung hingga event saat ini.
caseRunningSumIf
(expr, condition) Jumlah berjalan bersyarat hingga event saat ini.
| Parameter | | expr | number | Ekspresi yang akan dijumlahkan | | condition | boolean | Kondisi untuk memfilter event | |
| Nilai yang dikembalikan | angka |
| Contoh | caseRunningSumIf(Amount, Status == "Paid") → Jumlah berjalan Amount saat Status bernilai Paid |
caseRunningCountIf
(condition) Hitungan berjalan bersyarat hingga event saat ini.
| Parameter | | condition | boolean | Kondisi untuk dihitung | |
| Nilai yang dikembalikan | angka |
| Contoh | caseRunningCountIf(Activity == "Error") → Hitungan berjalan aktivitas Error |
caseRunningAvgIf
(expr, condition) Rata-rata berjalan bersyarat hingga event saat ini.
| Parameter | | expr | number | Ekspresi yang akan dirata-ratakan | | condition | boolean | Kondisi untuk memfilter event | |
| Nilai yang dikembalikan | angka |
| Contoh | caseRunningAvgIf(Duration, Priority == "High") → Rata-rata berjalan durasi event berprioritas tinggi |
Properti waktu yang berlalu
Properti untuk mengukur progres dan waktu yang berlalu dalam suatu kasus.
elapsedSinceStart
Property Waktu yang berlalu sejak kasus dimulai, dalam milidetik.
remainingInCase
Property Sisa waktu hingga kasus berakhir, dalam milidetik.
percentComplete
Property Progres kasus sebagai pecahan dari 0 hingga 1.
Agregat bersyarat tambahan
Fungsi agregat bersyarat tambahan untuk median, simpangan baku, dan hitungan nilai unik.
caseMedianIf
(expr, condition) Menghitung median bersyarat untuk event dalam kasus yang memenuhi kondisi.
| Parameter | | expr | number | Ekspresi nilai | | condition | boolean | Kondisi filter | |
| Nilai yang dikembalikan | angka |
| Contoh | caseMedianIf(Amount, Activity == "Review") → Median Amount untuk aktivitas Review |
allMedianIf
(expr, condition) Menghitung median bersyarat untuk semua event yang memenuhi kondisi.
| Parameter | | expr | number | Ekspresi nilai | | condition | boolean | Kondisi filter | |
| Nilai yang dikembalikan | angka |
| Contoh | allMedianIf(Amount, Status == "Complete") → Median global untuk event yang selesai |
caseStdDevIf
(expr, condition) Menghitung simpangan baku bersyarat untuk event dalam kasus.
| Parameter | | expr | number | Ekspresi nilai | | condition | boolean | Kondisi filter | |
| Nilai yang dikembalikan | angka |
| Contoh | caseStdDevIf(Duration, Activity == "Review") → Simpangan baku durasi Review dalam kasus |
allStdDevIf
(expr, condition) Menghitung simpangan baku bersyarat untuk semua event.
| Parameter | | expr | number | Ekspresi nilai | | condition | boolean | Kondisi filter | |
| Nilai yang dikembalikan | angka |
| Contoh | allStdDevIf(Amount, Priority == "High") → Simpangan baku global untuk prioritas tinggi |
caseCountDistinctIf
(expr, condition) Menghitung nilai unik secara bersyarat untuk event dalam kasus.
| Parameter | | expr | any | Ekspresi nilai | | condition | boolean | Kondisi filter | |
| Nilai yang dikembalikan | angka |
| Contoh | caseCountDistinctIf(Category, Amount > 100) → Kategori unik dengan Amount di atas 100 |
allCountDistinctIf
(expr, condition) Menghitung nilai unik secara bersyarat untuk semua event.
| Parameter | | expr | any | Ekspresi nilai | | condition | boolean | Kondisi filter | |
| Nilai yang dikembalikan | angka |
| Contoh | allCountDistinctIf(User, Department == "Sales") → Pengguna unik di departemen Sales |
Agregat berjalan tambahan
Fungsi agregat berjalan tambahan untuk median, simpangan baku, serta nilai minimum dan maksimum bersyarat.
caseRunningMedian
(expr) Median berjalan nilai hingga event saat ini.
| Parameter | | expr | number | Ekspresi nilai | |
| Nilai yang dikembalikan | angka |
| Contoh | caseRunningMedian(Amount) → Median berjalan Amount |
caseRunningStdDev
(expr) Simpangan baku berjalan hingga event saat ini.
| Parameter | | expr | number | Ekspresi nilai | |
| Nilai yang dikembalikan | angka |
| Contoh | caseRunningStdDev(Amount) → Simpangan baku berjalan |
caseRunningMinIf
(expr, condition) Nilai minimum berjalan bersyarat hingga event saat ini.
| Parameter | | expr | number | Ekspresi nilai | | condition | boolean | Kondisi filter | |
| Nilai yang dikembalikan | angka |
| Contoh | caseRunningMinIf(Amount, Activity == "Review") → Nilai minimum berjalan Amount untuk aktivitas Review |
caseRunningMaxIf
(expr, condition) Nilai maksimum berjalan bersyarat hingga event saat ini.
| Parameter | | expr | number | Ekspresi nilai | | condition | boolean | Kondisi filter | |
| Nilai yang dikembalikan | angka |
| Contoh | caseRunningMaxIf(Amount, Priority == "High") → Nilai maksimum berjalan untuk prioritas tinggi |
6. Fungsi JSON
7. Topik terkait