Domino 9 und frühere Versionen > ND7: Entwicklung
Kalendereintrag
Devil:
Hallo zusammen,
ich habe folgendes Problem. Ich entwickle gerade eine Urlaubsdatenbank in welcher der Benutzer die Möglichkeit hat, dass wenn sein Urlaub genehmigt ist über einen Button seinen Urlaub in seinen persönlichen Kalender einzutragen. Wenn nun das Startdatum der 01.03.2008 ist und das Enddatum der 03.03.2008 dann trägt mein Script nur einen Eintrag bei 01.03.2008 ein aber an den anderen zwei Tagen fehlt ein Eintrag.
Ich hab hier mal mein Script gepostet. Was fehlen da noch für Felder die gefüllt werden müssen oder bin ich es völlig falsch angegangen?
Sub Click(Source As Button)
Dim ss As New NotesSession
Dim db As NotesDatabase
Dim dbl As NotesDatabase
Dim ws As New NotesUIWorkspace
Dim uiDoc As NotesUIDocument
Dim Doc As NotesDocument
Set uiDoc = ws.CurrentDocument
Set Doc = uiDoc.Document
Set dbl = ss.CurrentDatabase
Dim BoxTyp As Long
Dim Antwort As Integer
Dim BoxMsg As String
Dim StringStartDate As String
Dim StringEndDate As String
BoxTyp = MB_OK + MB_ICONINFORMATION
BoxMsg = |Es wurde ein automatischer Eintrag in ihrem Kalender vorgenommen!|
Messagebox BoxMsg, BoxTyp, "Hinweis"
'Kalendereintrag in Mailfile erstellen
Dim dateRange As NotesDateRange
StringStartDate = uidoc.FieldGetText("StartDate")
StringStartDate = StringStartDate + " 04:00 AM"
StringEndDate = uidoc.FieldGetText("EndDate")
StringEndDate = StringEndDate + " 11:00 PM"
Dim startDate As New NotesDateTime(StringStartDate)
Dim endDate As New NotesDateTime(StringEndDate)
Dim rtitem As NotesRichTextItem
rc = Evaluate(|@MailDbName|)
Set db = ss.GetDatabase(rc(0), rc(1))
Set doc = db.CreateDocument
Set dateRange = ss.CreateDateRange
Set dateRange.StartDateTime = startDate
Set dateRange.EndDateTime = endDate
Set rtitem = doc.CreateRichTextItem("Body")
doc.Subject = uidoc.FieldGetText("Subject")
Call rtitem.AppendText("Link zur Urlaubsantrag DB, die diesen Eintrag bei der Buchung automatisch erstellt hat: ")
Call rtitem.AppendDocLink(dbl, dbl.Title)
'doc.CHAIR = uidoc.FieldGetText("CreatedBy")
'doc.PRINCIPAL = uidoc.FieldGetText("CreatedBy")
'doc.Location = uidoc.FieldGetText("Location") + ", " +uidoc.FieldGetText("Room")
doc.Form = "Appointment"
doc.AppointmentType = "2"
Set doc.TimeRange = dateRange
Set doc.CalendarDateTime = startDate
Set doc.startDate = startDate
Set doc.startDateTime = startDate
Set doc.startTime = startDate
Set doc.endDate = endDate
Set doc.endDateTime = endDate
Set doc.endTime = endDate
Call doc.ReplaceItemValue("Org_Table", ORS_ITEM_PLANNER)
doc.KLCategories_2 = "Urlaubsplan"
doc.Alarms = "0"
doc.Logo="StdNotesLtr14"
doc.BookFreeTime = ""
doc.Duration = 105
doc.SequenceNum = 1
doc.OrgTable = "CO"
doc.tmpOwnerHW = "1"
doc.WebDateTimeInit = "1"
doc.ComputeWithForm False, False
doc.save True, False
'Call uidoc.Save
uidoc.EditMode = False
End Sub
klaussal:
Steht in CalendarDateTime nur das Startdatum ? Wenn ja, liegt hier der Hund begraben.
Devil:
In CalendarDateTime steht 01.03.2008 04:00:00 CET
klaussal:
Ebend.
Dann vergleich das mal mit einem Termin im Kalender (der über mehrere Tage geht)....
m3:
--- Zitat ---In the case of Repeating All-Day Events, one parent document and multiple child documents (one for each repeating instance) are created. All the documents use the “Appointment” form. The children have the “CalendarDateTime” item and therefore appear in the Calendar view. The parent document has no “CalendarDateTime” item and can be seen only in the “All Documents” view.
--- Ende Zitat ---
IBM® Lotus Notes Calendaring & Scheduling Schema
Navigation
[0] Themen-Index
[#] Nächste Seite
Zur normalen Ansicht wechseln