Custom Table Calculations (Functions): Creación de Expresiones

Custom Calculations (también llamadas "Functions") se construyen en el editor de expresiones. A medida que escriba su expresión, el sistema le indicará las funciones, los operadores y los nombres de los campos que podría utilizar. Funciona como se describe a continuación.

Nota: El acceso a esta función requiere una licencia adicional.

 

Ver todas las Sugerencias

Ingrese un espacio para ver una lista de todos los campos, funciones y operadores que puede elegir. Es una lista bastante larga, por lo que normalmente querrá empezar a teclear para acortar la lista a los elementos que le interesan.

 

 

Añadir un Campo

Para incluir un campo en su expresión, comience a escribir el nombre del campo. A medida que escriba, el editor reducirá su búsqueda a una lista de campos y funciones que contienen lo que ha escrito. Cuando se selecciona un campo de la lista, el sistema lo añade a la expresión en forma de ${view_name.field_name}. Esto asegura que todos los campos tienen nombres únicos en su expresión.

A continuación, puede leer instrucciones más detalladas sobre el uso de los campos.

 

Añadir Operadores

Puede añadir operadores lógicos como AND, OR y NOT a su expresión si es necesario. Usualmente, los operadores AND se evalúan antes que los operadores OR, pero se puede anular este comportamiento utilizando paréntesis. También puede utilizar operadores de comparación (como >, = y <=) y operadores matemáticos (como + y *).

Cuando el cursor está en un operador, puede comprobar las notas que aparecen a la derecha de la expresión en el panel de información, para su correcta utilización.

A continuación, puede leer instrucciones más detalladas sobre el uso de los operadores.

 

Añadir Funciones

Para incluir una función en su expresión, comience a escribir el nombre de la función. A medida que escriba, el editor reducirá su búsqueda a una lista de campos y funciones que contienen lo que ha escrito.

Las funciones pueden construirse con argumentos (o variables) que requieren un tipo determinado, como un campo, un número o un sí/no. Cuando el cursor está en una función, puede comprobar las notas que aparecen a la derecha de la expresión, en el panel de información, para saber qué argumentos debe proporcionar y de qué tipo deben ser.

Para ver la lista completa de funciones, consulte la sección de nuestra página de Data Dictionary dedicada a Custom Calculations.

A continuación, puede leer instrucciones más detalladas sobre el uso de las funciones.

 

Uso de las Sugerencias de error y del Panel de información

Observe que a medida que escribe una expresión, la información se muestra en el panel de la derecha. Este panel proporciona sugerencias, especialmente si tiene un error en su expresión.

Como se muestra arriba, el editor proporciona:

  • Resaltado de errores. En el propio editor, las partes de la expresión que aún no son correctas aparecerán subrayadas en rojo.
  • Sugerencias e información de los errores. La parte superior del panel de información ofrece sugerencias sobre qué añadir a continuación en su expresión. Si hay un error, explica por qué se produce el error. Si hay varios errores, el error que le muestra se basa en la ubicación de su cursor.
  • Relleno automático de argumentosMientras se escribe el primer argumento de una función if (), el sistema proporciona la información de que el primer argumento debe evaluarse como verdadero o falso.

 

Uso de los Campos

En algunas ocasiones, querrá utilizar el valor de un campo (una dimension, measure, o un cálculo personalizado) en una expresión. Puede que quiera añadir el valor del campo a otra cosa, comprobar que tiene un valor determinado, incluirlo en una función, o muchas otras posibilidades.

Como se ha descrito anteriormente, basta con escribir el nombre del campo en el editor de expresiones, el sistema le ayudará a encontrar la forma correcta de referenciarlo. Cuando se añade un campo a una expresión, el sistema utiliza el identificador del campo, que se parece a ${view_name.field_name}. Este identificador no siempre coincide con el nombre del campo en el selector de campos, pero no pasa nada si no sabe cuál es. Simplemente escriba el nombre del campo tal y como aparece en el selector de campos y el editor de expresiones le mostrará el nombre del selector de campos y el identificador juntos.

Hay varias formas de recuperar un valor.

 

Obtener un valor de la misma fila

La forma más básica de utilizar un campo es referenciarlo directamente. Por ejemplo, su expresión podría utilizar

${product.category}

Cuando hace esto, está diciendo "Para cualquier fila, coja el Tipo de Llamada de esa fila."

 

Obtener un valor de una fila diferente

También puede obtener el valor de un campo de una fila diferente. Por ejemplo, podría querer la lógica "para cualquier fila dada, tomar el Tipo de Llamada de la fila anterior". Para ello, puede utilizar una función de desplazamiento. Podría verse así.

offset(${call_type}, -1)

 

Obtener un valor de una columna pivotada

También puede obtener valores de columnas pivotadas. Por ejemplo, es posible que quiera la lógica "para cualquier fila determinada, tomar las Llamadas Totales de la primera columna pivotada". Para trabajar con columnas pivotadas, tendrá que utilizar funciones pivotantes. Podría verse así.

pivot_index(${total_inbound_calls_answered}, 1)

 

Obtener un total de una fila o columna

Si ha añadido totales a su Explore, puede obtener los valores totales de la columna o la fila añadiendo:total (para los totales de columna) o:row_total (para los totales de fila) al nombre del campo, utilizando el formato ${field_name:total}. Por ejemplo, si quiere un porcentaje del total de un recuento de llamadas, podría crear un cálculo personalizado como éste:

${total_inbound_calls_answered} / ${total_inbound_calls_answered:total}

 

Uso de Operadores

Las expresiones a veces incluyen operadores lógicos, de comparación y matemáticos, para ayudarle a crear diferentes condiciones:

  • Los operadores lógicos son cosas como AND, OR y NOT
  • Los operadores de comparación son cosas como > y <
  • Los operadores matemáticos son cosas como + y -

Suelen ser fáciles de usar. Sólo hay que tener en cuenta que el AND lógico se considera antes que el OR lógico, a menos que se especifique lo contrario con paréntesis. De esa manera, la siguiente expresión, sin paréntesis adicionales:

if (
  ${argument.1}>=4 OR
  ${argument.2}>5 AND
  ${argument.3},
"volume up", "volume down")

se evaluaría como:

if (
  ${argument.1}>=4 OR
  (${argument.2}>5 AND ${argument.3}),
"volume up", "volume down")

La otra cosa que hay que tener en cuenta es cómo se maneja el verdadero y falso. Debe utilizar sí y no en lugar de verdadero y falso. Estas constantes lógicas no son lo mismo que las palabras "sí" y "no", que van entre comillas.

 

Uso de las Funciones

Las expresiones suelen incluir una o más funciones, que ayudan a recuperar ciertos datos o a calcular ciertas cosas. Su naturaleza es similar a la de las funciones de Excel, por lo que si ha utilizado las funciones de Excel, se sentirá cómodo con el uso de funciones en Explore.

Si no está familiarizado con las funciones, éstas tienen la forma de un nombre seguido de dos paréntesis, así:

my_function()

A veces tendrá que proporcionar información dentro de esos paréntesis, separada por comas. Estos fragmentos de información se denominan "arguments" y tienen el siguiente aspecto:

my_function(argument_1, argument_2)

Por ejemplo, la función now no toma ningún argumento y le da la fecha y la hora actuales. Lo usaría así:

now()

En cambio, la función de redondeo sí toma un argumento, que es un número. Lo usaría así.

round(3.2)

El resultado que obtendría es 3.

Hay dos maneras de saber qué argumentos tendrá que proporcionar, si es que hay alguno:

  1. El panel de información que aparece a la derecha del editor de expresiones le proporcionará cierta información sobre la función que está escribiendo.
  2. También puede visitar directamente la página de Funciones y Operadores y buscar la función que desea utilizar.

Para consolidar este concepto, consideremos la función de contiene:

Función Syntax Propósito

contains

contains(string, search_string)

Devuelve Yes si la cadena contiene search_string, y No en caso contrario

Puede ver que se necesitan dos argumentos. Tienen los nombres string y search_string, pero eso no significa que tenga que escribir la palabra exacta "string" y "search_string" en la función. Estos son sólo nombres para los argumentos que usted reemplazará con algo. Leyendo el propósito, vemos que string debe ser un campo u otro valor en el que queremos buscar, mientras que search_string es lo que queremos buscar. Un ejemplo podría ser:

contains(${call_direction}, "Inbound")

Si la palabra "Inbound" aparece en la distribución, esta función nos dará un resultado de Yes, de lo contrario, dará un resultado de No. La palabra que se busca y se coloca entre comas es sensible a las mayúsculas y minúsculas, por lo que en este caso concreto hay que poner la "I" inicial en mayúsculas para que la función reconozca la palabra y devuelva los resultados adecuados, de lo contrario, todos los resultados devolverían "No".

La tabla con los resultados del Cálculo de la Custom Table sería: Lo último que hay que saber es que se pueden poner funciones dentro de otras funciones para manejar cualquier lógica compleja que se desee. Mientras el resultado de la función interna sea apropiado para los argumentos de la función externa, funcionará. Por ejemplo:

mod(
diff_days(
date(2019,01,01), ${create_calls_ring_groups.datetime}) + 2, 7)

Aquí hemos insertado la función date dentro de la función diff_days, que a su vez está dentro de una función mod. Funciona así:

  1. La función date() comprueba qué fecha estamos considerando en nuestra distribución, en este caso, ${create_calls_ring_groups.datetime}.
  2. A continuación, la función diff_days() busca la fecha de inicio (2019,01,01) y la fecha de finalización (${create_calls_ring_groups.datetime}); y devuelve el número de días entre las 2 (digamos que nuestra fecha de finalización sería 2019.09.30; el número de días entre las 2 fechas es 272 días).
  3. Por último, la función mod() devuelve el residuo (a los 272 días hemos añadido 2, por lo que considera el lunes como el día 1 de la semana).

El cálculo completo sería:

  • 274 (la diferencia de días entre la fecha de inicio y la de finalización más 2 días para ajustar el primer día de la semana) dividido 7 (el número de días en una semana) para llegar a 39.1428571429 (274/7=39.1428571429).
  • Redondea a un número entero igual a 39. Multiplica 39 por 7 para obtener 273 (39*7=273).
  • Si se resta este número al número original 274, se obtiene un residuo de 1 (274-273=1), que es el número ordinal del lunes de la semana para nuestro análisis específico

La documentación de Funciones y Operadores le permite saber qué funciones son las más adecuadas para sus necesidades. Cuando se utilizan funciones en el cálculo de una tabla se puede utilizar cualquier función.

Volver ""
Por favor, inicie sesión para enviar una solicitud.