Objetivo: Actualice el código a continuación para guardar los archivos adjuntos en una carpeta de "Prueba" dentro de "Unidad compartida"
Hasta ahora he tenido éxito al guardar archivos adjuntos en "Mi unidad" usando el script gmail2gdrive que se encuentra en https://github.com/ahochsteger/gmail2gdrive
Este script usa DriveApp.getRootFolder() para encontrar la carpeta raíz, pero no busca las unidades compartidas.
Tengo configurado el servicio avanzado "Drive" y puedo ver al menos hasta 10 carpetas en la unidad compartida usando getSharedDrives() , pero no he podido actualizar el código para transferir archivos a unidades compartidas.
function movefileToSharedDrive() { const file = DriveApp.getFileById('');//fileid const fldr = DriveApp.getFolderById('');//shared drive id Drive.Files.update({"parents": [{"id": fldr.getId()}]}, file.getId(), null, {"supportsAllDrives":true}); }La versión 2 de Drive API debe estar habilitada
El ID de la unidad de carpeta se puede encontrar en la extensión URL: ID de la unidad de carpeta
Use los ID de unidad de las carpetas (de arriba) para completar la sección correspondiente del código a continuación (Copia los archivos de la carpeta deseada a la carpeta compartida):
function movefileToSharedDrive() { makeCopy("", ""); //("From My Drive ID", "To Shared Drive ID") } function makeCopy(srcFolderId, dstFolderId) { var srcFolder = DriveApp.getFolderById(srcFolderId); var dstFolder = DriveApp.getFolderById(dstFolderId); var files = srcFolder.getFiles(); while (files.hasNext()) { var file = files.next(); var f = file.makeCopy(dstFolder); if (file.getMimeType() == MimeType.GOOGLE_APPS_SCRIPT) { Drive.Files.update({"parents": [{"id": dstFolderId}]}, f.getId()); } } }