update (NotesCalendarEntry - Java)

カレンダーエントリを更新します。

定義位置

NotesCalendarEntry

構文

void update(String entry)
	throws NotesException
void update(String entry, String comments)
	throws NotesException
void update(String entry, String comments, long flags)
	throws NotesException
void update(String entry, String comments, long flags, String recurid)
	throws NotesException
パラメータ 説明
icalentry iCalendar 形式のエントリの新しい値。
comments 会議の変更に関するコメント。
flags フラグを書き込みます。値を追加して組み合わせることができます。
  • NotesCalendar.CS_WRITE_DISABLE_IMPLICIT_SCHEDULING (2) は、 参加者への通知の自動送信を無効にします。このフラグを設定することは、 このメソッドを呼び出す前に AutoSendNotices を false に設定することと同等です。
  • NotesCalendar.CS_WRITE_MODIFY_LITERAL (1) は 元のエントリを完全に上書きし、icalentry 入力のみを使用します。デフォルトでは、更新時に、 入力で添付ファイルが提供されていない場合に本文の添付ファイルが保持されるほか、icalentry 入力に存在しないカスタムフィールドも保持されます。
recurid 反復するカレンダーイベントの反復識別子 (RECURRENCE-ID アイテム)。 反復識別子の形式は、UTC 形式での時刻です (20120913T160000Z など)。
可能性のある例外 テキスト 説明
NotesError.NOTES_ERR_RECURID_NOTFOUND 4808 反復識別子が見つかりません。 NotesCalendarEntry オブジェクトの反復識別子が無効です。
NotesError.NOTES_ERR_ERRSENDINGNOTICES 4809 通知の送信でエラーが発生しました 会議の通知を送信するときに問題が発生しました。会議を再度更新してください。
NotesError.NOTES_ERR_NEWERVERSIONEXISTS 4810 新しいバージョンが存在します icalentry データがシーケンスと整合しません。修正するか新しいデータを取得し、 再試行してください。
NotesError.NOTES_ERR_UNSUPPORTEDACTION 4811 サポートされないアクション メソッドが、エントリに対して無効なアクションを適用しようとしています (自身が議長ではない会議をキャンセルしようとしているなど)。
NotesError.NOTES_ERR_IDNOTFOUND 4814 ID が見つかりません NotesCalendarEntry オブジェクトの反復識別子がカレンダーのエントリを示していません。

使用法

entry 値には 1 つの VEVENT が含まれている必要があります。

繰り返し発生するエントリの場合は、recurid を指定する必要があります。iCalendar 入力には 1 つの VEVENT と UID を含める必要があります。

このエージェントは、 指定された UID のカレンダーエントリを更新します。
import lotus.domino.*;

public class JavaAgent extends AgentBase {

    public void NotesMain() {

      try {
          Session session = getSession();
          AgentContext agentContext = session.getAgentContext();

          // (Your code goes here)
          String uid = session.getEnvironmentString("currentuid");
          if (uid != null) {
              DbDirectory dbdir = session.getDbDirectory("");
              Database maildb = dbdir.openMailDatabase();
              NotesCalendar cal = session.getCalendar(maildb);
              NotesCalendarEntry cale = cal.getEntry(uid);
              String upd = cale.read().replace("T1600", "T1615");
              cale.update(upd, "Pushing up 15 minues",
              NotesCalendar.CS_WRITE_DISABLE_IMPLICIT_SCHEDULING +
              NotesCalendar.CS_WRITE_MODIFY_LITERAL);
          }

      } catch(Exception e) {
          e.printStackTrace();
       }
   }
}

クロスリファレンス

LotusScript® NotesCalendarEntry クラスの Update メソッド