質問: cals.createEvent( thing, ndates, ndatee, { description:descriptionBody } ); var thing =nname+"様 \n\n 予定を登録致しました。" MailApp.sendEmail(nmail,"応接室・会議室予約",thing); }else{ var thing =nname+"\n\n ご登録の時間に先約がありました。\n 申し訳ございません。登録いただけませんでした。\n\n ご予定を変更して再度お申込みください" MailApp.sendEmail(nmail,"ご登録できませんでした",thing); } } catch(exp){ MailApp.sendEmail(nmail, exp.message, exp.message); } } ``` という記述でイベント情報を取得出来て、getLocationでイベントの場所情報を取得出来るところまでは調べてわかったのですが、 イベントの場所もとなるとgetLocationが見つかりませんとなってしまいます。 どのように取得するのが良いでしょうか。
回答: 以下のような形でロケーションは取得できます。 getEventsでは複数のイベントが返ってきますので、ループして適宜処理する必要があるかと思います。 (実行していないので、間違っている箇所があればすみません) ``` // 先約の有無 var calEvents = cals.getEvents(ndates, ndatee); if (calEvents.length === 0) { // カレンダーに登録がないためそのまま登録可 } else { // カレンダーにイベントがあるので、ロケーションに重複がないかチェック isEmpty = true; for (var i in calEvents) { var event = calEvents[i]; if (event.getLocation() === rname) { isEmpty = false; break; } } if (isEmpty) { // カレンダーに同一ロケーションで登録がないため登録可 } else { // カレンダーに同時刻同一ロケーションで登録があるため登録不可 } } ```