En esta guía paso a paso, le mostraré cómo construir un Generador de tablas de búsqueda en Hojas de cálculo de Googleutilizando Guión de aplicaciones y el API del Administrador de etiquetas de Google.
El propósito del generador de tablas de búsqueda es automatizar la tarea, a menudo tediosa, de agregar muchísimas filas a una tabla de búsqueda dentro de la interfaz de usuario de Google Tag Supervisor. Hay otro soluciones para esto, pero ninguno (hasta donde yo sé) que utilice la API de Google Tag Supervisor.
Además, usar Google Sheets es una obviedad, debido a las similitudes entre la variable de la tabla de búsqueda y una hoja de cálculo. Ambos están organizados en columnas y filas. Google Sheets tiene una maravillosa integración de Apps Script, por lo que se ha realizado la interacción con la API de GTM. muy easy.
Esta herramienta se inspiró en el trabajo que he estado haciendo con intercambio, una empresa finlandesa que reacondiciona smartphones de segunda mano y tiene un mercado que hace que comprar y vender estos teléfonos sea fácil y seguro. Uno de sus casos de uso para el análisis internet es recopilar margen del producto información en sus informes de comercio electrónico, y esto requiere una hoja de datos actualizada diariamente donde los SKU del producto se asignan a sus márgenes de producto actuales.
X
El boletín a fuego lento
Suscríbete al Boletín a fuego lento para recibir las últimas noticias y contenido de Simo Ahava en su bandeja de entrada de correo electrónico.
Obtener la plantilla de hoja
Lo primero que querrás hacer es buscar la plantilla de hoja. Visita esta URL:
https://docs.google.com/spreadsheets/d/1LDJ6NOtMMx_5vwRBdPAx9V0gTLnce-7aglQzSm-Ja7M/
Luego, haga clic en el Archivo menú y seleccione Hacer una copia.
Esto hace una copia de la hoja en su disco, y esta nueva hoja es en lo que trabajará.
Configurar la hoja
A continuación, configure la hoja. Para que el generador de tablas de búsqueda funcione de manera óptima, necesitará lo siguiente:
- Debe crear un nuevo espacio de trabajo solo para el resultado de la tabla de búsqueda. De esa manera, no tendrá que preocuparse por alterar el espacio de trabajo predeterminado (que rara vez debería usarse).
- Debe crear la variable Tabla de búsqueda en el espacio de trabajo.
Una vez que tenga estos dos en su lugar, debe recolectar el ID de la cuenta, ID del contenedor, ID del espacio de trabajoy ID de variable de la tabla de búsqueda. La forma más sencilla de hacerlo es buscar Variables en la interfaz de usuario de GTM y luego botón derecho del ratón la variable Tabla de búsqueda y copie su dirección de enlace.
Si explora esa URL, se verá así:
.../accounts/23019854/containers/8060344/workspaces/1000128/variables/730
El ID de la cuenta es el primero número en esa URL, es decir 23019854
.
El ID del contenedor es el segundo número en esa URL, es decir 8060344
.
El ID del espacio de trabajo es el tercero número en esa URL, es decir 1000128
.
El ID de variable es el cuatro número en esa URL, es decir 730
.
Agréguelos a la hoja en sus lugares apropiados. ¡Nota! También puedes escribir default
como ID del espacio de trabajo, y automáticamente buscará su espacio de trabajo predeterminado, asumiendo que ese es el espacio de trabajo en el que desea trabajar. Nuevamente, no recomiendo esta práctica. no es como Se deben utilizar los espacios de trabajo..
Agregue el código de secuencia de comandos de aplicaciones
A continuación, en Google Sheet, inicie el Editor de guiones. Hacer clic Herramientas y luego elige Editor de guiones.
Si es la primera vez que utiliza el Editor de secuencias de comandos, es posible que deba seguir algunos pasos, pero eventualmente debería ver esto:
Lo siguiente que debe hacer es rebautizar el proyecto. Haga clic en el Untitled mission
texto en la esquina superior izquierda y cambie el nombre del proyecto a, por ejemplo Lookup Desk Generator
. Una vez que hagas clic DE ACUERDOel proyecto se guardará y podrá acceder a sus detalles a través de script.google.com.
Ahora, borrar todo el código en el editor y reemplácelo con el código copiado y pegado de esta esencia.
Recuerde hacer clic en el Crudo para obtener el código en formato de texto sin formato, listo para copiarlo y pegarlo en el editor de scripts.
Tutorial de código
No voy a explicarte paso a paso el código, pero presentaré brevemente lo que cada método hace.
Método | Descripción |
---|---|
getIds |
Analiza la hoja de Google en busca de los ID (ID de cuenta, ID de contenedor, ID de espacio de trabajo, ID de variable) que el usuario ha agregado a sus lugares apropiados. |
getDefaultWorkspaceId |
Si el usuario escribió default como ID del espacio de trabajo, o si el ID del espacio de trabajo que proporcionaron no existe, la hoja vuelve al “Espacio de trabajo predeterminado”. Este método recupera su ID de espacio de trabajo. |
getLookupTable |
Este método utiliza la API de Google Tag Supervisor para recuperar la variable de la tabla de búsqueda a la que apunta el ID de variable. |
sendData |
Los datos de Google Sheet se recopilan, se asignan a su formato de recurso API correcto y se envían a Google Tag Supervisor. El contenido de la hoja se utiliza para actualizar (es decir, reemplazar) el contenido de la variable de la tabla de búsqueda en el contenedor GTM. |
populateSheet |
Este método utiliza los ID (de getIds ) para recuperar el contenido precise de la variable de la tabla de búsqueda en la hoja de Google. |
Finalizar la configuración de Apps Script
Además del código, también debe habilitar el acceso a la API en el Editor de secuencias de comandos. Hacer clic Recursos y seleccione Servicios avanzados de Google...
En la superposición que se abre, desplácese hacia abajo hasta Tagmanager
asegúrese de que tenga v2
seleccionado como versión y luego habilítelo haciendo clic en el botón de alternancia al ultimate.
Hacer clic DE ACUERDO cuando termine.
Prueba con la recuperación de datos
Para probar rápidamente si el código funciona, seleccione el populateSheet
función desde el menú apropiado en el Editor de scripts.
Luego, presione el Jugar botón justo a la izquierda del icono “Error” en la barra de herramientas del Editor de secuencias de comandos.
El script ahora debería solicitar solicitar autorización. Hacer clic Revisar permisos.
Siga las indicaciones de inicio de sesión hasta que vea el mensaje “Esta aplicación no está verificada”. Esta pantalla significa que Google no ha verificado esta aplicación todavía. El uso de API puede ser peligroso en las manos equivocadas, por eso Google advierte sobre esta aplicación.
Dado que estamos creando esto solo para uso interno, no tiene que preocuparse por este mensaje. Puedes hacer clic en el Avanzado enlace y luego el Ir a tu proyecto (inseguro) enlace.
Finalmente, haga clic en el Permitir en la parte inferior de la última pantalla del flujo.
En este punto, se ejecutará el script. Una vez que esté completo, puede regresar a su hoja de Google para verla completa con el contenido de la variable de la tabla de búsqueda.
Prueba con la actualización de datos.
Intentemos actualizar la variable con datos de la hoja.
Primero haga las modificaciones que desee con el contenido de la hoja.
¡Nota! No toques el Aporte y Producción encabezados. Comience a modificar la hoja desde la fila posterior a estas.
A continuación, regrese al Editor de secuencias de comandos y esta vez elija sendData
de la lista de funciones a ejecutar. Haga clic en el botón Reproducir nuevamente.
Si todo funciona bien, ahora debería poder ver la variable de la tabla de búsqueda modificada en el espacio de trabajo de la interfaz de usuario del Administrador de etiquetas de Google.
Mapear los botones en la hoja.
Finalmente, para que la hoja sea un poco más fácil de usar, asignemos los dos botones de la hoja a sus funciones correspondientes.
Haga clic derecho en Obtener datos haga clic en el pequeño menú de acción en la esquina superior derecha y elija Asignar guión.
Tipo populateSheet
en el mensaje que se abre y haga clic en Aceptar.
A continuación, haga lo mismo con el Actualizar datos botón, pero en lugar de populateSheet
tipo sendData
en el mensaje antes de hacer clic en Aceptar.
Ahora, cada vez que alguien hace clic en el Obtener datos botón, el script completará la hoja con los detalles de la variable (suponiendo que el usuario que hace clic en el botón tenga acceso autorizado a Google Tag Supervisor). Cada vez que alguien hace clic en Actualizar datos el script actualizará la variable de la tabla de búsqueda en Google Tag Supervisor con el contenido de la hoja.
Si desea editar el botón nuevamente, debe hacerlo haga clic derecho en élya que al hacer clic izquierdo simplemente se ejecutará el script.
Resumen
Espero que esta prueba de concepto haya sido fácil de seguir. Con estos pasos, puede crear un generador de tablas de búsqueda para uso interno.
Existen limitaciones en cuanto a la cantidad de ejecución del script sin verificar. Querrás echarle un vistazo esta documentación para comprender qué pasos se deben seguir si desea deshacerse de las advertencias de seguridad.
Básicamente, si el script solo está destinado a un uso ocasional por parte del desarrollador (usted), o si el script está destinado a ser utilizado únicamente por usuarios dentro de su Organización de G Suiteno es necesario verificar la aplicación.
Para cualquier otro tipo de uso prolongado, la aplicación debe estar verificadoy esto es un proceso complejo y a menudo tedioso.
Google Sheets + Google Apps Script es uno de los flujos de automatización más potentes y de fácil acceso que existen. Requiere una comprensión mínima de Google Cloud Platform, ya que casi todo está resumido en el entorno limitado de Apps Script.