Posted at

GASのscript/project/user/documentという言葉の範囲について

More than 1 year has passed since last update.


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

ドキュメントに紐づくスコープ

ユーザーが別でも同じドキュメントを見ていれば、そのユーザー間で共有できる。

ドキュメントが違ってれば参照できない。


最後に

間違ってたらおしえてください。