/ / / Cómo sobrecargar tus aplicaciones de Google con el editor de scripts

Cómo sobrecargar tus aplicaciones de Google con el editor de scripts

Google Apps Script Lede

Si usa Google Apps, entonces es probable que esténo usarlos en toda su extensión. Con Google Apps Script, puede agregar menús y cuadros de diálogo personalizados, escribir funciones personalizadas y macros, y crear complementos para ampliar Google Docs, Sheets y Slides.

¿Qué es el script de Google Apps?

Google Apps Script es un desarrollo basado en la nubeplataforma para crear aplicaciones web personalizadas y livianas. Puede crear aplicaciones escalables directamente dentro de su navegador que se integren sin esfuerzo con los productos de Google.

Apps Script utiliza el lenguaje JavaScript yreúne la familiaridad del desarrollo web y los productos de Google en un solo lugar, por lo que es una herramienta perfecta para personalizar aplicaciones para su negocio, organización o simplemente para automatizar tareas cotidianas.

Puede crear dos tipos de scripts con Google Apps Script:

  • Ser único: Estas secuencias de comandos no están vinculadas a ningún servicio, comoDocumentos, hojas de cálculo o diapositivas de Google. Pueden realizar funciones en todo el sistema, como macros. No son ideales para compartir con una audiencia más amplia porque necesitas copiar y pegar el código para usarlos. Los ejemplos incluyen buscar en su Drive archivos con nombres específicos o ver quién tiene acceso a sus archivos y carpetas compartidos en Drive.
  • Ligado: Estos están vinculados a Google Docs, Hojas de cálculo, Formularios,o archivo de diapositivas. Las secuencias de comandos enlazadas amplían la funcionalidad de un archivo y realizan acciones solo en ese archivo específico. Los ejemplos incluyen agregar menús personalizados, cuadros de diálogo y barras laterales a un servicio o un script que le envía notificaciones por correo electrónico cada vez que cambia una celda en particular en una Hoja.

Si no sabes mucho JavaScript, o tal veznunca has oído hablar de él antes, no dejes que eso te asuste de desarrollar un script propio. Es muy fácil comenzar a utilizar Apps Script, ya que proporciona una gran cantidad de documentación y ejemplos para que los pruebe por su cuenta. A continuación se presentan algunos ejemplos simples para ayudarlo a comprender cómo funcionan.

Cómo crear una secuencia de comandos independiente

Ahora que sabes lo que son vamos a seguir adelantey crea tu primer script independiente. Utilizaremos una muestra de código de Google para ayudarnos a poner la pelota en marcha, y proporcionaremos explicaciones de las líneas de código si no está familiarizado con GoogleScript o JavaScript.

Dirígete a Google Apps Script. En la esquina superior izquierda, haga clic en el icono de hamburguesa, luego haga clic en "Nuevo guión".

Se abre un nuevo proyecto sin título con una función vacía en el interior, pero debido a que estamos usando un código de muestra de Google, puede continuar y eliminar todo el texto del archivo.

Tu primera función de script de aplicaciones

Nota: Debe iniciar sesión en su cuenta de Google para que este script funcione.

Después de haber eliminado el código que está precargado en el archivo, pegue el siguiente código:

//Initialize your function
function createADocument() {
// Create a new Google Doc named 'Hello, world!'
var doc = DocumentApp.create('Hello, world!');
// Access the body of the document, then add a paragraph.
doc.getBody().appendParagraph('This document was created by Google Apps Script.');
}

Antes de poder ejecutar el código, debe guardar el script. Haga clic en "Archivo" y luego haga clic en "Guardar".

haga clic en Archivo, luego haga clic en Guardar para guardar su secuencia de comandos

Cambie el nombre del proyecto a algo que lo ayude a recordar lo que hace el script, luego presione “OK”.

Cambie el nombre de su proyecto a algo que le indique qué hace el script, luego haga clic en Aceptar

Para ejecutar su código, haga clic en el icono de reproducción ubicado en la barra de herramientas.

Haz clic en el ícono Ejecutar

Deberá otorgarle al script algunos permisos para acceder a su cuenta de Google a través de una ventana emergente después de hacer clic en "Ejecutar" la primera vez. Haga clic en "Revisar permisos" para ver a qué necesita acceder.

Antes de que el script pueda ejecutarse, debe revisar los permisos que requiere. Haga clic en Revisar permisos

Debido a que esta no es una aplicación verificada de Google, ustedRecibirá otra advertencia. Básicamente dice que, a menos que sepa que el desarrollador (nosotros) solo procederá si confía en ellos. Haga clic en "Avanzado", luego haga clic en "Ir a CreateNewDoc" (o lo que sea que nombró este script).

Aparece una advertencia de Google que indica que la aplicación que está ejecutando no está verificada por ellos. Haga clic en avanzado, luego haga clic en Ir a CreateNewDoc

Revise los permisos que requiere el script, luego haga clic en "Permitir".

Revise los permisos, luego haga clic en Permitir

¡Excelente! Ahora, dirígete a tu Drive y, si todo funciona, el archivo "¡Hola, mundo!" Debería estar allí. Haga doble clic para abrirlo.

