Создать файл в определенной папке - PullRequest
1 голос
/ 18 октября 2019

У меня есть код, который ежедневно создает лист, содержащий файл, но файл собирается в корневую папку, и я желаю, чтобы файл был создан в определенной уже существующей папке. Ниже приведен код.

function listFolderContents() {
  var date = Utilities.formatDate(new Date(), "GMT+1", "dd/MM/yyyy")  
  var foldername = 'Absense';
  var folderlisting = 'List of ' + foldername + ' ' +date;

  var folders = DriveApp.getFoldersByName(foldername)
  var folder = folders.next();
  var contents = folder.getFiles();

  var ss = SpreadsheetApp.create(folderlisting);
  var sheet = ss.getActiveSheet();
  sheet.appendRow( ['name', 'link'] );

  var file;
  var name;
  var link;
  var row;
  while(contents.hasNext()) {
    file = contents.next();
    name = file.getName();
    link = file.getUrl();
    sheet.appendRow( [name, link] );     
  }  
};

1 Ответ

2 голосов
/ 18 октября 2019

Вы можете попробовать с Drive API. Поскольку опция «переместить» отсутствует, вам необходимо сделать копию и удалить новую:

  1. Создайте новую электронную таблицу и получите идентификатор
  2. Получите идентификатор пункта назначенияпапка
  3. Скопировать файл в папку
  4. Удалить исходный файл

Пример:

    var sheet_id = SpreadsheetApp.create("testSprsheet").getId();

    Drive.Files.copy({"parents":[{"id":"destination folder ID"}]}, sheet_id);
    Drive.Files.remove(sheet_id);

Подробнее здесь .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...