簡體   English   中英

2 時間觸發器 - Google 應用腳本

[英]2 Time triggers - Google app scripts

我在線查看了 google app script installable trigger docs ( https://developers.google.com/apps-script/support ),其中一個示例顯示了 2 如何創建 2 個時間觸發器。

function createTimeDrivenTriggers() {
  // Trigger every 6 hours.
  ScriptApp.newTrigger('myFunction')
      .timeBased()
      .everyHours(6)
      .create();

  // Trigger every Monday at 09:00.
  ScriptApp.newTrigger('myFunction')
      .timeBased()
      .onWeekDay(ScriptApp.WeekDay.MONDAY)
      .atHour(9)
      .create();
}

我的代碼:

function createTimeDrivenTriggers() {
  // Trigger every 1 hours.
  ScriptApp.newTrigger('MainFunctionDaily')
      .timeBased()
      .everyHours(1)
      .create();

  // Trigger every Friday at 13:00.
  ScriptApp.newTrigger('MainFunctionWeekly')
      .timeBased()
      .onWeekDay(ScriptApp.WeekDay.FRIDAY)
      .atHour(13)
      .create();
}

但是,當我嘗試創建觸發器時,出現錯誤:

此加載項在此文檔中為此 Google 用戶帳戶創建了太多基於時間的觸發器

請指教

更新:附加組件的文檔已移動。 在這種情況下,下面提到的限制的新位置是https://developers.google.com/gsuite/add-ons/concepts/editor-triggers


在 Google Apps 腳本插件中,無法通過代表同一用戶運行的函數在同一文檔上創建兩個相同類型的觸發器。

來自https://developers.google.com/apps-script/guides/triggers/installable#limitations (強調我的):

限制
一些限制適用於附加組件中的可安裝觸發器:

每個附加組件對於每個用戶、每個文檔的每種類型只能有一個觸發器 例如,在給定的電子表格中,給定的用戶只能有一個編輯觸發器,盡管用戶在同一個電子表格中也可以有表單提交觸發器或時間驅動的觸發器。

備選方案是

  • 使用不同的帳戶來創建每個觸發器。
  • 為每個必需的觸發器創建多個附加組件
  • 使用常規腳本而不是附加組件。

兩個可能的問題:

  1. 你的觸發器相互矛盾
  2. 您可能需要在第二個觸發器之前添加一個創建函數。

您可能只需要選擇一個觸發器,但您可以試試這個:

function createTimeDrivenTriggers() {
  // Trigger every 6 hours.
  ScriptApp.newTrigger('myFunction')
      .timeBased()
      .everyHours(6)
      .create();
}

function createTimeDrivenTriggers() {
  // Trigger every Monday at 09:00.
  ScriptApp.newTrigger('myFunction')
      .timeBased()
      .onWeekDay(ScriptApp.WeekDay.MONDAY)
      .atHour(9)
      .create();
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM