Panoramica delle espressioni di dati calcolati

Puoi utilizzare le espressioni di dati per definire campi personalizzati calcolati in Adobe Workfront. Le espressioni calcolate collegano i campi Workfront esistenti nelle istruzioni che generano un nuovo campo.

Puoi utilizzare espressioni di dati calcolati in:

  • Campo personalizzato calcolato in un modulo personalizzato

    Per ulteriori informazioni sulla creazione di campi personalizzati calcolati nei moduli personalizzati in Workfront, consulta Aggiungere dati calcolati a un modulo personalizzato.

  • Colonna personalizzata calcolata in un report o in un elenco quando si utilizza la modalità testo

    Per ulteriori informazioni sull'utilizzo della modalità testo nei report e nelle visualizzazioni, vedere Panoramica sulla modalità testo.

Sintassi dei campi personalizzati calcolati rispetto alle colonne personalizzate calcolate

Sebbene le funzioni utilizzate siano le stesse, la sintassi per la creazione di un'espressione in un campo personalizzato calcolato può essere diversa da quella per la creazione di una colonna personalizzata calcolata.

Le differenze tra le due sintassi sono:

Campo personalizzato calcolato
Elemento di reporting personalizzato calcolato
Racchiudi i nomi dei campi tra parentesi graffe

Non racchiudere i nomi dei campi tra parentesi quadre o parentesi quando li si utilizza in un

valuefield

linea.

Racchiudi i nomi dei campi tra parentesi graffe quando li utilizzi in una

valueexpression

linea.

Separa i campi per periodi

Separa i campi con due punti quando li utilizzi in una

valuefield

linea

Separa i campi per punti quando li utilizzi in una

valueexpression

linea.

Ad esempio:

  • In un campo personalizzato, in un modulo personalizzato per le attività, puoi utilizzare quanto segue per generare il nome del progetto principale dell’attività a cui è allegato il modulo personalizzato:

    {project}.{name}

  • In una colonna personalizzata di un report, utilizzare quanto segue per aggiungere una colonna personalizzata Nome progetto a un report attività:

    valuefield=project:name

    Oppure

    valueexpression={project}.{name}

    note tip
    TIP
    La stessa sintassi si applica a tutti gli elementi di reporting in modalità testo in cui vengono utilizzate espressioni calcolate: viste, filtri, raggruppamenti, prompt.

Per ulteriori informazioni sulla sintassi da utilizzare in una colonna personalizzata calcolata, consulta Panoramica sulla modalità testo.

Espressioni dati utilizzabili

Gli elenchi seguenti definiscono le espressioni disponibili da utilizzare per la creazione di uno dei tre diversi tipi di campi personalizzati calcolati in Workfront:

Puoi utilizzare le espressioni elencate di seguito per creare colonne personalizzate calcolate. Tuttavia, devi utilizzare la sintassi corretta per una colonna personalizzata calcolata, come descritto nella sezione Sintassi dei campi personalizzati calcolati rispetto alle colonne personalizzate calcolate in questo articolo.

Campi personalizzati calcolati per data e ora date-time-calculated-custom-fields

NOTE
Se crei un calcolo di data e ora che non include una porzione di ora o che utilizza i caratteri jolly $$TODAY o $$NOW, il sistema utilizza la data in base al fuso orario UTC (Coordinated Universal Time) e non al fuso orario locale. Questo può causare un risultato di data imprevisto.

Puoi creare un campo personalizzato calcolato per la data o l’ora utilizzando le seguenti espressioni:

Espressione
Spiegazione ed esempio
ADDDAYS

Aggiunge il numero di giorni alla data. Il valore numerico può includere giorni parziali. Ad esempio, 1.5 aggiunge un giorno e mezzo alla data.

L’espressione viene formattata come segue:

ADDDAYS(date, number)

ADDWEEKDAYS

Aggiunge il numero di giorni della settimana alla data. Questa espressione aggiunge alla data solo valori interi, con arrotondamento per difetto.

L’espressione viene formattata come segue:

ADDWEEKDAYS(date, number)

ADDMONTHS

Aggiunge il numero di mesi alla data e viene formattato come segue:

ADDMONTHS(date, number)

ADDYEARS

Aggiunge il numero di anni alla data e viene formattato come segue:

ADDYEARS(date, number)

CLEARTIME

Cancella la porzione di ora di una data e viene formattata come segue. In questo esempio, la data corrisponde alla data di immissione di un oggetto di lavoro.

