Información general de las expresiones de datos calculados

Puede utilizar expresiones de datos para definir campos personalizados calculados en Adobe Workfront. Las expresiones calculadas conectan los campos de Workfront existentes en las instrucciones que generan un nuevo campo.

Puede utilizar expresiones de datos calculados en:

  • Un campo personalizado calculado en un formulario personalizado

    Para obtener más información sobre la creación de campos personalizados calculados en formularios personalizados en Workfront, consulte Añadir campos calculados a un formulario.

  • Columna personalizada calculada en un informe o una lista cuando se utiliza el modo de texto

    Para obtener más información acerca del uso del modo de texto en informes y vistas, vea Información general sobre el modo de texto.

Sintaxis de campos personalizados calculados frente a columnas personalizadas calculadas

Aunque las funciones que se utilizan son las mismas, la sintaxis para crear una expresión en un campo personalizado calculado puede ser diferente de la que utilice para crear una columna personalizada calculada.

Las diferencias entre las dos sintaxis son:

Campo personalizado calculado
Elemento de creación de informe personalizado calculado
Incluir los nombres de los campos entre llaves

No escriba los nombres de los campos entre corchetes o paréntesis cuando los utilice en una

valuefield

línea.

Incluya los nombres de los campos entre llaves cuando los utilice en una

valueexpression

línea.

Separe los campos con puntos

Separe los campos con dos puntos al usarlos en una

valuefield

línea.

Separe los campos con puntos al usarlos en una

valueexpression

línea.

Por ejemplo:

  • En un campo personalizado, en un formulario personalizado para tareas, se utilizaría lo siguiente para generar el nombre del proyecto principal de la tarea donde se adjunta el formulario personalizado:

    {project}.{name}

  • En una columna personalizada de un informe, se utilizaría lo siguiente para añadir una columna personalizada Nombre del proyecto en un informe de tareas:

    valuefield=project:name

    O

    valueexpression={project}.{name}

    note tip
    TIP
    La misma sintaxis se aplica a todos los elementos de creación de informes en el modo de texto donde se utilizan expresiones calculadas: vistas, filtros, agrupaciones, indicadores.

Para obtener más información acerca de la sintaxis que debe usar en una columna personalizada calculada, vea Información general al modo de texto.

Expresiones de datos que puede utilizar

Las siguientes listas definen las expresiones disponibles que puede utilizar al crear uno de los tres tipos diferentes de campos personalizados calculados en Workfront:

Puede utilizar las expresiones que se enumeran a continuación para crear columnas personalizadas calculadas. Sin embargo, debe utilizar la sintaxis correcta para una columna personalizada calculada, tal como se describe en la sección Sintaxis de los campos personalizados calculados vs. columnas personalizadas calculadas de este artículo.

Campos personalizados calculados por fecha y hora date-time-calculated-custom-fields

NOTE
Si crea un cálculo de fecha y hora que no incluye una parte de hora o que utiliza los caracteres comodín de fecha $$TODAY o $$NOW, el sistema utilizará la fecha según la zona horaria universal coordinada (UTC), no según la zona horaria local. Esto puede provocar un resultado de fecha inesperado.

Puede crear un campo personalizado calculado de fecha y hora con las siguientes expresiones:

Expresión
Explicación y ejemplo
ADDDAYS

Añade el número de días a la fecha. El valor numérico puede incluir días parciales. Por ejemplo, 1,5 añade un día y medio a la fecha.

La expresión tiene el siguiente formato:

ADDDAYS(date, number)

ADDWEEKDAYS

Añade el número de días de la semana a la fecha. Esta expresión solo añade valores enteros a la fecha, redondeando hacia abajo.

La expresión tiene el siguiente formato:

ADDWEEKDAYS(date, number)

ADDMONTHS

Añade el número de meses a la fecha y tiene el siguiente formato:

ADDMONTHS(date, number)

ADDYEARS

Añade el número de años a la fecha y tiene el siguiente formato:

ADDYEARS(date, number)

ADDHOURS

Añade el número de horas a la fecha y tiene el siguiente formato:

ADDHOUR(date, number)

Nota: Esta expresión no se admite en Workfront Planning.

CLEARTIME

Borra la parte de hora de una fecha y tiene el siguiente formato. En este ejemplo, la fecha es la fecha de entrada de un objeto de trabajo.

CLEARTIME({entryDate})

DATE

Convierte una cadena en una fecha y tiene el siguiente formato:

DATE(string)

DATEDIFF

