予定にメタデータを格納する— setTag()
今回のメソッドは、予定に任意のデータを保持させることができるsetTag()メソッドを紹介します。
タグを設定することによって、通常のGoogleカレンダーにおけるユーザーインターフェイスからは確認ができない部分にデータを格納することができます。タグの活用方法はアイディア次第でいくらでもあると思いますが、ユーザーインターフェイスからはアクセスできる情報ではないという部分が活用のポイントかもしれません。格納したデータはタグ名を指定することで設定ができますが、getTag()メソッドを使えば設定した値を再取得できます。getAllTagKeys()というメソッドで設定したタグがあればタグ名を配列で取得できますので、タグ名は忘れてしまっても問題ありませんが、タグ名にはなにかしらのルールを設けて利用するのが良いかと思います。
タグには文字列のみ設定できます。
『 引数に入れる値 』
setTag(key, value)
//予定にタグを設定するコード function sampleCode1() { var calendar = CalendarApp.getDefaultCalendar(); var date = new Date(); var events = calendar.getEventsForDay(date); var key = "タグ名"; var value = "タグの値"; for (var i in events) { var event = events[i]; event.setTag(key, value); console.log(event.getTag(key)); } }
『 変数の説明 』
calendar = デフォルトカレンダーを取得
date = プログラム実行日を代入
events = プログラム実行日の予定を取得
key = タグ名を代入
value = タグの値を代入
スクリプトができたら▶ボタンでプログラムを実行してみましょう。今回のコードではプログラム実行日の予定にタグを設定して設定したタグをログで出力するようにしてあります。プログラム実行後もタグは予定に格納されていますので、好きなときに再取得できます。タグ名を指定して設定したり取得したりするのですが、同じタグ名を利用した場合は新しい文字列に古いタグの値が上書きされます。タグを削除するときにはdeleteTag()メソッドを利用します。
まとめ
今回は予定にタグを設定するsetTag()メソッドのご紹介をしました。使い方によっては便利な使い方ができますので、色々とアイディアを考えてみてください。