Borrar archivos con google-apps-script

publicado por: Anonymous

Se tiene una hoja de cálculo de google y un script que genera archivos PDF con la información de la hoja de cálculo, los archivos PDF se guardan automáticamente en una carpeta de google drive.
Como se podría automatizar el borrado de los archivos PDF de esa carpeta.
Adjunto código.

    function Hojascalculo() {
var sheetName = "HOY";
var folderID = "123456789"; // Identificador unico de carpeta.
var pdfName = "Informe salidas dia "+Date();

var sourceSpreadsheet = SpreadsheetApp.getActive();
var sourceSheet = sourceSpreadsheet.getSheetByName(sheetName);
var folder = DriveApp.getFolderById(folderID);

//Copia hoja de calculo
var destSpreadsheet = SpreadsheetApp.open(DriveApp.getFileById(sourceSpreadsheet.getId()).makeCopy("temporal_pdf", folder))

var sheets = destSpreadsheet.getSheets();
for (i = 0; i < sheets.length; i++) {
if (sheets[i].getSheetName() != sheetName){
destSpreadsheet.deleteSheet(sheets[i]);
}
}

solución

Existen dos posibilidades:

  1. Borrar el archivo definitivamente

  2. Enviar el archivo a la papelera

El código tiene activada por defecto la primera posibilidad, mientras que la segunda está comentada:

function borrarTodosEnFolder() 
{

  /*Colocar ID del folder*/
  var folderId = '0B...';

  var thisFolder = DriveApp.getFolderById(folderId);
  thisFile = thisFolder.getFiles();

  while (thisFile.hasNext()) 
  {
    var eachFile = thisFile.next();
    var fileId = eachFile.getId();    

    /* Si sólo se quiere enviar a la papelera */
    //eachFile.setTrashed(true);

    /* Para removerlo definitivamente usar remove de la API de Drive antes activada :) */

    Drive.Files.remove(fileId);

    Logger.log("Se removió el archivo: " + eachFile.getName());
  };

}

Nota:

Para que la opción 1 funcione, debes activar Advanced Drive Service en Google Apps Script.

Los pasos son:

  • Ir la opción Recursos del menú superior

  • Ir a Servicios Avanzados de Google

  • En la pantalla que se abrirá, encender Drive Api

introducir la descripción de la imagen aquí

Te dirá que debes tener la Api activada en tu proyecto de la Consola. Si ya la tienes activada no tienes que hacerlo.

  • Click en Aceptar

Ahora podrás usar la API de Drive (y cualquier otra que actives) en Google Script.

Fíjate las opciones que te dará cuando escribas por ejemplo: Drive. 🙂

Respondido por: Anonymous

Leave a Reply

Your email address will not be published. Required fields are marked *