Устанавливаемый триггер onFormSubmit в шаблоне Sheets не начинается с копирования - PullRequest
0 голосов
/ 17 февраля 2020

Я создаю шаблон листов Google, который соединяется с формами Google для создания возможностей отчетности на основе ответов форм. В одном из моих скриптов в шаблоне листов Google есть триггер onFormSubmit(). Он предназначен для запуска, когда новая форма связана с шаблоном листа. Проблема в том, что он не начинается с копии шаблона листов Google или при первом запуске скрипта. Есть идеи? Я исследовал разницу между устанавливаемыми и простыми триггерами, но не нашел четкого ответа.

function autoEmails() {

  var s = SpreadsheetApp.getActive();
  var ss = s.getSheetByName("Report Builder 2");
  var emailOneOn = ss.getRange("K3").getValue();
  var emailOne = ss.getRange("J4").getValue();
  var emailTwoOn = ss.getRange("N3").getValue();
  var emailTwo = ss.getRange("M4").getValue();
  var responseOne = ss.getRange("I5").getValue();
  var responseTwo = ss.getRange("L5").getValue();


  /*Logger.log(emailOneOn);
  Logger.log(emailOne);
  Logger.log(emailTwoOn);
  Logger.log(emailTwo);
  */

  if(emailOneOn == "On" && emailTwoOn =="On") {
      GmailApp.sendEmail(emailOne,"New Request" , responseOne);
      GmailApp.sendEmail(emailTwo,"New Request" , responseTwo);
      Logger.log("Both On")    
    }

  else if(emailOneOn == "On") {
    GmailApp.sendEmail(emailOne,"New Request" , responseOne);
    Logger.log("One on")
  }

  else if(emailTwoOn == "On") {
    GmailApp.sendEmail(emailTwo,"New Request" , responseTwo);
    Logger.log("two on")
  }

  else{
    Logger.log("Both Off")

  }

}

function trigger() {

  var formId = FormApp.getActiveForm().getId();
  var form = FormApp.openById(formId);
  ScriptApp.newTrigger('autoEmails')
    .forForm(form)
    .onFormSubmit()
    .create();
}

Все остальное работает нормально, когда я запускаю функцию autoEmails() самостоятельно. Спасибо за любую помощь!

...