iPhone – Hey my calendar is screwed up!

Randy, Technology Add comments

I use a product called CompanionLink for Google that syncs my corporate Lotus Notes calendar up to Google Calendar and then over the air down to my iPhone.   A previous post notes the process in more detail —-> HERE

Generally it has worked very well without issue until recently when a weekly meeting suddenly appeared daily in my iPhone calendar.  Every day at 11:00AM or Weekly IT Coordination meeting!

I compared the meeting entry against what showed up in my Lotus Notes calendar on my laptop and viola… no such daily meeting was displayed. Only the correct once a week meeting.   I knew at that moment I had an orphaned calendar entry the Lotus Notes was ignoring but CompanionLink saw the entry in whatever Notes view it was using to sync the data up to Google. 

I discovered that in the Notes 8.5 client I could see the calendar entry causing the issue in the Views By Chairperson view but I could not delete the document no matter what I tried to do.  I would get a couple of different error message and Notes would try to repair the calendar entry and then error out again.

views-bychairpersion

views-bychairpersion-roguecalnedar-entry

At this point I decided I needed a heavier handed approach.  I backed up my mail/calendar file locally and the right clicked on the calendar entry in question and displayed the document properties to be able to note the document ID.

views-bychairpersion-documentid

Next I asked my friendly Notes Developer to whip me up a Notes Agent that would programatically delete the document by referencing the DocID.

The Notes Agent was created as a Private Agent in my mail (calendar) file and set to run from the actions menu with a target of None.

The Lotus Script looked like this (the long Alpha number is the document ID of the rogue calendar entry I am deleting) :

Sub Initialize
Dim doc As Notesdocument
Dim db As Notesdatabase
Dim session As New notesSession
Set db = session.currentdatabase
Set doc = db.GetDocumentByUNID(”C278821541C999D785257685006E8DAF”)
If Not doc Is Nothing Then
Msgbox(”Document found!! ” + doc.Subject(0))
Call Doc.Remove(True)
End If

End Sub

I the agent and then ran CompanionLink and re-sync’d my calendar and the problem was nearly instantly corrected!

Leave a Reply

WP Theme & Icons by N.Design Studio
Entries RSS Comments RSS Log in