カレンダーエントリを iCalendar 形式でレンダリングします。
構文
String NotesCalendarEntry.read()
throws NotesException
String NotesCalendarEntry.read(String recurid)
throws NotesException
パラメータ |
説明 |
recurid |
反復するカレンダーイベントの反復識別子 (RECURRENCE-ID アイテム)。
反復識別子の形式は、UTC 形式での時刻です (20120913T160000Z など)。 |
戻り値
|
説明 |
String |
iCalendar 形式のカレンダーエントリ。 |
可能性のある例外 |
値 |
テキスト |
説明 |
NotesError.NOTES_ERR_INVALIDID |
4757 |
無効 ID |
NotesCalendarEntry オブジェクトの識別子が無効です。 |
NotesError.NOTES_ERR_RECURID_NOTFOUND |
4808 |
反復識別子が見つかりません。 |
NotesCalendarEntry オブジェクトの反復識別子が無効です。 |
NotesError.NOTES_ERR_IDNOTFOUND |
4814 |
ID が見つかりません |
NotesCalendarEntry オブジェクトの反復識別子がカレンダーのエントリを示していないか、
反復識別子の scope と recurid がありません。 |
使用法
このメソッドは、
エントリの完全な iCalendar データを返します。繰り返し発生するエントリの場合は、
データに複数の VEVENT エントリが含まれる場合があります。
例
このエージェントは、指定された 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");
String calestr = "";
if (uid != null) {
DbDirectory dbdir = session.getDbDirectory("");
Database maildb = dbdir.openMailDatabase();
NotesCalendar cal = session.getCalendar(maildb);
NotesCalendarEntry cale = cal.getEntry(uid);
String recurid = session.getEnvironmentString("currentrecurid");
if (recurid == null || recurid.length() == 0) {
calestr = cale.read();
} else {
calestr = cale.read(recurid);
}
} else {
calestr = "Null UID";
}
// Write result to document
Database db = agentContext.getCurrentDatabase();
Document doc = db.createDocument();
doc.appendItemValue("Form", "main");
doc.appendItemValue("subject", "Calendar entry");
RichTextItem body = doc.createRichTextItem("body");
body.appendText(calestr);
doc.save(true, true);
} catch(Exception e) {
e.printStackTrace();
}
}
}
クロスリファレンス
LotusScript® NotesCalendarEntry クラスの Read メソッド