月曜日の午前9時に始まり午前11時に終了する定期イベントを作成するとします。このイベントは毎日3日間繰り返されます。 他のイベントは変えずに火曜日にイベントの開始時刻を変更するには(再発を使用してイベントを作成した後に)したいですが、どうすればいいですか?私は簡単に高度なカレンダーのAPIを使用して、このeventSeriesのための繰り返しルールを取得することができますイベントシリーズの特定のインスタンスを変更する方法
、それはこのルールはすべてのイベントを変更するために自由に変更することができます(と私はまた、更新することができ
RRULE:FREQ=DAILY;COUNT=3
のようなものを返します。 patch
を使用していますが、単一のイベントだけではありません API tryout私はこのイベントシリーズのすべてのインスタンスを取得しようとしましたが、実際にはすべての開始時刻と終了時刻を見ることができます(*下記参照)。 Google AppsスクリプトのカレンダーAPI
特定のインスタンスを変更する方法、つまり変更された値を書き戻す方法が見つかりませんでした。
私はこれをカレンダーのWeb UIで手動で行うことができるので、スクリプトを使用してこれを行うことができるはずですが、実際にはわかりません。
私はイベントのパラメータを取得するために使用するコードはかなり単純です:ここでは
...
for(var n = 1 ; n < data.length ; n++){
if(data[n][9] == ''){continue};
var advancedID = data[n][9].substring(0,data[n][9].indexOf('@'));
Logger.log(advancedID+'\n');
ChangeEventRecurrence(calID,advancedID);
}
}
function ChangeEventRecurrence(calID,advancedID){
var event = Calendar.Events.get(calID, advancedID);
Logger.log(event.recurrence+'\n'+JSON.stringify(event));
// here I should be able to get all the instances of this eventSeries and change them if needed
}
は、私はAPIのトライアウトを使用して取得するインスタンスのキャプチャです:CalendarApp
で
アプリスクリプトでカレンダーAPIを使用して、イベントシリーズを1つのイベントとして取得し、詳細を更新することができます。または、イベントの詳細を更新するパッチを使用してください。この[あなたの質問](http://stackoverflow.com/questions/30724417/change-exisiting-calendar-event-series-date)では、Calendar APIでEvents.getとEvents.updateを使用できることが示されます。カレンダーAPiを追加するにはリソース>アドバンスGoogleサービス> Googleカレンダーを有効にしてください –
あなたのコメントをお寄せいただきありがとうございます、私が試みたものはすべて、単一の出来事ではなく、すべてのイベントを変更しています...私はイベント(RFC339日付文字列のコンパクトなフォームを含む特定のIDを持っているが、ここでは見てきましたが(https://code.google.com/p/google-apps-script-issues/issues/detail?id=5051)それを使ってイベントを得ることはできませんでした。どんな手掛かり ? –