Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

208
Visualizações
Necesito 2 botones diferentes, para crear una nueva carpeta y crear un nuevo PDF en esa carpeta

He estado luchando para crear informes semanales específicos del sistema de existencias. Entonces, para brindarle una descripción general básica, tengo una hoja maestra desde la que quiero generar informes, activada por un botón de la interfaz de usuario. Sin embargo, el primer paso es crear una carpeta para esa semana para colocar los PDF. Puedo crear la carpeta y puedo generar el PDF en mi carpeta raíz de Google Drive, pero parece que no puedo mover el PDF a ningún lado después de eso. . Intenté usar .moveTo() pero no puedo hacer que funcione. ¿Alguién tiene algún consejo?

 function onOpen(e) { SpreadsheetApp.getUi() .createMenu('Physical') .addItem('New folder','newFolder') .addItem('Generate PDF','generatePDF') .addToUi(); } function newFolder(){ var today = new Date(); var week = Utilities.formatDate(today, "Europe/Amsterdam", "w"); //need to find a way to minus 1 for the current week var spreadsheetId = SpreadsheetApp.getActiveSpreadsheet().getId(); //time to create a new folder var spreadsheetFile = DriveApp.getFileById(spreadsheetId); var folderId = spreadsheetFile.getParents().next().getId(); var parFolder = DriveApp.getFolderById(folderId) var destFolder = parFolder.createFolder('Week ' + week); } function generatePDF(){ var ss = SpreadsheetApp.getActiveSpreadsheet(); var speadsheetFile = ss.getId(); var file = DriveApp.getFileById(speadsheetFile); var folderId = file.getParents().next().getId(); var pdf = DriveApp.createFile(ss.getBlob()) pdf.moveTo(folderId); //find way to move file either to destination folder or to parent folder }
about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

Descripción

Este tipo de situaciones son difíciles de probar porque las circunstancias son específicas del interrogador OP. Sin embargo, creo que esto funcionará.

Con las propiedades del script de PropertyService, almacene el identificador de carpeta recién creado y luego obtenga ese identificador de las propiedades del script para mover el archivo.

Una nota de precaución, no revisé el caso si la semana cambia y no se crea una nueva carpeta, el pdf irá a la carpeta de la semana anterior.

Con respecto a la creación de un botón y la vinculación de una función al botón, consulte este artículo Botones en Hojas de cálculo de Google

Guion

 function newFolder(){ var today = new Date(); var week = Utilities.formatDate(today, "Europe/Amsterdam", "w"); //need to find a way to minus 1 for the current week var spreadsheetId = SpreadsheetApp.getActiveSpreadsheet().getId(); //time to create a new folder var spreadsheetFile = DriveApp.getFileById(spreadsheetId); var folderId = spreadsheetFile.getParents().next().getId(); var parFolder = DriveApp.getFolderById(folderId); var folderName = 'Week '+week; // check if folder already exists var subFolders = parFolder.getFoldersByName(folderName); var destFolder = null; if( subFolders.hasNext() ) { SpreadsheetApp.getUi().alert("Folder "+folderName+" already exists"); destFolder = subFolders.next(); } else { destFolder = parFolder.createFolder(folderName); } // store folder id to Script Properties var props = PropertiesService.getScriptProperties(); props.setProperty("foldeId",destFolder.getId()); } function generatePDF(){ var ss = SpreadsheetApp.getActiveSpreadsheet(); // get folder id from Script Properties var folderId = PropertiesService.getScriptProperties("folderId"); if( !folderId ) { SpreadsheetApp.getUi().alert("Property folderId not found"); return; } var pdf = DriveApp.createFile(ss.getBlob()) pdf.moveTo(folderId); //find way to move file either to destination folder or to parent folder }

Referencia

  • Aplicación de hoja de cálculo.getUi().alert()
  • PropiedadesServicio
about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda