Script/Project/User/Document
GASのAPIにはそれぞれのクラス・メソッドに適応範囲を示す様な単語がついてるケースがある
適応範囲を示す単語 | たとえば |
---|---|
Script | PropertiesService.ScriptPropeties |
Project | ScriptApp.getProjectTrigger |
User | PropertiesService.UserProperties |
Document | PropertiesService.DocumentPropeties |
それぞれのスコープの説明
僕もいまいちわかってなかったんだけどいろいろ検証したのでその結果とそこからわかったことを書いときます。
Script
実行してるscriptに紐づくスコープ。
scriptをアドオン化して公開するなどした場合は、それをインストールした場合、全利用ユーザー間・全ドキュメント間で共有される空間になるので注意
Project
Script x User的な感じのスコープ。
ユーザーごとにスコープはわかれるけど、その中でscriptが共通なら、たとえドキュメントが違っていても同じものを参照できる
User
同一ユーザー内で共通化されるスコープ
ユーザーが同じなら、ドキュメントが違ってもscriptが違っても同じものを参照できる。
Document
ドキュメントに紐づくスコープ
ユーザーが別でも同じドキュメントを見ていれば、そのユーザー間で共有できる。
ドキュメントが違ってれば参照できない。
最後に
間違ってたらおしえてください。