Quello che segue è l'elenco delle funzioni disponibili
Nome del campo | Funzione | Esempio |
---|---|---|
fn.datetostr(date, pattern) | Converte una data in un valore di tipo string . |
fn.datetostr(contact.values.BIRTHDATE, 'dd/MM/yyyy') |
fn.datetostr_tz(date, pattern, timezone) | Converte una data in un valore di tipo string . Questa funzione è applicata utilizzando uno specifico fuso orario. |
fn.datetostr_tz(contact.values.BIRTHDATE, 'dd/MM/yyyy', 'Europe/Rome') |
fn.strtodate(string, pattern) | Converte un valore di tipo string in una data. |
fn.strtodate(contact.values.MYFIELD, 'dd/MM/yyyy HH:mm') |
fn.strtodate_tz(string, pattern, timezone) | Converte una stringa in un valore di tipo data . Questa funzione è applicata utilizzando uno specifico fuso orario. |
fn.strtodate_tz(contact.values.MYFIELD, 'dd/MM/yyyy HH:mm', 'Europe/Rome') |
fn.now() | Restituisce data ed ora attuali. | |
fn.today() | Restituisce la data odierna e l'ora impostata a 00:00:00. | |
fn.today_tz(timezone) | Restituisce la data odierna e l'ora impostata a 00:00:00 relativamente al fuso orario impostato. | |
fn.midnight(date) | Restituisce una data originaria e l'ora impostata a 00:00:00. | |
fn.midnight_tz(date, timezone) | Restituisce una data originaria e l'ora impostata a 00:00:00 relativamente al fuso orario impostato. | |
fn.dateadd(date, offset, unit) | Aggiunge un quantitativo di tempo ad una data in una specifica unità di tempo (year, month, day, hour, minute, second, dayofweek). | fn.dateadd(contact.values.EXPIREDATE, -2, 'day') |
fn.dateadd_tz(date, offset, unit, timezone) | Aggiunge un quantitativo di tempo ad una data in una specifica unità di tempo (year, month, day, hour, minute, second, dayofweek). Questa funzione è applicata utilizzando uno specifico fuso orario. |
fn.dateadd_tz(contact.values.EXPIREDATE, -2, 'day', 'Europe/Rome') |
fn.datediff(date1,date2, unit) | Restituisce un valore di tipo int che rappresenta la differenza tra due date in una specifica unità di misura (year, month, day, hour, minute, second, dayofweek). | fn.datediff(fn.now(), contact.values.EXPIREDATE, 'day') |
fn.datepart(date1, unit) | Restituisce un valore di tipo string che rappresenta la parte di una data che corrisponde all'unità di tempo indicata (year, month, day, hour, minute, second, dayofweek). |
fn.datepart(contact.values.EXPIREDATE, 'month') |
fn.datepart_tz(date1, unit, timezone) | Restituisce un valore di tipo string che rappresenta la parte di una data che corrisponde all'unità di tempo indicata (year, month, day, hour, minute, second, dayofweek).Questa funzione è applicata utilizzando uno specifico fuso orario. |
fn.datepart_tz(contact.values.EXPIREDATE, 'month', 'Europe/Rome') |
fn.age(date) | Restituisce un int che rappresenta l'età basata su una data, in anni. |
fn.age(contact.values.BIRTHDATE) |
fn.age_tz(date, timezone) | Restituisce un int che rappresenta l'età basata su una data, in anni. Questa funzione è applicata utilizzando uno specifico fuso orario. |
fn.age(contact.values.BIRTHDATE) |
fn.round(var) | Restituisce un valore numerico arrotondato. | |
fn.max(a,b) | Restituisce il più alto tra due valori numerici o due date. | |
fn.min(a,b) | Restituisce il più basso tra due valori o due date. | |
fn.abs(var) | Restituisce il valore assoluto di un valore numerico. | |
fn.md5(var) | Restiuisce una stringa che rappresenta il valore calcolato con l'algoritmo MD5 e stampata in base 16. | |
fn.sha1(var) | Restituisce una stringa che rappresenta il valore calcolato con l'algoritmo SHA-1 e stampata in base 16. | |
fn.sha256(var) | Restituisce una stringa che rappresenta il valore calcolato con l'algoritmo SHA-256 e stampata in base 16. | |
fn.random(min,max) | Restituisce un integer compreso tra quelli definiti come valore minimo e massimo compresi. | |
fn.strtolist(string, separator) | Converte una stringa in una lista, utilizzando il separatore specificato. | fn.strtolist('Italy,France,UK', ',') |
fn.listtostr(list, separator) | Converte una lista in una stringa, usando il separatore specificato. | fn.listtostr(contact.values.COUNTRY, ',') |
fn.randomelement(list) | Estrae un elemento da una collezione o una lista di stringhe (le stringhe vanno separate con una virgola). | fn.randomelement('Red,Yellow,Green') |
fn.sort(list,direction) | Ordina una lista usando una funzione di ordinamento naturale (per le stringhe è l'ordine alfabetico). Usa direction='asc' per l'ordine crescente e direction="desc" per quello discendente.Ogni altro valore o lista è trattata come asc . |
|
fn.sortby(list,field,direction) | Ordina una lista di record, usando il valore del campo field di ciascun record. Usa direction='asc' per l'ordine crescente e direction="desc" per quello discendente. Ogni altro valore o lista è trattata come asc . |
|
fn.filter(list,condition) | Filtra una lista di record, valutando la "condizione" per ciascuno dei record. Se viene applicato a liste di valori primitivi quali stringhe o numeri, devi utilizzare la keyword speciale this per riferirti al valore. |
Esempio con record: fn.filter(myqueryresultset,'name eq "xx"') Esempio con valori primitivi: fn.filter(fn.strtolist('Italy,France,UK', ','),'this contains "tal"') |
fn.ucase(string) | Trasforma una stringa in MAIUSCOLO. Se applicato ad una lista, la funzione è applicata a tutti i suoi elementi. | |
fn.lcase(string) | Trasforma una stringa in minuscolo. Se applicato ad una lista, la funzione è applicata a tutti i suoi elementi. | |
fn.capitalcase(string) | Trasforma la prima lettera di ogni parola in maiuscolo e le altre in minuscolo. Se applicato ad una lista, la funzione è applicata a tutti i suoi elementi. | |
fn.trim(string) | Rimuove tutti gli spazi superflui da una stringa. | |
fn.left(string, maxchars) | Restituisce la parte sinistra di una stringa o di una lista pari al numero di caratteri /elementi specificati. | |
fn.right(string, maxchars) | Restituisce la parte destra di una stringa o di una lista pari al numero di caratteri /elementi specificati. | |
fn.mid(string, from, to) | Estrae una porzione di stringa o lista (from=0 è il primo elemento, to è sempre obbligatorio). |
|
fn.len(var) | Restituisce la lunghezza di una stringa o di una lista. | |
fn.concat(var1, var2) | Concatena la rappresentazione in stringa di due variabili. I valori null sono trattati come stringhe vuote. Per i valori di data/timestamp è meglio formattarli usando fn.strtodate_tz . |
|
fn.ifempty(string, defaultvalue) | Se la stringa è " o vuota, allora restituisce il valore specificato, altrimenti restituisce il valore originale. | |
fn.coalesce(var, defaultvalue) | Se var è vuoto, allora restituisce il valore specificato, altrimenti restituisce il valore originale. | fn.coalesce(contact.values.ORDERS, 0) |
fn.extract(list, fieldname) | Estrai il campo definito in fieldname da ciascun elemento della lista e restituisce una lista di campi estratti (nello stesso ordine della lista di input). |
fn.extract(listofperson, 'name') |
fn.compose(list, fieldname) | Assembla una lista di record (coppie campo: valore), ciascun elemento avrà un campo chiamato fieldname che contiene il valore corrispondente della lista originale (nello stesso ordine della lista d'ingresso). |
|
fn.base64_encode(string) | Codifica una stringa utf-8 usando lo schema di codifica base64 . |
|
fn.base64_decode(string) | Decodifica una stringa utf-8 codificata in base64 . |
|
fn.url_encode(string) | Codifica una stringa nella rappresentazione dei parametri URL querystring, utilizzando la codifica utf-8 (java URLEncoder.encode). |
|
fn.url_decode(string) | Decodifica una stringa dalla rappresentazione dei parametri URL querystring , utilizzando la codifica utf-8 (java URLDecoder.decode). |
|
fn.url_appendparameter(url,name,value) | Tratta un url come URL, e aggiunge alla querystring un parametro chiamato name con valore value dopo il simbolo "?" e prima del simbolo "#".Il valore DEVE essere già codificato, usando la funzione url_encode. |
|
fn.replace(string, occurrence, replacement) | Sostituisce tutte le occorrenze nella stringa data. | |
fn.strtonumber(numer_as_string, decimal_separator) | Converte la stringa in numero. Se decimal_separator è diverso da null, viene considerato per la conversione. |
|
fn.first(lista) | Restituisce il primo elemento della lista/collezione data. | |
fn.last(list) | Restituisce l'ultimo elemento della lista/collezione data. | |
fn.elementAt(list, index) | Restituisce l'elemento nella lista in posizione index (il primo elemento ha indice 0). | |
fn.json_encode(obj) | Converte l'oggetto passato in stringa JSON. | |
fn.json_decode(string) | Converte la stringa JSON passata nell'oggetto corrispondente. | |
fn.preg_replace(regex_pattern, replacement, string) | Applica una sostituzione tramite regexp sulla stringa string con replacement. | |
fn.anniversary(birthday) | Ritorna la data dell'anniversario (se già passato, la data del prossimo anniversario). | |
fn.anniversary_tz(birthday, timezone) | Ritorna la data dell'anniversario (se già passato, la data del prossimo anniversario). La funzione è applicata considerando il timezone passato. |
Nota: le funzioni di gestione delle date utilizzano il fuso orario dei contatti per i quali si sta eseguendo il codice.
Esempi
Espressione booleana:
contact.values.lingua EQ 'ITA'
(contact.values.field1 EQ 4 OR contact.values.field1 EQ 5+1) AND contact.values.field2 NEQ NULL
contact.subscribed and contact.values.DOMINIO EQ 'gmail.com'
Espressione di tipo string:
'Value1'
contact.values.NAME & '-' & contact.values.SURNAME
Espressione numerica:
(contact.values.A + contact.values.B)/2