CLEARTIME({entryDate})

DATA

Converte una stringa in una data e viene formattata come segue:

DATE(string)

DATEDIFF

Restituisce il numero di giorni tra le due date, tenendo conto dei giorni di inizio e di fine del periodo selezionato e delle marche temporali in tali giorni. Ad esempio, se l’ora di inizio della data di inizio è le 15, il giorno di inizio non viene conteggiato come giorno intero.

L’espressione viene formattata come segue:

DATEDIFF(date1, date2)

DAYOFMONTH

Restituisce il giorno del mese per la data come numero, compreso tra 1 e 31.

L’espressione viene formattata come segue. In questo esempio, la data corrisponde alla data di immissione di un oggetto di lavoro.

DAYOFMONTH({entryDate})

DAYOFWEEK

Restituisce il giorno della settimana per la data come numero, compreso tra 1 (domenica) e 7 (sabato).

L’espressione viene formattata come segue. In questo esempio, la data corrisponde alla data di immissione di un oggetto di lavoro.

DAYOFWEEK({entryDate})

DAYSINMONTH

Restituisce il totale dei giorni del mese della data sotto forma di numero e viene formattato come segue. In questo esempio, la data corrisponde alla data di immissione di un oggetto di lavoro.

DAYSINMONTH({entryDate})

DAYSINSPLITWEEK

Restituisce il numero totale di giorni della settimana compresi tra la data e la fine della settimana oppure la fine del mese, a seconda di quale dei due eventi si verifichi per primo. In questo esempio, la data corrisponde alla data di immissione di un oggetto di lavoro.

L’espressione viene formattata come segue:

DAYSINSPLITWEEK({entryDate})

DAYSINYEAR

Restituisce il totale dei giorni dell’anno della data sotto forma di numero e viene formattato come segue. In questo esempio, la data corrisponde alla data di immissione di un oggetto di lavoro.

DAYSINYEAR({entryDate})

DMAX

Restituisce la data più recente nell'elenco e viene formattato come segue:

DMAX(date1, date2, ...)

DMIN

Restituisce la prima data dell'elenco e viene formattata come segue:

DMIN(date1, date2, ...)

ORA

Restituisce l’ora della data come numero compreso tra 0 e 23.

L’espressione viene formattata come segue. In questo esempio, la data corrisponde alla data di immissione di un oggetto di lavoro.

HOUR({entryDate})

MINUTO

Restituisce il minuto della data come numero compreso tra 0 e 60, formattato come segue. In questo esempio, la data corrisponde alla data di immissione di un oggetto di lavoro.

MINUTE({entryDate})

MESE

Restituisce il mese della data come numero compreso tra 1 e 12, formattato come segue. In questo esempio, la data corrisponde alla data di immissione di un oggetto di lavoro.

MONTH({entryDate})

SECOND

Restituisce il secondo della data come numero compreso tra 0 e 60, formattato come segue. In questo esempio, la data corrisponde alla data di immissione di un oggetto di lavoro.

SECOND({entryDate})

WEEKDAYDIFF

Restituisce il numero di giorni feriali tra due date, tenendo conto dei giorni di inizio e di fine del periodo selezionato e delle marche temporali in tali giorni. Ad esempio, se l’ora di inizio della data di inizio è le 15.00, il giorno di inizio non verrà conteggiato come giorno intero.

L’espressione viene formattata come segue:

WEEKDAYDIFF(date2, date1)

WORKMINUTESDIFF

Restituisce il numero di minuti programmati tra le date in base alla pianificazione predefinita.

L’espressione viene formattata come segue:

WORKMINUTESDIFF(date1, date2)

ANNO

Restituisce l'anno della data come numero a 4 cifre, formattato come segue. In questo esempio, la data corrisponde alla data di immissione di un oggetto di lavoro.

YEAR({entryDate})

Campi personalizzati matematici calcolati mathematical-calculated-custom-fields

È possibile creare un campo personalizzato calcolato che utilizza alcune delle seguenti espressioni matematiche:

Espressione
Spiegazione
ABS

Restituisce il valore assoluto del numero ed è formattato come segue. In questo esempio viene utilizzato il numero di oggetti sotto l'oggetto a cui è allegato il modulo personalizzato.

ABS({numberOfChildren})

MEDIA

Restituisce la media dei numeri ed è formattato come segue:

