ライブラリの作り方,使い方

Google Apps Scriptで,他のプログラムから参照して共用できるライブラリを作ってみる.

ライブラリの中に記載するのは以下の4種類.

  • 変数
  • 関数
  • オブジェクト
  • 既存オブジェクトに追加したメソッド

ライブラリ用ファイルを作る

以下の内容でファイルを作る.ファイル名はlibraryとしよう.

var sam='aaa'; //変数

function func01(){ //関数
  return 'func01';
}

function Foo(){ //オブジェクト
}
Foo.prototype.bar=function(){
  return 'bar';
}

Date.prototype.getNthDate=function(n){ //既存オブジェクトに追加したメソッド
  return new Date(this.valueOf()+n*1000*60*60*24); //指定日のn日前後の日付を返す
}

バージョンを保存

ファイルを保存しただけでは,他のファイルから参照できない.以下の手順でバージョンを保存する.

  1. ライブラリ用ファイルを開く
  2. メニューバーのメニュー「ファイル」から「版を管理…」を選ぶ
  3. 「版を管理」ダイアログが現れるので,テキストボックスにコメントを入力(任意)して,「新しいバージョンを保存」ボタンを押す

スクリプトIDの確認

他ファイルから参照するためには,参照するファイル(今回はlibrary)の「スクリプトID」が必要となる.以下の手順で確認する.

  1. ライブラリ用ファイルを開く
  2. メニューバーのメニュー「ファイル」から「プロジェクトのプロパティ」を選ぶ
  3. 「プロジェクトのプロパティ」ダイアログが現れるので,「スクリプトID」をどこかに控える.

ライブラリを使用するファイルを作成

上記で作成したライブラリを使用するファイルを作成する.ファイル名は「テスト」としよう.

  1. Google Apps Scriptの新規ファイル(ファイル名:テスト)を作る.
  2. メニューバーのメニュー「リソース」から「ライブラリ」を選ぶ.
  3. ライブラリを追加にライブラリファイルのスクリプトID(上記「スクリプトIDの確認」で控えた文字列)をコピー&ペースト
  4. 「追加」ボタンを押す.
  5. 一覧にlibraryが追加されるので,プルダウンメニュー「バージョン」から最新のものを選ぶ.ちなみに,一覧の中にある「識別子」を具体的なスクリプトの中で使うので,覚えておこう.何もしなければ,ファイル名と同じ文字列が入っているはず
  6. 「保存」ボタンを押す

スクリプトの内容を記載

具体的にスクリプトを書いてみる.

function myFunction() {
  Logger.log(library.sam); //ライブラリの中の変数
  Logger.log(library.func01()); //ライブラリの中の関数
  var foo=new library.Foo(); //ライブラリの中のクラス
  Logger.log(foo.bar());
  var date=new Date('2018/7/1 10:00'); 
  Logger.log(date.getNthDate(1)); //ライブラリの中で追加した既存クラスのメソッド
}

実行結果

[18-07-14 19:21:29:312 PDT] aaa
[18-07-14 19:21:29:312 PDT] func01
[18-07-14 19:21:29:313 PDT] bar
[18-07-14 19:21:29:313 PDT] Mon Jul 02 10:00:00 GMT+09:00 2018

ライブラリの中の変数・オブジェクト・クラスを使うには,ライブラリの識別子を記述する(識別子は前述したライブラリ追加時に確認・変更可能).

  • ライブラリの中の変数:識別子名.変数名(library.sam
  • ライブラリの中の関数:識別子名.関数名(library.func01
  • ライブラリの中のクラス:識別子名.クラス名(library.Foo

ライブラリの中で既存クラス(Date)にメソッド(getNthDate)を追加している.このメソッドは特に識別子の記術なしで使用できる.

ライブラリ変更時

ライブラリの中を変更した際には,以下の手順での反映が必要である.

ライブラリ側(新しいバージョンの作成)

  1. ライブラリ用ファイルを開く
  2. メニューバーのメニュー「ファイル」から「版を管理…」を選ぶ
  3. 「版を管理」ダイアログが現れるので,テキストボックスにコメントを入力(任意)して,「新しいバージョンを保存」ボタンを押す

ライブラリを読込む側(読込むバージョンの変更)

  1. メニューバーのメニュー「リソース」から「ライブラリ」を選ぶ.
  2. 一覧のプルダウンメニュー「バージョン」を最新のものに変える.
  3. 「保存」ボタンを押す

なお,「ディベロッパーモード」を「有効」にしておくと,バージョンの作成を行う前のライブラリを読込むことができる.