Devuelve el número de días entre las dos fechas, teniendo en cuenta los días de inicio y de finalización del periodo seleccionado, así como las marcas de tiempo de esos días. Por ejemplo, si la hora de inicio de la fecha de inicio son las 15:00 h, el día de inicio no se cuenta como un día completo.

La expresión tiene el siguiente formato:

DATEDIFF(date1, date2)

DAYOFMONTH

Devuelve el día del mes de la fecha en forma de número, entre 1 y 31.

La expresión tiene el siguiente formato. En este ejemplo, la fecha es la fecha de entrada de un objeto de trabajo.

DAYOFMONTH({entryDate})

DAYOFWEEK

Devuelve el día de la semana de la fecha en forma de número, entre 1 (domingo) y 7 (sábado).

La expresión tiene el siguiente formato. En este ejemplo, la fecha es la fecha de entrada de un objeto de trabajo.

DAYOFWEEK({entryDate})

DAYSINMONTH

Devuelve el total de días del mes de la fecha en forma de número y tiene el siguiente formato. En este ejemplo, la fecha es la fecha de entrada de un objeto de trabajo.

DAYSINMONTH({entryDate})

DAYSINSPLITWEEK

Devuelve el total de días de la semana entre la fecha y el final de la semana o el final del mes, lo que se dé primero. En este ejemplo, la fecha es la fecha de entrada de un objeto de trabajo.

La expresión tiene el siguiente formato:

DAYSINSPLITWEEK({entryDate})

DAYSINYEAR

Devuelve el total de días del año de la fecha en forma de número y tiene el siguiente formato. En este ejemplo, la fecha es la fecha de entrada de un objeto de trabajo.

DAYSINYEAR({entryDate})

DMAX

Devuelve la fecha más reciente de la lista y tiene el siguiente formato:

DMAX(date1, date2, ...)

DMIN

Devuelve la fecha más anterior de la lista y tiene el siguiente formato:

DMIN(date1, date2, ...)

HOUR

Devuelve la hora de la fecha en forma de número entre 0 y 23.

La expresión tiene el siguiente formato. En este ejemplo, la fecha es la fecha de entrada de un objeto de trabajo.

HOUR({entryDate})

MINUTE

Devuelve el minuto de la fecha en forma de número entre 0 y 60, con el siguiente formato. En este ejemplo, la fecha es la fecha de entrada de un objeto de trabajo.

MINUTE({entryDate})

MONTH

Devuelve el mes de la fecha en forma de número entre 1 y 12, con el siguiente formato. En este ejemplo, la fecha es la fecha de entrada de un objeto de trabajo.

MONTH({entryDate})

SECOND

Devuelve el segundo de la fecha en forma de número entre 0 y 60, con el siguiente formato. En este ejemplo, la fecha es la fecha de entrada de un objeto de trabajo.

SECOND({entryDate})

WEEKDAYDIFF

Devuelve el número de días de la semana entre dos fechas, teniendo en cuenta los días de inicio y finalización del periodo seleccionado, así como las marcas de tiempo de esos días. Por ejemplo, si la hora de inicio de la fecha de inicio es 15:00, el día de inicio no se contará como un día completo.

La expresión tiene el siguiente formato:

WEEKDAYDIFF(date2, date1)

WORKMINUTESDIFF

Devuelve la cantidad de minutos programados entre las dos fechas según el horario predeterminado.

La expresión tiene el siguiente formato:

WORKMINUTESDIFF(date1, date2)

YEAR

Devuelve el año de la fecha en un número de 4 dígitos con el siguiente formato. En este ejemplo, la fecha es la fecha de entrada de un objeto de trabajo.

YEAR({entryDate})

Campos personalizados calculados matemáticos mathematical-calculated-custom-fields

Puede crear un campo personalizado calculado que utilice algunas de las siguientes expresiones matemáticas:

Expresión
Explicación
ABS

Devuelve el valor absoluto del número y tiene el siguiente formato. En este ejemplo se utiliza el número de objetos situados debajo del objeto donde está adjunto el formulario personalizado.

ABS({numberOfChildren})

AVERAGE

Devuelve el promedio de números y tiene el siguiente formato:

AVERAGE(number1, number2, ...)

CEIL

Redondea un número hacia arriba hasta el entero más próximo y tiene el siguiente formato. En este ejemplo se utiliza el número de objetos situados debajo del objeto donde está adjunto el formulario personalizado.

CEIL({numberOfChildren})

DIV

Divide todos los números en el orden proporcionado y tiene el siguiente formato:

DIV(number1, number2, ...)

FLOOR

Redondea un número hacia abajo hasta el entero más próximo y tiene el siguiente formato. En este ejemplo se utiliza el número de objetos situados debajo del objeto donde está adjunto el formulario personalizado.

