Hasta el momento, le hemos mostrado cómo usar campos y valores literales como valores de entrada para las funciones. Este enfoque es relativamente directo y, en muchas situaciones, es lo único que se necesita en Analytics.

En los scripts de Analytics, las variables se suelen utilizar como información de entrada para las funciones, en lugar de utilizar campos o valores literales.

En este tutorial, veremos el uso de variables con una función. El tutorial finaliza con un script sencillo que incluye una función con variables como información de entrada. Las variables le permiten al usuario especificar los valores de entrada reales de forma interactiva.

Puede pensar en una variable como un contenedor con nombre en la memoria de una computadora. Usted proporciona el nombre al crear la variable. La variable puede almacenar, ya sea temporal o permanentemente, todos los valores que un usuario seleccione o especifique.

Las variables tienen dos cualidades sumamente útiles:

  • Flexibilidad Las variables hacen que el script sea mucho más flexible.

    Por ejemplo, en lugar de requerir un nombre de campo específico o un conjunto de fechas, un script puede utilizar variables para permitir que los usuarios seleccionen o especifiquen el nombre de campo o las fechas que deseen.

  • Claridad Las variables hacen que el script sea más fácil de comprender al revisarlo o actualizarlo.

    Es mucho más fácil comprender una variable con un nombre representativo como entrada de una función, que un conjunto de datos sin procesar. Puede ver la diferencia con los dos ejemplos de la función BETWEEN( ) que se incluye a continuación.

Si desea obtener más información, consulte Trabajar con variables en ACLScript.

BETWEEN( ) sin variables

Considere el ejemplo de BETWEEN( ) que utilizamos para crear un filtro en un tutorial anterior:

BETWEEN(Invoice_Date; `20000101`; `20000331`)

El filtro restringe los registros del campo Invoice_Date al primer trimestre del año 2000.

Esta versión de la función BETWEEN( ) es útil si no nos importa cambiar el nombre de campo manualmente, cada vez que deseamos utilizarlo en otro contexto.

Pero, ¿qué ocurre si queremos incluir este filtro en un script para que otros usuarios lo ejecuten con otros datos y esos usuarios no comprenden cómo actualizar la información de entrada de función?

Tenga en cuenta, también, que no es posible, con una simple inspección visual, determinar de manera concluyente la finalidad de los datos sin procesar que proporcionan información de entrada.

BETWEEN( ) con variables

En lugar de especificar el campo real y los valores de fecha literales como valores de entrada para la función BETWEEN( ), puede especificar las siguientes variables:

BETWEEN(v_campo_de_fecha; v_fecha_de_inicio; v_fecha_de_finalización)

Junto con un script interactivo, esta versión de la función BETWEEN( ) le permite a un usuario escoger cualquier campo de fecha que desee y especificar las fechas de inicio y finalización.

Tenga en cuenta, además, que con solo mirar la función, la finalidad de cada valor de entrada resulta claro.

Nota

Por convención, los creadores de scripts anteceden los nombres de las variables con "v_", de modo que en un script complejo resulte sencillo ver qué es una variable y qué no lo es.

Punto clave

Por medio del uso de variables, es posible crear una aplicación mucho más amplia y flexible de una función.

Puede probar la función BETWEEN( ) en la línea de comandos de Analytics para ver exactamente de qué manera funcionan las variables.

La prueba de las funciones en la línea de comandos se explica detalladamente en un tutorial anterior: Familiarización con diferentes funciones.

Crear las variables

  1. En Analytics, en la parte inferior del Navegador, haga clic en la ficha Variables.

    La ficha Variables muestra todas las variables que existen actualmente en un proyecto de Analytics y el valor que cada variable contiene actualmente.

  2. Cree las tres variables de ejemplo introduciendo las siguientes definiciones de variable en la línea de comandos, de a una por vez:
    • v_campo_fecha = `20170715`

      Para este ejemplo, simplemente especificaremos un valor literal único para la variable v_campo_fecha en lugar de un campo real.

    • v_fecha_de_inicio = `20170701`
    • v_fecha_de_finalización = `20170731`

    En la ficha Variables, debe ver las tres variables que acaba de crear, con los valores asignados.

Probar BETWEEN( )

  1. Copie y pegue el ejemplo de BETWEEN( ) en la línea de comandos:

    BETWEEN(v_campo_de_fecha; v_fecha_de_inicio; v_fecha_de_finalización)

  2. Escriba DISPLAY y un espacio antes del ejemplo. A continuación, pulse Intro.

    El resultado debería ser T para Verdadero, sobre la base de los valores incluidos en las variables:

    15 de julio de 2017 se encuentra entre las fechas de inicio y finalización especificadas.