Navegue a su unidad y haga doble clic en el archivo recién creado

Cuando abra el archivo, verá que la línea de texto del código se agrega a su documento.

Dentro del archivo está la línea de texto que agregó a través del script

Ahora, si desea recibir una notificación por correo electrónico cuando se cree el documento, puede agregar algunas líneas de código más para enviar una automáticamente a su cuenta de Google. Agregue las siguientes líneas de código después doc.getBody().appendParagraph('This document was created by Google Apps Script.'); pero antes del último corchete } :

// Get the URL of the document.
var url = doc.getUrl();
// Get the email address of the active user - that's you.
var email = Session.getActiveUser().getEmail();
// Get the name of the document to use as an email subject line.
var subject = doc.getName();
// Append a new string to the "url" variable to use as an email body.
var body = 'Link to your doc: ' + url;
// Send yourself an email with a link to the document.
GmailApp.sendEmail(email, subject, body);

Haga clic en el icono "Ejecutar".

Haz clic en el ícono Ejecutar

Debido a que agregó un par de líneas adicionales que requieren permisos adicionales, debe realizar el mismo proceso que antes. Haga clic en "Revisar permisos".

Antes de que el script pueda ejecutarse, debe revisar los permisos que requiere. Haga clic en Revisar permisos

Haga clic en "Avanzado", luego haga clic en "Ir a CreateNewDoc".

Nota: Como Google te advierte sobre el lanzamientoaplicaciones no verificadas, también recibirá un correo electrónico de alerta de seguridad que le notificará. Google hace esto solo en caso de que usted no haya sido el que otorga acceso a una aplicación no verificada.

Revise el nuevo conjunto de permisos que requiere el script, luego haga clic en "Permitir".

Revise el nuevo permiso y haga clic en Permitir

Cuando se crea el documento, recibe un correo electrónico con un enlace al archivo en su Google Drive.

La notificación por correo electrónico que se envía automáticamente desde el script contiene un enlace al nuevo documento.

Al hacer clic en el enlace, accederá directamente al archivo, que se encuentra dentro de su Google Drive.

Dentro del archivo está la línea de texto agregada desde el script

Cómo crear una secuencia de comandos enlazada

Para el siguiente ejemplo, creemos un script encuadernado para Hojas de cálculo de Google que analice una hoja existente para entradas duplicadas en una fila y luego las elimine.

Si recuerda de antes, los scripts encuadernados funcionan como un complemento para archivos específicos, así que para crear uno, abramos una hoja de cálculo de Google Sheet existente que contenga al menos un punto de datos duplicado.

Una hoja de Google con filas duplicadas

Haga clic en "Herramientas" y luego en "Editor de secuencias de comandos".

Haga clic en Herramientas, luego haga clic en Editor de secuencias de comandos

Google Apps Script se abre en una nueva pestaña con un script vacío. Esta vez, sin embargo, el script está vinculado a la Hoja desde la que se abre.

Una función vacía para su script encuadernado

Al igual que antes, elimine la función vacía y pegue el siguiente código:

//Removes duplicate rows from the current sheet.
function removeDuplicates() {
//Get current active Spreadsheet
var sheet = SpreadsheetApp.getActiveSheet();
//Get all values from the spreadsheet's rows
var data = sheet.getDataRange().getValues();
//Create an array for non-duplicates
var newData = [];
//Iterate through a row's cells
for (var i in data) {
var row = data[i];
var duplicate = false;
for (var j in newData) {
if (row.join() == newData[j].join()) {
duplicate = true;
}
}
//If not a duplicate, put in newData array
if (!duplicate) {
newData.push(row);
}
}
//Delete the old Sheet and insert the newData array
sheet.clearContents();
sheet.getRange(1, 1, newData.length, newData[0].length).setValues(newData);
}

Nota: Para que el script elimine un duplicado, todas las celdas de la fila deben coincidir.

Guarde y cambie el nombre de su script, luego presione el icono "Ejecutar".

Haz clic en el ícono Ejecutar

De nuevo, como te encontraste en el último script,creado, deberá revisar los permisos que requiere su secuencia de comandos y otorgarle acceso a su hoja de cálculo. Haga clic en "Revisar permisos" para ver qué acceso desea este script.

Haga clic en Revisar permisos para ver los permisos solicitados

Acepte las indicaciones y haga clic en "Permitir" para autorizar la secuencia de comandos.

Revise los permisos, luego haga clic en Permitir

Cuando termine de ejecutarse, regrese a su Hoja y, como por arte de magia, ¡todas las entradas duplicadas desaparecen de su archivo!

¡Se han eliminado los puntos de datos duplicados!

Desafortunadamente, si sus datos están dentro de una tabla, como en el ejemplo anterior, este script no cambiará el tamaño de la tabla para que se ajuste al número de entradas.


Aunque estos son dos bastante sencillosejemplos de cómo usar Apps Script, las opciones son casi ilimitadas, y todo depende de lo que pueda soñar con estos recursos. Pero, mientras tanto, dirígete a la página GSuite Devs Github o Digital Inspiration y revisa la pila de scripts de muestra que puedes implementar dentro de tus propios servicios para tener una mejor idea de lo que Apps Script es realmente capaz de hacer.