FLOOR({numberOfChildren})

LN

Devuelve el valor de logaritmo natural del número y tiene el siguiente formato:

LN({numberOfChildren})

LOG

Devuelve el valor de logaritmo del número2 en base el número1 y tiene el siguiente formato:

LOG(number1, number2)

MAX

Devuelve el elemento más grande de la lista y tiene el siguiente formato:

MAX(item1, item2, ...)

MIN

Devuelve el elemento más pequeño de la lista y tiene el siguiente formato:

MIN(item1, item2, ...)

NUMBER

Convierte una cadena en un número y tiene el siguiente formato:

NUMBER(string)

POWER

Devuelve un número elevado a una potencia y tiene el siguiente formato:

POWER(number, power)

PROD

Multiplica todos los números y tiene el siguiente formato:

PROD(number1, number2, ....)

NOTA

Al multiplicar los campos que contienen horas, asegúrese de comprender si la base de datos guarda las horas de los campos seleccionados en minutos, horas o segundos. Si las horas se guardan en minutos o segundos, pero se muestran en horas en la interfaz de Workfront, es posible que deba tener en cuenta la conversión de minutos o segundos a horas al escribir una expresión con este cálculo.

ROUND

Redondea el número hacia arriba para especificar los decimales de precisión y tiene el siguiente formato:

ROUND(number, precision)

SORTASCNUM

Ordena los números en orden ascendente y tiene el siguiente formato:

SORTASCNUM(number1,number2, ...)

SORTDESCNUM

Ordena los números en orden descendente y tiene el siguiente formato:

SORTDESCNUM(number1, number2, ...)

SQRT

Devuelve la raíz cuadrada de un número y tiene el siguiente formato. En este ejemplo se utiliza el número de objetos situados debajo del objeto donde está adjunto el formulario personalizado.

SQRT({numberOfChildren})

SUB

Resta todos los números en el orden proporcionado y tiene el siguiente formato:

SUB(number1, number2, ...)

SUM

Suma todos los números y tiene el siguiente formato:

SUM(number1, number2, ...)

Campos personalizados calculados de texto text-calculated-custom-fields

Puede crear un campo personalizado calculado que muestre un valor con formato de texto mediante las siguientes expresiones:

Expresión
Explicación
MATRIZ

Convierte una cadena en una matriz. El delimitador puede ser cualquier cadena.

La expresión tiene el siguiente formato:

ARRAY(string1, "delimiter")

LONGITUD DE MATRIZ

Devuelve el número de elementos de la matriz con el siguiente formato:

ARRAYLENGTH(array)

ARRAYELEMENT

Devuelve el elemento en el número especificado de la matriz. Si el índice está fuera de los límites, devuelve vacío.

La expresión tiene el siguiente formato:

ARRAYELEMENT(array, number)

SORTASCARRAY

Ordena los elementos de la matriz en orden ascendente y los convierte al tipo del primer elemento.

La expresión tiene el siguiente formato:

SORTASCARRAY(array)

Por ejemplo, ["-12,6", -13,0] se convierte en ["-12,6", "-13"].

Nota: Esta expresión no se admite en Workfront Planning.

SORTDESCARRAY

Ordena los elementos de la matriz en orden descendente y los convierte al tipo del primer elemento.

La expresión tiene el siguiente formato:

SORTDESCARRAY(array)

Por ejemplo, ["-12,6", -13,0] se convierte en ["-13", "-12,6"].

Nota: Esta expresión no se admite en Workfront Planning.

CASE

Se utiliza con otras expresiones para elegir un valor de una lista según un número de índice.

Un número de índice es un campo o una función que devuelve un valor numérico (normalmente en un intervalo conocido).

La expresión tiene el siguiente formato:

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

Por ejemplo, la siguiente expresión devuelve el nombre del día de la semana, donde 1 = domingo, 2 = lunes, etc., en una columna calculada:

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

Funciona mejor con otras expresiones que devuelven un número, como DAYOFWEEK, DAYOFMONTH y MONTH.

CONCAT

Concatena la cadena y tiene el siguiente formato:

CONCAT(string1,"separator", string2)

Los siguientes son ejemplos de separadores que puede incluir:

  • un espacio: " "
  • un guión: "-"
  • una barra diagonal: "/"
  • una coma: ","
  • una palabra: "o", "y"
CONTAINS

Devuelve verdadero si la cadena findText se encuentra dentro de la cadena withinText y tiene el siguiente formato:

CONTAINS(findText, withinText)

ENCODEURL

