CreateEntry (NotesCalendar - LotusScript®)

カレンダーエントリを作成します。

定義位置

NotesCalendar

構文

Set notesCalendarEntry = notesCalendar.CreateEntry( icalentry$ , [ flags% ] )
パラメータ 説明
icalentry String 型。iCalendar 形式のカレンダーエントリへの入力。
flags 整数。フラグを書き込みます。
  • CS_WRITE_DISABLE_IMPLICIT_SCHEDULING (2) は、 参加者への通知の自動送信を無効にします。このフラグを設定することは、 このメソッドを呼び出す前に AutoSendNotices を false に設定することと同等です。
戻り値 説明
NotesCalendarEntry カレンダーエントリ。
可能性のある例外 (lsxbeerr.lss) テキスト 説明
lsERR_NOTES_ERR_ERRSENDINGNOTICES 4809 通知の送信でエラーが発生しました 会議の通知を送信するときに問題が発生しました。会議を再度更新してください。
lsERR_NOTES_ERR_ENTRYEXISTS 4815 エントリは既に存在します このエントリはカレンダーに存在します。

使用法

入力値が正しくない場合は、例外が発生します。 この形式について「Internet Calendaring and Scheduling Core Object Specification (iCalendar)」(http://tools.ietf.org/html/rfc5545) を参照するか、読み取り操作の結果をテンプレートとして使用してください。ここに記載する例では、予定と会議の基本的な形式を示します。

問題が解消されない場合は、notes.ini 変数 CSDebugAPI=1 を設定して実行してみてください。例外が発生する場合は、コンソールログで詳細を調べてください。

会議の場合、AutoSendNotices を false に設定せず、CS_WRITE_DISABLE_IMPLICIT_SCHEDULING も設定しなければ、通知は自動的に参加者に送信されます。

icalentry が繰り返しルール (RRULE 項目) を含む場合、このメソッドは専用の識別子 (RECURRENCE-ID 項目) を使用して、繰り返しごとにカレンダーイベントを作成します。反復識別子の形式は、UTC 形式でのイベント時刻です (20120913T160000Z など)。ただし、後からイベントの時刻を変更しても、識別子は変更されません。

このエージェントは、UTC の今日と明日 16 時に対し会議のカレンダーエントリを作成し、通知は送信せず、UID と最初の反復識別子を sessionScope 変数に書き込みます。
Sub Initialize
	Dim session As New NotesSession
	Dim maildb As New NotesDatabase("", "")
	Dim cal As NotesCalendar
	Dim calentry As NotesCalendarEntry
	Dim icale As String
	Dim tday As String
	REM Get calendar for current user and create entry
	Call maildb.Openmail()
	Set cal = session.getCalendar(maildb)
	tday = Format(Today, "yyyymmdd")
	icale = |BEGIN:VCALENDAR
BEGIN:VEVENT
DTSTART:| & tday & |T160000Z
DTEND:| & tday & |T170000Z
RRULE:FREQ=DAILY;COUNT=2
ATTENDEE;ROLE=CHAIR;PARTSTAT=ACCEPTED;CN="Roberta Person/Westford/IBM";
 RSVP=FALSE:mailto:roberta_person@us.ibm.com
ATTENDEE;ROLE=REQ-PARTICIPANT
 ;CN="Doc Test/Bedford/IBM";RSVP=TRUE:mailto:doctest@us.ibm.com
SUMMARY:Sample Meeting
ORGANIZER;CN="Roberta Person/Westford/IBM"
 :mailto:roberta_person@us.ibm.com
END:VEVENT
END:VCALENDAR|
	Set calentry = cal.Createentry(icale, Cs_write_disable_implicit_scheduling)
	Call session.Setenvironmentvar("currentuid", calentry.Uid)
	Call session.Setenvironmentvar("currentrecurid", tday & "T160000")
	MessageBox "UID = " & calentry.Uid,, "Created calendar entry"
End Sub

クロスリファレンス

Java™ NotesCalendar クラスの createEntry メソッド