Файловый итератор в скрипте Служб Google возвращает неверный аргумент при поиске файла, который не существует

javascript google-apps-script

1802 просмотра

2 ответа

18 Репутация автора

Я пытаюсь скопировать содержимое почты с меткой (прочитанной с листа Google) в документ с темой в качестве имени документа. Если документ уже существует, мне нужно добавить тело письма в тот же документ, если нет, мне нужно создать документ с темой в качестве имени документа. часть сценария, который я использую, это:

function searchdrive(x) {
  var iterator = DriveApp.searchFiles(x);

  if(iterator.hasnext()) {  
    var docid = iterator.next().getId();
    return docid;
    Logger.log(docid);
   }
  var doc = DocumentApp.create(x);
  docid = doc.getId();

  return docid;
 }

Если документа еще нет, iterator.hasnext () должен возвращать false, но вместо этого он выдает ошибку в качестве недопустимого аргумента.

Как мне обойти это?

Автор: Victor von Doom Источник Размещён: 18.07.2016 05:33

Ответы (2)


1 плюс

2146 Репутация автора

Существуют некоторые правила для аргумента, переданного для DriveApp.searchFiles(params) прочтения этой документации. Https://developers.google.com/apps-script/reference/drive/drive-app#searchfilesparams

Автор: Nitin Dhomse Размещён: 18.07.2016 10:27

3 плюса

417 Репутация автора

Googles Apps Scripts использует версию 2 Drive API, а не v3.

Подставьте «title» вместо «name» в строке запроса.

v2 Drive API: документация по параметрам поиска

Автор: remyActual Размещён: 18.04.2018 12:08
Вопросы из категории :
32x32