Excluye cualquiera de los caracteres especiales de la cadena para ser incluidos en un argumento URL.

La expresión tiene el siguiente formato:

ENCODEURL(string)

FORMATO

Devuelve texto con formato. Las opciones de color son $$POSITIVE, $$INFORMATIVE, $$NEGATIVE, $$NOTICE y las demás opciones de formato son $$BOLD, $$ITALIC, $$UNDERLINE. Solo se puede utilizar una opción de color por función, junto con hasta tres opciones de formato más. Si no se especifica ninguna opción de color, se aplica el color predeterminado del sistema.

La expresión tiene el siguiente formato:

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

Nota: Esta expresión no se admite en Workfront Planning.

IF

Evalúa una condición que se haya especificado y devuelve el valor de trueExpression si es verdadero o el valor de falseExpression si es falsa.

La expresión tiene el siguiente formato:

IF(condition, trueExpression, falseExpression)

Por ejemplo, puede comparar dos campos de fecha diferentes seguidos de un resultado Verdadero/Falso como una cadena de datos:

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

En el discurso diario, esta instrucción significa: “Si la fecha proyectada de finalización de mi objeto es 'mayor que' que la fecha planificada de finalización de mi mismo objeto, entonces muestra las palabras 'Fuera de calendario' en este campo; de lo contrario, muestra las palabras 'Según lo planeado'”.

Si no desea etiquetar las expresiones verdadera o falsa, debe insertar una etiqueta en blanco en la instrucción, como:

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

O

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

Para obtener más información acerca de la creación de instrucciones “IF”, vea Información general sobre instrucciones “IF”.

IFIN

Permite buscar un valor específico en una cadena de valores posibles. Si el valor que busca es igual a uno de los valores proporcionados, la expresión devuelve trueExpression; de lo contrario, devuelve falseExpression.

La expresión tiene el siguiente formato:

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

Por ejemplo, puede encontrar un Propietario del proyecto específico y marcar esos proyectos con una etiqueta especificada en una vista del proyecto:

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

En el discurso diario, esta instrucción significa: “Si el propietario del proyecto es Jennifer Campbell o Rick Kuvec, marca este proyecto con 'Equipo de marketing'; de lo contrario, márcalo con 'Otros equipos'”.

Si no desea etiquetar las expresiones verdadera o falsa, debe insertar una etiqueta en blanco en la instrucción, como:

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

O

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

IN

Devuelve verdadero si el valor equivale a uno de los valores proporcionados; de lo contrario, la expresión devuelve falso.

La expresión tiene el siguiente formato:

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

ISBLANK

Devuelve verdadero si el valor es nulo o está vacío; de lo contrario, la expresión devuelve falso.

La expresión tiene el siguiente formato:

ISBLANK(value)

LEFT

Devuelve el número de caracteres especificado del lado izquierdo de una cadena y tiene el siguiente formato:

LEFT(string, length)

LEN

Devuelve la longitud de una cadena y tiene el siguiente formato:

LEN(string)

LOWER

Devuelve la cadena en minúsculas y tiene el siguiente formato:

LOWER(string)

REPLACE

Reemplaza todas las ocurrencias de string2 por string3 en string1

La expresión tiene el siguiente formato:

REPLACE(string1, string2, string3)

RIGHT

Devuelve el número de caracteres especificado del lado derecho de una cadena y tiene el siguiente formato:

RIGHT(string, length)

SEARCH

Devuelve el índice de la primera ocurrencia de findText en la cadena withinText, comenzando en la posición de inicio dada o -1 si no se encuentra el texto.

La expresión tiene el siguiente formato:

SEARCH(findText, withinText, start)

STRING

Convierte un número en una cadena y tiene el siguiente formato:

STRING(number)

SORTASCSTRING

Ordena una lista de cadenas en orden ascendente y tiene el siguiente formato:

SORTASCSTRING(string1, string2, ...)

SORTDESCSTRING

Ordena una lista de cadenas en orden descendente y tiene el siguiente formato:

SORTDESCSTRING(string1, string2, ...)

SUBSTR

Devuelve los caracteres de una cadena en función del índice inicial y final especificado y tiene el siguiente formato:

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

CONMUTADOR

Evalúa la expresión frente a una lista de valores y devuelve el resultado correspondiente al primer valor coincidente.

La expresión tiene el siguiente formato:

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

Esta expresión no se admite en Workfront Planning.

TRIM

Quita los espacios en blanco del principio y del final de una cadena y tiene el siguiente formato:

TRIM(string)

UPPER

Devuelve una cadena en mayúsculas y tiene el siguiente formato:

UPPER(string)

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