Extiende Google Apps programando tus propias extensiones

Google Apps Script es un lenguaje de scripting basado en JavaScript que nos permite interactuar con los productos de la suite de Google como Docs, Sheets, Slides y Forms.

Es un lenguaje de scripting basado en JavaScript que nos permite interactuar con los productos de la suite de Google como Docs, Sheets, Slides y Forms. No necesitamos instalar nada solo debemos utilizar el editor de código proporcionado por Google desde el navegador, y nuestros scripts se ejecutarán sobre los servidores de Google.

De acuerdo con la documentación de Google algunas cosas interesantes que podemos realizar con App Script son:

  • Agregar menús personalizados, cuadros de diálogo y barras laterales a Google Docs, Sheets y Forms.
  • Escribir funciones personalizadas para Google Sheets.
  • Publicar aplicaciones web, ya sea de forma independiente o integradas en Google Sites.
  • Interactuar con otros servicios de Google, incluidos AdSense, Analytics, Calendar, Drive, Gmail y Maps.
  • Crear complementos para extender Google Docs, Sheets, Slides y Forms, y publicarlos en la Add-on store.
  • Convertir una aplicación de Android en un complemento de Android para que pueda intercambiar datos con Google Docs o Sheets de un usuario en un dispositivo móvil.
  • Agilizar los flujos de trabajo de Chat de Hangouts creando un bot de chat

Apps Script utiliza 3 tipos de scripts:

  • Standalone: Es cualquier script que no esta vinculado a un archivo de Google Sheets, Docs, Slides, or Forms o Google Sites. Estos scripts se almacenan en los archivos de Google Drive.
  • Container-bound: Es un script que esta vinculado a un archivo de Google Sheets, Docs o Forms, es decir se creó a partir de un documento. El archivo al que se adjunta el script se conoce como "container". Los scripts enlazados generalmente se comportan como Standalone scripts, excepto que no aparecen en Google Drive, no se pueden separar del archivo al que están vinculados.
  • Web Apps: Si construimos una interfaz de usuario para trabajar con un script, tenemos la posibilidad de publicar el script como una Web App

De acuerdo con lo anterior realizaremos un ejercicio para entender el funcionamiento de Google App Script, en nuestro ejercicio usaremos un script Standalone donde crearemos un archivo de Google Sheet con un contenido y enviaremos por correo el enlace a través de Gmail.

  1. Ingresamos a script.google.com para abrir el editor de scripts, damos click en la opción "Start Scripting" (Se nos solicitará que iniciemos sesión en una cuenta de Google).
  2. Se abrirá el editor de script, le daremos un nombre al archivo, por ejemplo "HolaMundo"
  3. En el editor eliminaremos cualquier código que se encuentre y pegaremos el siguiente código:

function createSheetAndSend() {
  // Creamos un nuevo archivo de Google Sheet llamado EDteam
  var file = SpreadsheetApp.create("EDteam");
  
  // Nos ubicamos en la hoja activa del archivo 'Sheet1'
  var sheet = file.getActiveSheet();
  
  // En la hoja activa nos ubicamos en la celda A1 e incluimos el texto 'Hola Mundo'
  var range = sheet.getRange("A1").setValue("Hola Mundo");

  // Obtenemos la URL del archivo de Google Sheet.
  var url = file.getUrl();
  
  // Creamos una variable para el destinatario de nuestro correo
  var email = 'example@gmail.com';
  
  // Obtenemos el nombre del archivo para incluirlo como asunto en el email.
  var subject = file.getName();

  // Agregamos el contenido del correo.
  var body = 'Hola, este es el archivo de EDteam adjunto: ' + url;

  // Enviamos el email.
  GmailApp.sendEmail(email, subject, body);
}

Para ejecutar el script, solo debemos dar click en el botón ▶, luego nos aparecerá un cuadro de diálogo que nos solicitará autorización para ejecutar el script, permitimos la ejecución y nuestro correo electrónico será enviado, si revisamos nuestro Drive veremos tanto el archivo de App Script como el archivo de Google Sheet.

Puedes encontrar mayor información visitando la documentación oficial de Google App Script aquí, donde podrás encontrar la referencia completa y ejemplos prácticos para trabajar con los diferentes productos de Google, este post esta basado en dicha documentación.

Espero puedas poner en práctica esta información para automatizar tus tareas con la suite de Google. ¡Nos vemos pronto!

Sigue leyendo