VBSCript til automatiseret Lotus Notes Kalender-oplysninger
Jeg skal kunne automatisere oprettelsen af kalender funktionen i Lotus Notes via vb-script. Scriptet er hentet fra nettet, og jeg har ikke kunne finde hjælp andre steder, og nu råber jeg om hjælp her hos jer.Jeg er kommet så langt som til at scriptet udfylder de korrekte felter, men i den type kalender, som jeg har valgt (Møde - appointmentType 3), kan jeg ikke gemme og sende invitationen korrekt. Den gemmer som kladde i stedet for, når jeg kalder funktionen for gem, hvilket ødelægger det info som jeg lige har lagt i kalenderen-oplysningen.
Scriptet fungerer hvis det er en aftale (appointmentType 0), da "Gem/Save" er den eneste mulighed for denne type aftale.
Hvis jeg undlader at gemme og lukke dokumentet, og selv trykker på knappen "Gem og send invitation" når jeg har født data automatisk i felterne fungerer det, men jeg ville gerne have en fuld-automatiseret version uden bruger-interaktion.
'***************Kode***************
<script LANGUAGE="VBScript" >
Sub SendNotesAppointment()
On Error Resume Next
Dim UserName
Dim Subject
Dim Body
Dim AppDate
Dim StartTime
Dim MinsDuration
Dim MailDbName
Dim strSTime
Dim strETime
Dim CalenDoc
Dim WorkSpace
Dim ErrCnt
Set WorkSpace = CreateObject("Notes.NOTESUIWORKSPACE")
AppDate = "28-07-2007"
UserName = "tj"
Subject = "Her skal teksten stå i subject-linien"
StartTime = #15:00:00#
MinsDuration = 30
MailDbName = "mail\" + UserName + ".nsf"
strSTime = CStr(FormatDateTime(StartTime, vbShortTime))
strETime = CStr(FormatDateTime(DateAdd("n", MinsDuration, StartTime), vbShortTime))
Set CalenDoc = WorkSpace.COMPOSEDOCUMENT("MIN SERVER", MailDbName, "Appointment")
CalenDoc.FIELDSETTEXT "AppointmentType", "3"
CalenDoc.FIELDSETTEXT "StartDate", CStr(FormatDateTime(AppDate, vbShortDate))
CalenDoc.FIELDSETTEXT "StartTime", CStr(strSTime)
CalenDoc.FIELDSETTEXT "EndDate", CStr(FormatDateTime(AppDate, vbShortDate))
CalenDoc.FIELDSETTEXT "EndTime", CStr(strETime)
CalenDoc.FIELDSETTEXT "Subject", Subject
CalenDoc.Refresh
'CalenDoc.Save
'CalenDoc.Close
Set CalenDoc = Nothing
Set WorkSpace = Nothing
If Err.Number <> 0 then
' Time to handle the error ourselves...
MsgBox "We've got an error here!" & vbcrlf & _
"Code: " & Err.Number & vbcrlf & _
"Description: "& Err.Description
End if
End Sub
</script>
'***************Kode slut***************
Er der nogen der kender koden for:
'CalenDoc.Save, således at den ikke gemmer kladden, men gemmer og sender invitationen i stedet?