Resumen 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 Agregar 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 utiliza son las mismas, la sintaxis para crear una expresión en un campo personalizado calculado puede ser diferente de la que utiliza para crear una columna personalizada calculada.
Las diferencias entre las dos sintaxis son las siguientes:
Por ejemplo:
-
En un campo personalizado, en un formulario personalizado para tareas, debe utilizar 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, utilizaría lo siguiente para agregar 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 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 Introducción 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 enumeradas 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 frente a columnas personalizadas calculadas de este artículo.
Campos personalizados calculados por fecha y hora date-time-calculated-custom-fields
Puede crear un campo personalizado calculado de fecha y hora con las siguientes expresiones:
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)
Agrega el número de días de la semana a la fecha. Esta expresión solo agrega valores enteros a la fecha, redondeando hacia abajo.
La expresión tiene el siguiente formato:
ADDWEEKDAYS(date, number)
Añade el número de meses a la fecha y tiene el siguiente formato:
ADDMONTHS(date, number)
Añade el número de años a la fecha y tiene el siguiente formato:
ADDYEARS(date, number)
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})
Convierte una cadena en una fecha y tiene el siguiente formato:
DATE(string)
Devuelve el número de días entre las 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 cuenta como un día completo.
La expresión tiene el siguiente formato:
DATEDIFF(date1, date2)
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})
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})
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})
Devuelve el total de días de la semana entre la fecha y el final de la semana o el final del mes, el que sea 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})
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})
Devuelve la fecha más reciente en la lista y tiene el siguiente formato:
DMAX(date1, date2, ...)
Devuelve la fecha más temprana de la lista y tiene el siguiente formato:
DMIN(date1, date2, ...)
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})
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})
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})
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})
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)
Devuelve la cantidad de minutos programados entre las fechas según el horario predeterminado.
La expresión tiene el siguiente formato:
WORKMINUTESDIFF(date1, date2)
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:
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})
Devuelve el promedio de números y tiene el siguiente formato:
AVERAGE(number1, number2, ...)
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})
Divide todos los números en el orden proporcionado y tiene el siguiente formato:
DIV(number1, number2, ...)
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})
Devuelve el valor de logaritmo natural del número y tiene el siguiente formato:
LN({numberOfChildren})
Devuelve el valor de logaritmo del número2 en base el número1 y tiene el siguiente formato:
LOG(number1, number2)
Devuelve el elemento más grande de la lista y tiene el siguiente formato:
MAX(item1, item2, ...)
Devuelve el elemento más pequeño de la lista y tiene el siguiente formato:
MIN(item1, item2, ...)
Convierte una cadena en un número y tiene el siguiente formato:
NUMBER(string)
Devuelve un número elevado a una potencia y tiene el siguiente formato:
POWER(number, power)
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 tenga que tener en cuenta la conversión de minutos o segundos a horas al escribir una expresión con este cálculo.
Redondea el número hacia arriba para especificar los decimales de precisión y tiene el siguiente formato:
ROUND(number, precision)
Ordena los números en orden ascendente y tiene el siguiente formato:
SORTASCNUM(number1,number2, ...)
Ordena los números en orden descendente y tiene el siguiente formato:
SORTDESCNUM(number1, number2, ...)
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})
Resta todos los números en el orden proporcionado y tiene el siguiente formato:
SUB(number1, number2, ...)
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:
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.
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"
Devuelve true si la cadena texto se encuentra dentro de la cadena enTexto y tiene el siguiente formato:
CONTAINS(findText, withinText)
Omite cualquier carácter especial de la cadena para que se pueda incluir en un argumento URL.
La expresión tiene el siguiente formato:
ENCODEURL(string)
Evalúa una condición especificada y devuelve el valor de la expresión verdadera si es verdadera o el valor de la expresión falsa 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 cadena de datos:
IF({projectedCompletionDate}>{plannedCompletionDate},"Off Track","On Track")
En el discurso diario, esta afirmació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 muestre las palabras 'Fuera de pista' en este campo; de lo contrario, muestre las palabras 'En pista'".
Si no desea etiquetar las expresiones true o false, 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".
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 la expresión verdadera; de lo contrario, devuelve la expresión falsa.
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 de proyecto:
IFIN({owner}.{name},"Jennifer Campbell","Rick Kuvec","Marketing Team","Other Teams")
En el discurso diario, esta declaración significa: "Si el propietario del proyecto es Jennifer Campbell o Rick Kuvec, marque este proyecto con 'Equipo de marketing'; de lo contrario, márquelo con 'Otros equipos'".
Si no desea etiquetar las expresiones true o false, 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","")
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...])
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)
Devuelve un número especificado de caracteres desde el lado izquierdo de una cadena y tiene el siguiente formato:
LEFT(string, length)
Devuelve la longitud de una cadena y tiene el siguiente formato:
LEN(string)
Devuelve la cadena en minúsculas y tiene el siguiente formato:
LOWER(string)
Reemplaza todas las apariciones de cadena2 por cadena3 en cadena1.
La expresión tiene el siguiente formato:
REPLACE(string1, string2, string3)
Devuelve el número de caracteres especificado del lado derecho de una cadena y tiene el siguiente formato:
RIGHT(string, length)
Devuelve el índice de la primera aparición de texto en la cadena enTexto, 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)
Convierte un número en una cadena y tiene el siguiente formato:
STRING(number)
Ordena una lista de cadenas en orden ascendente y tiene el siguiente formato:
SORTASCSTRING(string1, string2, ...)
Ordena una lista de cadenas en orden descendente y tiene el siguiente formato:
SORTDESCSTRING(string1, string2, ...)
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)
Elimina los espacios en blanco del principio y del final de una cadena y tiene el siguiente formato:
TRIM(string)
Devuelve una cadena en mayúsculas con el siguiente formato:
UPPER(string)