我需要将此Doclist代码迁移到Drivapp,但不能

时间:2015-04-27 01:21:27

标签: google-apps-script

我只是尝试用Driveapp替换Doclist来执行带参数(num,num)的文件搜索,但它返回错误:invalid method getFiles(num,num)

function b(e) {
  var app = UiApp.getActiveApplication();

  var resultado = ""
  var urlBase = "https://docs.google.com/a/escuelasanpedro.com/file/d/";
  var doc = DocsList.getFolderById("0B8p4BFVjx9pDZXFIYUQzSFZqeFE").getFiles(0,500)
  var idDoc =""
  var nombre =""
  for ( var i = 1; i < doc.length;i++) { 
       if (e.parameter.userName == doc[i].getName().substring(0,doc[i].getName().indexOf("."))) { 
          idDoc = doc[i].getId()
          nombre = e.parameter.userName
          resultado = urlBase + idDoc ;
          }
       }  

我尝试了下面的代码,但是在iterator objetct中找不到“function'getname'这个消息”

function b(e) {
  var app = UiApp.getActiveApplication();
//serverhandler, proceso real

  var resultado = ""
  var urlBase = "https://docs.google.com/a/escuelasanpedro.com/file/d/";

  var doc = DriveApp.getFolderById("0B8p4BFVjx9pDZXFIYUQzSFZqeFE").getFiles()
  var idDoc =""
  var nombre =""

 while (doc.hasNext()) {
   var file = doc.next();
       if (e.parameter.userName == doc.getName().substring(0,doc.getName().indexOf("."))) { 
          idDoc = doc.getId()
          nombre = e.parameter.userName
          resultado = urlBase + idDoc ;
       }
 }

1 个答案:

答案 0 :(得分:0)

你几乎得到了......你的doc变量是迭代器,你的新变量file是实际文件,但你不能使用它。

像这样更新:

 while (doc.hasNext()) { 
 var file = doc.next();
 if (e.parameter.userName == file.getName().substring(0,file.getName().indexOf("."))) { idDoc = file.getId()