LANG SELRCT

Apps Script Reference  (Create: Create new Spreadsheet | Create new Apps Script

Monday, May 20, 2019

スクリプトに登録されているトリガーを取得したい


自分がトリガーに登録している関数を取得するコードは



コード.gs
function getTriggesr() {
  var allTriggers = ScriptApp.getProjectTriggers();
  var triggers = [];
  for (var i = 0; i < allTriggers.length; i++) {
    var triggerName = allTriggers[i].getHandlerFunction();
    triggers.push(triggerName)
    }
  Logger.log(triggers);
}


補足

ScriptApp.getProjectTriggers()で
このスクリプトのプロジェクト内のトリガーをすべて取得できそうな気がしましたが
自分が登録している以外のトリガーは取得できませんでした。

チームで運用する場合の課題として
自分以外の誰かがトリガーを設定しているときに
誰が設定しているのか確認する方法が知りたいけれどその方法は不明。

誰かまではわからないまでも
どんなトリガーが登録されているかを知る方法は見つました。


その方法

1. 対象のプロジェクトでトリガーを開きます


2. オーナー:自分でフィルタがかかっているのでそのフィルタを外します
3. 自分以外のユーザが登録しているトリガーが表示されます

「他のユーザー」が「どのユーザー」なのか特定する方法がわかったら追記します
(ここで表示されていない時点で、Adminじゃないとできない気もする)


参考

getProjectTriggers()
https://developers.google.com/apps-script/reference/script/script-app#getProjectTriggers()

Latest post

Extracting data from Google Sheets with regular expressions

Introduction Regular expressions are a powerful tool that can be used to extract data from text.  In Google Sheets, regular expressions ca...