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 all’interno di istruzioni che generano un nuovo campo.

Puoi utilizzare le espressioni di dati calcolati in:

  • Un campo personalizzato calcolato in un modulo personalizzato

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

  • Una colonna personalizzata calcolata in un rapporto o in un elenco quando utilizzi la modalità testo

    Per ulteriori informazioni sull’utilizzo della modalità testo nei rapporti e nelle viste, consulta Panoramica della 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 tonde quando li utilizzi in una

valuefield

riga.

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

valueexpression

riga.

Separa i campi con dei punti

Separa i campi con i due punti quando li utilizzi in una

valuefield

riga

Separa i campi per punti quando li utilizzi in una

valueexpression

riga.

Ad esempio:

  • In un campo personalizzato, in un modulo personalizzato per le attività, dovresti 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 rapporto, utilizza quanto segue per aggiungere una colonna personalizzata Nome progetto a un rapporto di 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 le espressioni calcolate: viste, filtri, raggruppamenti, prompt.

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

Espressioni di dati utilizzabili

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

Puoi utilizzare le espressioni elencate di seguito per creare colonne personalizzate calcolate. Tuttavia, è necessario 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 parte oraria o che utilizza i caratteri jolly $$TODAY o $$NOW, il sistema utilizza la data in base al fuso orario UTC (Tempo coordinato universale) e non al fuso orario locale. Questo può causare un risultato di data imprevisto.

Puoi creare un campo personalizzato calcolato per data od ora utilizzando le seguenti espressioni:

Espressione
Spiegazione ed esempio
ADDDAYS

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

L’espressione è formattata nel modo seguente:

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 è formattata nel modo seguente:

ADDWEEKDAYS(date, number)

ADDMONTHS

Aggiunge il numero di mesi alla data ed è formattata nel modo seguente:

ADDMONTHS(date, number)

ADDYEARS

Aggiunge il numero di anni alla data ed è formattata nel modo seguente:

ADDYEARS(date, number)

ADDHOURS

Aggiunge il numero di ore alla data ed è formattata nel modo seguente:

ADDHOUR(date, number)

Nota: questa espressione non è supportata in Pianificazione di Workfront.

CLEARTIME

Cancella la porzione di ora di una data ed è formattata nel modo seguente: In questo esempio, la data corrisponde alla data di inserimento di un oggetto di lavoro.

CLEARTIME({entryDate})

DATE

Converte una stringa in una data ed è formattata nel modo seguente:

DATE(string)

DATEDIFF

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

L’espressione è formattata nel modo seguente:

DATEDIFF(date1, date2)

DAYOFMONTH

Restituisce il giorno del mese della data sotto forma di numero compreso tra 1 e 31.

L’espressione è formattata nel modo seguente: In questo esempio, la data corrisponde alla data di inserimento di un oggetto di lavoro.

DAYOFMONTH({entryDate})

DAYOFWEEK

Restituisce il giorno della settimana della data sotto forma di numero compreso tra 1 (domenica) e 7 (sabato).

L’espressione è formattata nel modo seguente: In questo esempio, la data corrisponde alla data di inserimento di un oggetto di lavoro.

DAYOFWEEK({entryDate})

DAYSINMONTH

Restituisce il totale dei giorni del mese della data sotto forma di numero ed è formattata nel modo seguente: In questo esempio, la data corrisponde alla data di inserimento di un oggetto di lavoro.

DAYSINMONTH({entryDate})

DAYSINSPLITWEEK

Restituisce il totale di giorni della settimana tra la data e la fine della settimana o la fine del mese, a seconda di quale delle due si verifichi prima. In questo esempio, la data corrisponde alla data di inserimento di un oggetto di lavoro.

L’espressione è formattata nel modo seguente:

DAYSINSPLITWEEK({entryDate})

DAYSINYEAR

Restituisce il totale dei giorni dell’anno della data sotto forma di numero ed è formattata nel modo seguente. In questo esempio, la data corrisponde alla data di inserimento di un oggetto di lavoro.

DAYSINYEAR({entryDate})

DMAX

Restituisce la data più recente nell’elenco ed è formattata nel modo seguente:

DMAX(date1, date2, ...)

DMIN

Restituisce la data meno recente dell’elenco ed è formattata nel modo seguente:

DMIN(date1, date2, ...)

HOUR

Restituisce l’ora della data sotto forma di numero compreso tra 0 e 23.

L’espressione è formattata nel modo seguente: In questo esempio, la data corrisponde alla data di inserimento di un oggetto di lavoro.

HOUR({entryDate})

MINUTE

Restituisce il minuto della data sotto forma di numero compreso tra 0 e 60 ed è formattata nel modo seguente. In questo esempio, la data corrisponde alla data di inserimento di un oggetto di lavoro.

MINUTE({entryDate})

MONTH

Restituisce il mese della data sotto forma di numero compreso tra 1 e 12 ed è formattata nel modo seguente. In questo esempio, la data corrisponde alla data di inserimento di un oggetto di lavoro.

MONTH({entryDate})

SECOND

Restituisce il secondo della data sotto forma di numero compreso tra 0 e 60 ed è formattata nel modo seguente. In questo esempio, la data corrisponde alla data di inserimento di un oggetto di lavoro.

SECOND({entryDate})

WEEKDAYDIFF

Restituisce il numero di giorni della settimana tra le due date, tenendo conto sia dei giorni di inizio e di fine del periodo selezionato e sia delle marche temporali in tali giorni. Ad esempio, se l’ora di inizio della data di inizio corrisponde alle 15:00, il giorno di inizio non sarà conteggiato come giorno intero.

L’espressione è formattata nel modo seguente:

WEEKDAYDIFF(date2, date1)

WORKMINUTESDIFF

Restituisce il numero di minuti pianificati tra due date secondo la pianificazione predefinita.

L’espressione è formattata nel modo seguente:

WORKMINUTESDIFF(date1, date2)

YEAR

Restituisce l’anno della data sotto forma di numero a 4 cifre ed è formattata nel modo seguente. In questo esempio, la data corrisponde alla data di inserimento di un oggetto di lavoro.

YEAR({entryDate})

Campi personalizzati matematici calcolati mathematical-calculated-custom-fields

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

Espressione
Spiegazione
ABS

Restituisce il valore assoluto del numero ed è formattata nel modo seguente. In questo esempio viene utilizzato il numero di oggetti sotto l’oggetto a cui è associato il modulo personalizzato.

ABS({numberOfChildren})

AVERAGE

Restituisce la media dei numeri ed è formattata nel modo seguente:

AVERAGE(number1, number2, ...)

CEIL

Arrotonda un numero per eccesso al numero intero più vicino ed è formattata nel modo seguente. In questo esempio viene utilizzato il numero di oggetti sotto l’oggetto a cui è associato il modulo personalizzato.

CEIL({numberOfChildren})

DIV

Divide tutti i numeri nell’ordine indicato ed è formattata nel modo seguente:

DIV(number1, number2, ...)

FLOOR

Arrotonda un numero per difetto al numero intero più vicino ed è formattata nel modo seguente. In questo esempio viene utilizzato il numero di oggetti sotto l’oggetto a cui è associato il modulo personalizzato.

FLOOR({numberOfChildren})

LN

Restituisce il valore del logaritmo naturale del numero ed è formattata nel modo seguente:

LN({numberOfChildren})

LOG

Restituisce il valore del logaritmo di number2 in base a number1 ed è formattata nel modo seguente:

LOG(number1, number2)

MAX

Restituisce l’elemento più grande dell’elenco ed è formattata nel modo seguente:

MAX(item1, item2, ...)

MIN

Restituisce l’elemento più piccolo dell’elenco ed è formattata nel modo seguente:

MIN(item1, item2, ...)

NUMBER

Converte una stringa in un numero ed è formattata nel modo seguente:

NUMBER(string)

POWER

Restituisce un numero elevato a potenza ed è formattata nel modo seguente:

POWER(number, power)

PROD

Moltiplica tutti i numeri ed è formattata nel modo seguente:

PROD(number1, number2, ....)

NOTA

Quando moltiplichi i campi che contengono ore, verifica 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 alla precisione di decimali specificata ed è formattata nel modo seguente:

ROUND(number, precision)

SORTASCNUM

Ordina i numeri in ordine crescente ed è formattata nel modo seguente:

SORTASCNUM(number1,number2, ...)

SORTDESCNUM

Ordina i numeri in ordine decrescente ed è formattata nel modo seguente:

SORTDESCNUM(number1, number2, ...)

SQRT

Restituisce la radice quadrata di un numero ed è formattata nel modo seguente: In questo esempio viene utilizzato il numero di oggetti sotto l’oggetto a cui è associato il modulo personalizzato.

SQRT({numberOfChildren})

SUB

Sottrae tutti i numeri nell’ordine fornito ed è formattata nel modo seguente:

SUB(number1, number2, ...)

SUM

Somma tutti i numeri ed è formattata nel modo seguente:

SUM(number1, number2, ...)

Campi personalizzati calcolati di tipo testo text-calculated-custom-fields

Puoi creare un campo personalizzato calcolato che mostri un valore in formato testo utilizzando le seguenti espressioni:

Espressione
Spiegazione
ARRAY

Converte una stringa in un array. Il delimitatore può essere una qualsiasi stringa.

L’espressione è formattata nel modo seguente:

ARRAY(string1, "delimiter")

ARRAYCONTAINS

Cerca un valore specifico in un elenco o array. Se il valore viene trovato, la funzione restituisce True, altrimenti restituisce False.

L’espressione è formattata nel modo seguente:

ARRAYCONTAINS(array, value)

ARRAYLENGTH

Restituisce il numero di elementi nell’array ed è formattata nel modo seguente:

ARRAYLENGTH(array)

ARRAYELEMENT

Restituisce l’elemento al numero specificato nell’array. Se l’indice è fuori dai limiti, lo restituisce vuoto.

L’espressione è formattata nel modo seguente:

ARRAYELEMENT(array, number)

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 è formattata nel modo seguente:

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

Funziona meglio con altre espressioni che restituiscono un numero, come DAYOFWEEK, DAYOFMONTH e MONTH.

CONCAT

Concatena la stringa ed è formattata nel modo seguente:

CONCAT(string1,"separator", string2)

Di seguito sono riportati alcuni esempi di separatori che puoi includere:

  • uno spazio: “ ”
  • un trattino: “-”
  • una barra: “/”
  • una virgola: “,”
  • una parola: “or”, “and”
CONTAINS

Restituisce True se la stringa findText viene trovata all’interno della stringa withinText ed è formattata nel modo seguente:

CONTAINS(findText, withinText)

ENCODEURL

Applica l’escape di tutti i caratteri speciali della stringa in modo che possano essere inclusi in un argomento URL.

L’espressione è formattata nel modo seguente:

ENCODEURL(string)

FORMAT

Restituisce il testo formattato. Con FORMAT sono consentite solo le opzioni dei parametri elencate qui.

Le opzioni colore sono $$POSITIVE, $$INFORMATIVE, $$NEGATIVE, $$NOTICE e le altre opzioni di formattazione sono $$BOLD, $$ITALIC, $$UNDERLINE. È consentita una sola opzione colore, insieme a un massimo di tre altre opzioni di formattazione. Se non viene specificata alcuna opzione colore, viene applicato il colore predefinito del sistema.

L’espressione è formattata nel modo seguente:

FORMAT($$POSITIVE, $$BOLD, $$ITALIC)

Nota: questa espressione non è supportata in Pianificazione di Workfront.

IF

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

L’espressione è formattata nel modo seguente:

IF(condition, trueExpression, falseExpression)

Ad esempio, puoi confrontare due diversi campi data seguiti da un risultato True/False come stringa di dati:

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

Nel linguaggio colloquiale, questa istruzione significa: “SE la data di completamento prevista del mio oggetto è ‘Successiva a’ la data di completamento pianificata del mio stesso oggetto, allora mostra le parole ‘In ritardo’ in questo campo; in caso contrario, mostra le parole ‘In linea con la pianificazione’”.