AVERAGE(number1, number2, ...)

CEIL

Arrotonda un numero per eccesso al numero intero più vicino e viene formattato come segue. In questo esempio viene utilizzato il numero di oggetti sotto l'oggetto a cui è allegato il modulo personalizzato.

CEIL({numberOfChildren})

DIV

Divide tutti i numeri nell’ordine indicato e viene formattato come segue:

DIV(number1, number2, ...)

FLOOR

Arrotonda un numero per difetto al numero intero più vicino e viene formattato come segue. In questo esempio viene utilizzato il numero di oggetti sotto l'oggetto a cui è allegato il modulo personalizzato.

FLOOR({numberOfChildren})

LN

Restituisce il valore logaritmo naturale del numero ed è formattato come segue:

LN({numberOfChildren})

LOG

Restituisce il valore logaritmico numero2 al numero base 1 ed è formattato come segue:

LOG(number1, number2)

MAX

Restituisce l'elemento più grande dell'elenco e viene formattato come segue:

MAX(item1, item2, ...)

MIN

Restituisce l'elemento più piccolo dell'elenco e viene formattato come segue:

MIN(item1, item2, ...)

NUMERO

Converte una stringa in un numero e viene formattato come segue:

NUMBER(string)

POWER

Restituisce un numero elevato a potenza e viene formattato come segue:

POWER(number, power)

PROD

Moltiplica tutti i numeri e viene formattato come segue:

PROD(number1, number2, ....)

NOTA

Quando si moltiplicano i campi che contengono ore, verificare che il database salvi le ore nei campi selezionati in minuti, ore o secondi. Se le ore vengono salvate in minuti o secondi ma visualizzate in ore nell’interfaccia di Workfront, potrebbe essere necessario tenere conto della conversione da minuti o secondi a ore durante la scrittura di un’espressione utilizzando questo calcolo.

ROUND

Arrotonda il numero per eccesso ai decimali di precisione specificati e viene formattato come segue:

ROUND(number, precision)

SORTASCNUM

Ordina i numeri in ordine crescente e viene formattato come segue:

SORTASCNUM(number1,number2, ...)

SORTDESCNUM

Ordina i numeri in ordine decrescente e viene formattato come segue:

SORTDESCNUM(number1, number2, ...)

SQRT

Restituisce una radice quadrata di un numero ed è formattata come segue. In questo esempio viene utilizzato il numero di oggetti sotto l'oggetto a cui è allegato il modulo personalizzato.

SQRT({numberOfChildren})

SUB

Sottrae tutti i numeri nell'ordine specificato e viene formattato come segue:

SUB(number1, number2, ...)

SOMMA

Somma tutti i numeri e viene formattato come segue:

SUM(number1, number2, ...)

Testo dei campi personalizzati calcolati text-calculated-custom-fields

È possibile creare un campo personalizzato calcolato che visualizzi un valore in formato testo utilizzando le seguenti espressioni:

Espressione
Spiegazione
CASE

Viene utilizzato con altre espressioni per scegliere un valore da un elenco in base a un numero di indice.

Un numero di indice è un campo o una funzione che restituisce un valore numerico (in genere in un intervallo noto).

L’espressione viene formattata come segue:

CASE(indexNumber, value1, value2, ...)

Ad esempio, l'espressione seguente restituisce il nome del giorno della settimana, dove 1=domenica, 2=lunedì e così via, in una colonna calcolata:

CASE(DAYOFWEEK({entryDate}),"Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday")

Si adatta meglio ad altre espressioni che restituiscono un numero, come DAYOFWEEK, DAYOFMONTH e MONTH.

CONCAT

Concatena la stringa e viene formattata come segue:

CONCAT(string1,"separator", string2)

Di seguito sono riportati alcuni esempi di separatori che è possibile includere:

  • uno spazio: ""
  • un trattino: "-"
  • una barra: "/"
  • una virgola: ","
  • una parola: "or", "and"
CONTIENE

Restituisce true se la stringa findText si trova all'interno della stringa withinText e viene formattata come segue:

CONTAINS(findText, withinText)

ENCODEURL

Evita qualsiasi carattere speciale nella stringa in modo che possa essere incluso in un argomento URL.

L’espressione viene formattata come segue:

ENCODEURL(string)

IF

Valuta una condizione specificata e restituisce il valore di trueExpression se è true oppure il valore di falseExpression se è false.

