【GAS】予定のオーナーが自分か判定するisOwnedByMeメソッドを完全マスター

  • このエントリーをはてなブックマークに追加
  • Pocket
  • LINEで送る
icon_for_CalendarApp_isOwnedByMe

予定のオーナーが自分か判定する— isOwnedByMe()

今回のメソッドは、予定が自分が作成したか判定するisOwnedByMe()メソッドをご紹介します。このメソッドを利用することで、予定が自分が作成したのか他の人が作成したのかを簡単に判定することができます。

Google Apps Scriptでは、予定のオーナーが自分なのかをプログラム的に判断するためのメソッドが用意されています。それが、今回ご紹介するisOwnedByMe()メソッドになります。

自分がオーナーであれば、『true』、そうでなければ『false』が返されます。プログラム処理をする際は、期間やキーワードで一度に複数のイベントを取得して処理を行うことが高速化には必要なことですが、その際の処理の条件分岐などに今回のメソッドは活用できるかと思います。自分の予定に対してのみ処理を実行することや、他のユーザーがオーナーの予定に対して処理を行うなどが利用シーンとして考えられます。

それでは、具体的なサンプルコードで説明をします。

      1. isOwnedByMe()

『 引数に入れる値 』

今回のメソッドに関しては引数は必要ありません。

isOwnedByMe()

サンプルコード1
//予定のオーナーが自分か判定するコード
function sampleCodeForCalendarAppIsOwnedByMe() {
  var calendar = CalendarApp.getDefaultCalendar();
  var date = new Date(); 
  var events = calendar.getEventsForDay(date);
  for (var i in events) {
    var event = events[i];
    Logger.log(event.isOwnedByMe());
  }
}

『 変数の説明 』

calendar = デフォルトカレンダーを取得
date = プログラム実行日を代入
events = プログラム実行日の予定を取得
event = 個々予定を取得

スクリプトができたら▶ボタンでプログラムを実行してみましょう。今回のコードではプログラム実行日の予定のオーナーが自分かどうかを判定して真偽値をログに表示するコードを書いてみました。私の環境では、2つの予定を作成し、1つは自分作成し、もう1つは他のアカウントで作成した予定を共有しました。

下記のスクリーンショットを確認すると、『true』と『false』が出力されていることが確認できます。

上記サンプルコードをコピペしてもらい、プログラムの実行が終了したらCtrl + Enterを打鍵してログを確認してみましょう。自分がオーナーかどうかの結果がログに出力されていればプログラムは問題なく動作しています。

ゲストの招待権限出力ログ

まとめ

今回は予定のオーナーが自分かそれ以外のユーザーか判定するisOwnedByMe()メソッドのご紹介をしました。今回で予定のオーナーが自分であるのかをプログラム的に判定できるようになりましたので、今回のメソッドを活用して自分がオーナーのファイルに対してのみ動作する処理などのプログラムを書いてみましょう。

SNSでもご購読できます。

コメントを残す

*