2017-06-15 23 views
0

Google Appsスクリプトでの関数呼び出しを遅らせる方法はありますか?私は現在、より小さな時間枠でテストしていますが、データの処理とmoveRowsの呼び出しの間に72時間の待機時間が必要になります。Google Apps Scripts ReferenceError: "setTimeout"が定義されていません

私はこのJavaScript関数の呼び出しを行うことによって、これを達成しようとしていた。

setTimeout(function() { moveRows(arrayOfRows); }, 3000); 

私はまた、トリガーでそれをやってみましたが、私の関数が呼び出さやったことがなかったです。

ScriptApp.newTrigger('moveRows(arrayofRows)') 
.timeBased() 
.everyMinutes(1) 
.create() 

私は間違っていますか?

+0

setTimeoutはJavaScriptの一部ではなく、クライアントサイドのブラウザプログラミングの一部です。トリガを使用します。トリガーにパラメータを渡すことはできません。スクリプトプロパティのような他の手段を使用してください。 –

答えて

1

setTimeout()は、GASに存在しない 'window'オブジェクトに属します。このコードは、ブラウザではなくGoogleサーバーでコンパイルされるため、この環境ではDOMにアクセスできません。同様に、 'ドキュメント'やその他のDOMオブジェクトは参照できません。可能な唯一の場所は、HtmlServiceが作成してレンダリングのためにブラウザに送信するクライアントサイドのHTMLです。

パラメーターとして関数名を渡すことができるのは、newTrigger()メソッドだけです。あなたはパラメータを渡しているので、うまく動作しません。

関連する問題