Birthday fra Contacts til Calender
Jeg har ikke kunne finde det i hjælpen, så nu prøver jeg her.Jeg vil gerne have oprettet en reminder i kaldeneren når folk har fødselsdag.
Det sker åbenbart ikke automatisk når der sættes en Birthday på en Contact.
Jeg kunne manuelt oprette den; men ville gerne gøre det smartere.
Kan Notes gøre det?
Alternativt har jeg kikket lidt på et script jeg vil have i en Agent.
Jeg er kommet frem til dette:
' Overfør fødselsdage fra contacts til kalender.
Dim session As New NotesSession
Dim uiw As New NotesUIWorkspace
Dim uidoc As NotesUIDocument
Dim doc As NotesDocument
Dim namedb As NotesDatabase
Dim subject As String
Dim startdate As String
Dim birthday As NotesDateTime
Dim view As NotesView
Dim askme As Integer
askme = uiw.Prompt (PROMPT_YESNO,"Vælg venligst","Overfør fødselsdagefra contacts til kalender?")
If askme = 1 Then
Set namedb = session.GetDatabase("","names.nsf")
Set view = namedb.GetView("People")
Set doc = view.GetFirstDocument
While Not doc Is Nothing
If Not doc.Birthday(0)="" Then
subject = doc.FirstName(0) + "'s fødselsdag."
Set birthday = doc.GetItemValueDateTimeArray("Birthday")(0)
startdate = Left(birthday.DateOnly,5)
Call session.setEnvironmentVar("CSDocType","1")
Set uidoc = uiw.ComposeDocument("","","Appointment",,,True)
Call uidoc.FieldSetText("Subject",subject)
Call uidoc.GotoField("StartDate")
Call uidoc.FieldClear
Call uidoc.InsertText(startdate)
Call uidoc.GotoNextField
Call uidoc.Save
Call uidoc.Close(True)
End If
Set doc = view.GetNextDocument(doc)
Wend
End If
Dette virker fint.
Men der oprettes ukritisk, derfor vil jeg gerne tilføje et tjek ala: IF appointment exist then ignore.
Planen er, at jeg senere vil udvide med:
1.) Opsætte reminder, pt. default.
2.) Ligeledes lave dem Private.
3.) Lave det samme for anniversary.
Så alt i alt:
Kan Notes det selv eller skal jeg lave det?
Hvis jeg selv laver det - hvordan tjekker jeg om der allerede er en i kalenderen (tænker på en simpel test på teksten). Sætte Private burde være nemt. Har bare ikke lige haft tid til at prøve det.