L’espressione viene formattata come segue:

IF(condition, trueExpression, falseExpression)

Ad esempio, è possibile confrontare due diversi campi data seguiti da un risultato Vero/Falso come stringa di dati:

IF({projectedCompletionDate}>{plannedCompletionDate},"Off Track","On Track")

Nel discorso di tutti i giorni, questa istruzione significa: "SE la data di completamento prevista del mio oggetto è 'Maggiore di' la data di completamento pianificata del mio stesso oggetto, visualizza le parole 'Fuori pista' in questo campo; in caso contrario, visualizza le parole 'In pista'".

Se non si desidera etichettare le espressioni true o false, è necessario inserire un'etichetta vuota nell'istruzione, ad esempio:

IF({projectedCompletionDate}>{plannedCompletionDate},"","On Track")

Oppure

IF({projectedCompletionDate}>{plannedCompletionDate},"Off Track","")

Per ulteriori informazioni sulla creazione di istruzioni "IF", vedere Panoramica delle istruzioni "IF".

IFIN

Consente di cercare un valore specifico in una stringa di valori possibili. Se il valore che si sta cercando è uguale a uno dei valori specificati, l'espressione restituisce trueExpression; in caso contrario, restituisce falseExpression.

L’espressione viene formattata come segue:

IFIN(value, value1, value2,..., trueExpression, falseExpression)

Ad esempio, puoi trovare un proprietario del progetto specifico e contrassegnare i progetti con un tag specificato in una vista del progetto:

IFIN({owner}.{name},"Jennifer Campbell","Rick Kuvec","Marketing Team","Other Teams")

Nel discorso di tutti i giorni, questa dichiarazione significa: "Se il proprietario del progetto è Jennifer Campbell o Rick Kuvec, contrassegna questo progetto con "Team di marketing"; altrimenti, contrassegnalo con "Altri team"."

Se non si desidera etichettare le espressioni true o false, è necessario inserire un'etichetta vuota nell'istruzione, ad esempio:

IFIN({owner}.{name},"Jennifer Campbell","Rick Kuvec","","Other Teams")

Oppure

IFIN({owner}.{name},"Jennifer Campbell","Rick Kuvec","Marketing Team","")

IN

Restituisce true se il valore è uguale a uno dei valori specificati; in caso contrario, l'espressione restituisce false.

L’espressione viene formattata come segue:

IN(value, value1[, value2...])

ISBLANK

Restituisce true se il valore è null o vuoto; in caso contrario, l'espressione restituisce false.

L’espressione viene formattata come segue:

ISBLANK(value)

LEFT

Restituisce un numero specificato di caratteri dal lato sinistro di una stringa e viene formattato come segue:

LEFT(string, length)

LEN

Restituisce la lunghezza di una stringa e viene formattata come segue:

LEN(string)

LOWER

Restituisce la stringa in minuscolo ed è formattata come segue:

LOWER(string)

SOSTITUISCI

Sostituisce tutte le occorrenze di stringa2 con stringa3 in stringa1.

L’espressione viene formattata come segue:

REPLACE(string1, string2, string3)

RIGHT

Restituisce un numero specificato di caratteri dal lato destro di una stringa e viene formattato come segue:

RIGHT(string, length)

RICERCA

Restituisce l'indice della prima occorrenza di findText nella stringa withinText, a partire dalla posizione iniziale specificata oppure -1 se il testo non viene trovato.

L’espressione viene formattata come segue:

SEARCH(findText, withinText, start)

STRINGA

Converte un numero in una stringa e viene formattato come segue:

STRING(number)

SORTASCSTRING

Ordina un elenco di stringhe in ordine crescente e viene formattato come segue:

SORTASCSTRING(string1, string2, ...)

SORTDESCSTRING

Ordina un elenco di stringhe in ordine decrescente e viene formattato come segue:

SORTDESCSTRING(string1, string2, ...)

SUBSTR

Restituisce i caratteri di una stringa in base all'indice iniziale e finale specificato e viene formattato come segue:

SUBSTR({string}, number of start position, number of end position)

TRIM

Rimuove lo spazio vuoto dall'inizio e dalla fine di una stringa e viene formattato come segue:

TRIM(string)

UPPER

Restituisce una stringa in maiuscolo ed è formattata come segue:

UPPER(string)

recommendation-more-help
5f00cc6b-2202-40d6-bcd0-3ee0c2316b43