Se non desideri 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 delle istruzioni “IF”, consulta Panoramica delle istruzioni “IF”.

IFIN

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

L’espressione è formattata nel modo seguente:

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

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

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

Nel linguaggio colloquiale, 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 desideri 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 è formattata nel modo seguente:

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

ISBLANK

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

L’espressione è formattata nel modo seguente:

ISBLANK(value)

LEFT

Restituisce un numero specificato di caratteri dalla parte sinistra di una stringa ed è formattata nel modo seguente:

LEFT(string, length)

LEN

Restituisce la lunghezza di una stringa ed è formattata nel modo seguente:

LEN(string)

LOWER

Restituisce la stringa in minuscolo ed è formattata nel modo seguente:

LOWER(string)

PASCAL

Converte la stringa di input in PascalCase trasformando in maiuscolo la prima lettera di ciascuna parola e rimuovendo tutti gli spazi.

L’espressione è formattata nel modo seguente:

PASCAL(string)

Ad esempio, “hello world” diventa “HelloWorld”

REMOVEACCENTS

Rimuove i segni diacritici da tutti i caratteri accentati nella stringa di input.

L’espressione è formattata nel modo seguente:

REMOVEACCENTS(string)

Ad esempio, “Héllo wörld con àccénti” diventa “Hello world con accenti”.

REPLACE

Sostituisce tutte le occorrenze di stringa2 con stringa3 nella stringa1.

L’espressione è formattata nel modo seguente:

REPLACE(string1, string2, string3)

REPLACEPATTERN

Sostituisce le corrispondenze del pattern specificato con la stringa di sostituzione.

L’espressione è formattata nel modo seguente:

REPLACEPATTERN (string, pattern, replacement string)

Ad esempio, REPLACEPATTERN("foo123bar", "\d+", "_") genera la stringa “foo_bar”.

RIGHT

Restituisce un numero specificato di caratteri dalla parte destra di una stringa ed è formattata nel modo seguente:

RIGHT(string, length)

SEARCH

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

L’espressione è formattata nel modo seguente:

SEARCH(findText, withinText, start)

SORTASCARRAY

Ordina gli elementi dell’array in ordine crescente e li converte nel tipo del primo elemento.

L’espressione è formattata nel modo seguente:

SORTASCARRAY(array)

Ad esempio, [“-12,6”, -13,0] diventa [“-12,6”, “-13”].

Nota: questa espressione non è supportata in Pianificazione di Workfront.

SORTDESCARRAY

Ordina gli elementi dell’array in ordine decrescente e li converte nel tipo del primo elemento.

L’espressione è formattata nel modo seguente:

SORTDESCARRAY(array)

Ad esempio, [“-12,6”, -13,0] diventa [“-13”, “-12,6”].

Nota: questa espressione non è supportata in Pianificazione di Workfront.

STRING

Converte un numero in una stringa ed è formattata come segue:nel modo seguente:

STRING(number)

SORTASCSTRING

Ordina un elenco di stringhe in ordine crescente ed è formattata come segue:nel modo seguente:

SORTASCSTRING(string1, string2, ...)

SORTDESCSTRING

Ordina un elenco di stringhe in ordine decrescente ed è formattata come segue:nel modo seguente:

SORTDESCSTRING(string1, string2, ...)

SUBSTR

Restituisce i caratteri di una stringa in base all’indice iniziale e finale specificato ed è formattata come segue:nel modo seguente:

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

SWITCH

Valuta l’espressione rispetto a un elenco di valori e restituisce il risultato che corrisponde al primo valore corrispondente.

L’espressione è formattata nel modo sguente:

SWITCH(expression, value1, result1, [value2, result2], ...)

Questa espressione non è supportata in Pianificazione di Workfront.

TRIM

Rimuove lo spazio vuoto dall’inizio e dalla fine di una stringa ed è formattata nel modo seguente:

TRIM(string)

UPPER

Restituisce una stringa in maiuscolo ed è formattata nel modo seguente:

UPPER(string)

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