Ver el resultado del cambio de uno de los valores de la variable

  1. Actualice el valor de v_fecha_de_inicio introduciendo lo siguiente en la línea de comandos:

    v_fecha_de_inicio = `20170716`

    En la ficha Variables, debería ver que el valor de v_fecha_de_inicio se actualizó al 16 de julio de 2017, que cae después del valor v_campo_de_fecha.

  2. Vuelva a ejecutar la función BETWEEN( ) en la línea de comandos.

    El resultado debería ser F para Falso, sobre la base de los valores incluidos en las variables:

    15 de julio de 2017 no se encuentra entre las fechas de inicio y finalización especificadas.

El script sencillo que se encuentra a continuación le permite a un usuario aplicar un filtro de fechas a cualquier tabla de Analytics con un campo de fecha.

No se preocupe si no puede comprender la sintaxis del script. La finalidad principal es que vea la función BETWEEN( ) en acción dentro de un script.

Antes de cada sección de sintaxis del script, hay una línea de comentario (COMMENT) que explica en palabras sencillas lo que está haciendo la sintaxis. Las funciones están resaltadas en marrón.

Cómo ejecutar el script de ejemplo en Analytics

  1. Abra un proyecto de Analytics que contenga una o más tablas con campos de fecha.

    Sample Project.ACL tiene varias tablas con campos de fecha.

  2. Cree un nuevo script vacío:
    1. En el Navegador, haga clic con el botón derecho del ratón en una carpeta o en el proyecto de mayor nivel y seleccione Nuevo > Script.
    2. Copie y pegue todo el script que figura a continuación en el nuevo script del Editor de scripts.
    3. Guarde el proyecto.
  3. Haga clic en Ejecutar para ejecutar el script.
  4. Siga las indicaciones de los cuadros de diálogo para seleccionar una tabla y un campo de fecha, y especifique las fechas de inicio y finalización.

    El script se ejecuta y filtra la tabla que seleccionó sobre la base del campo y las fechas que usted proporcionó.

    Consejo

    Si obtiene una tabla vacía o una gran cantidad de registros, compruebe las fechas de la tabla sin filtrar y vuelva a ejecutar el script con las fechas de inicio y finalización que usted sabe que devolverán una pequeña cantidad de registros.

Cosas a tener en cuenta

  • Tenga en cuenta que en una tabla filtrada, las funciones BETWEEN( ) aparecen en el cuadro de texto Filtro con los valores de entrada reales que usted especificó.
  • Compruebe la ficha Variables. Los valores de las tres variables de ejemplo se actualizan con los valores que usted seleccionó y especificó al ejecutar el script.

Script de ejemplo: filtrar los registros por fecha

El script de ejemplo filtra los registros de una tabla por fecha, utilizando las fechas que usted especifique.

Nota

Es posible que note que la función CTOD( ) está anidada dentro de la función BETWEEN( ). La función CTOD( ) convierte los valores de carácter en valores de fecha, lo cual es necesario en esta situación.

Si desea obtener más información, consulte Comando ACCEPT.

COMMENT
Este script sencillo le permite aplicar un filtro de fecha a cualquier tabla de Analytics con un campo de fecha.
END

COMMENT Le indica que seleccione una tabla del proyecto de Analytics.

ACCEPT
"Seleccione una tabla con un campo de fecha:" FIELDS "xf" TO v_nombre_de_tabla

COMMENT Abre la tabla seleccionada.

OPEN
%v_nombre_tabla%

COMMENT Le indica que seleccione un campo de la tabla.

ACCEPT
"Seleccione un campo de fecha:" FIELDS "D" TO v_campo_de_fecha

COMMENT Le indica que especifique las fechas de inicio y de finalización para el filtro.

ACCEPT
"Especifique una fecha de inicio (YYYYMMDD):" TO v_fecha_inicio; "Especifique una fecha de finalización (YYYYMMDD):" TO v_fecha_finalización

COMMENT Aplica el filtro a la tabla y el campo que usted seleccionó.

SET
FILTER TO BETWEEN(%v_campo_fecha%, CTOD(%v_fecha_inicio%), CTOD(%v_fecha_finalización%))

Revise y ejecute un script que utilice varias funciones para ayudar a realizar una tarea del mundo real Combinación de todo lo aprendido: uso de funciones en un script