Google脚本:无法检索(第9行,文件“代码”)

时间:2013-03-28 17:16:06

标签: google-apps-script

我正在尝试设置我的第一个Google脚本。它应该从符合我的搜索条件的电子邮件集中删除标签,但是当我运行脚本时,我收到此错误:

Cannot retrieve (line 9, file "Code")

我的代码:

function ArchiveEmails() {
  var misc_reps = GmailApp.search("from:(reports@example.com) \"Source: misc_reports\" \"The file was successfully processed\"");
  var imp_tms_processing = GmailApp.getUserLabelByName('imp-tms-processing');


  for (var i=0; i<misc_reps.length; i++) {
    var misc_rep = misc_reps[i];
    var id_string = misc_rep.getId(); //use to confirm specific email found in debugging
    misc_rep.removeLabel(imp_tms_processing); // line 9
  }  
}

我不知道从哪里开始;我找不到关于这个问题的任何文件。

2 个答案:

答案 0 :(得分:4)

这意味着Gmail无法找到该标签。您会认为此行会发生错误:

var imp_tms_processing = GmailApp.getUserLabelByName('imp-tms-processing');

但由于某些原因,在您真正尝试对标签执行某些操作之前,它不会引发错误。

登录Gmail帐户并确保您的标签存在。如果您的标签嵌套在父标签下,请使用以下表单:

GmailApp.getUserLabelByName("parent/child");

答案 1 :(得分:2)

替换标签中的空格的破折号对于搜索条件是必需的,但此函数不需要getUserLabelByName。我花了几天时间试图使用这个特定功能而没有运气。一旦我删除了破折号并使用了实际的标签名称,它就可以正常工作。