jueves, 25 de enero de 2024
Crear mensajes con posibilidad de confirmación
jueves, 10 de junio de 2021
Evitar que se manden notificaciones de correo
Mi caso es una aplicación que utilizo para cambiar la propiedad de una carpeta, y de todos los archivos y subcarpetas que incluye, de forma automática.
Gracias al esquema que comenté en el artículo "Recorrer carpetas y documentos en Drive" es bastante sencillo de hacer: Simplemente debes añadir por cada archivo o subcarpeta la línea: archivo.setOwner(email_del_nuevo_propietario)
Pero tiene una consecuencia importante, muy molesta: por cada archivo o subcarpeta manda un correo de cambio de propiedad. En según que casos, pueden llegar miles de correos a la vez a la cuenta del nuevo propietario.
Por lo que hay que buscar en el código algún método que "desmarque" las notificaciones. Resulta que no lo hay en la API driveApp y tenemos que recurrir a los servicios avanzados de Google para activar la API llamada drive. Una vez activada el código cambiaría de esta forma:
En vez de una sola línea, necesitamos seis. Dentro de ellas, debemos definir en role la palabra owner (para propietario), en el value metemos el correo del nuevo propietario y, para acabar, metemos el id del archivo o subcarpeta en la variable archivo_id. Para acabar, aún siendo lo más importante, definimos el valor 'sendNotificationEmails' como 'false'
Más información en Drive API de Google
Hay que tener en cuenta que editor no es editor sino writer, pero lector si es reader
jueves, 16 de enero de 2020
Mensaje emergente con html
Esta función muestra un ejemplo sencillo
function mostrarHtml() {
// Escribimos una URL para el enlace que queremos que aparezca en el mensaje
var url = 'https://drive.google.com/drive/folders/1zOkH9gbqhox5ezwTcnZGBoTeHQXYQ8nq'
// Escribimos el nombre que queremos que aparezca como mensaje
var name ='google'
// En una variable metemos todo el código html más la url y el nombre
var html = '<html><div><img src="https://www.andalucialab.org/wp-content/uploads/2013/11/sostenibilidad-estrategia-negocio.jpg " width="112" height="119" align="top"/> <a href="'+url+'" target="blank">'+name+'</a></div></html>';
// Con este código creamos el mensaje
var ui = HtmlService.createHtmlOutput(html)
// Tenemos dos opciones de mostrar
// En el centro de la pantalla
SpreadsheetApp.getUi().showModalDialog(ui, 'Car')
// Como barra lateral derecha
SpreadsheetApp.getUi().showSidebar(ui)
// Existe otra tercera más, que aunque el mensaje aparece encima de la pantalla, permite seguir trabajando sin tener que cerrarlo
SpreadsheetApp.getUi().showModelessDialog(ui)
}Por supuesto, hay que conocer el código html, pero podemos casi obviar este aprendizaje con esta herramienta online: https://html-online.com/editor/
Crear PDF horizontal
El código que vamos a mostrar aquí no ha sido creado por nosotros, sino que lo hemos encontrado en Internet. Objetivo: Publicar una pesta...
-
El código que vamos a mostrar aquí no ha sido creado por nosotros, sino que lo hemos encontrado en Internet. Objetivo: Publicar una pesta...
-
Estoy haciendo código para conseguir quitar todos los permisos a un correo concreto en todos los archivos y subcarpetas de una carpeta dada....
-
La fórmula importrange es muy potente, ya que nos permite unir datos de diferentes hojas de cálculo y, con un poco de imaginación, ofrecer ...