How do I find out, which is the option that user has selected for deleting recurring meeting?

Hi,

I have a C component which hooks Lotus Notes events.

For deleting recurring meeting, C component is able to hook Lotus Notes delete event, but I am not able to identify which option the user has selected while deleting recurring meeting (i.e. delete this instance or series of instances).

I have tried to read value of ‘tmpChangeWhich’ item using NSFItemInfo CAPI. But NSFItemInfo API throws ‘Item not found’ error.

Whereas for updating recurring meeting when I try to read ‘tmpChangeWhich’ item value on QuerySave event, through Lotus Script, I am able to get the correct user selected value.

Is there any other way to find out the option selected by user, while deleting recurring meeting? Am I missing something here?

Any help would be appreciated.

Thanks,

Abhi

Subject: Not always simple

When a user modifies a repeating set, the template / core code will do work to result in the expected end result. This work includes creating new instance docs and/or deleting existing docs.

If you do not already have a solid understanding of the repeating meeting design then I suggest you start with reading up the C&S Schema document that was last published ~July 2007 to get your head around how the document level organization works.

Since modifying a repeating set may result in both document deletions and creations you have no simple means to hook 1 function and know for sure what was done. After all a deleted note has no info on it and so we do not bother updating it before we delete it and the routine you hook may be calling after all the items have been removed.

Your most reliable option is to rescan the repeating set for all the changes since a simple “Decline ‘Just this instance’ to the middle of an already Accepted repeating meeting” could have resulted in several different document level changes.

Bruce

IBM

Subject: How do I find out, which is the option that user has selected for deleting recurring meeting?

Hi Bruce,

Thanks for your reply.

When I tried to read ‘OrgRepeat’ field in the same way using NSFItemInfo CAPI, on recurring meeting delete event, from C component, I was able to get it successfully. Therefore my routine is able to hook Lotus Notes delete event when not all items have been removed.

Is there any field by which I can access option selected by user while delete repeat meeting?

Thanks,

Abhi

Subject: No simple answer

While you may be able to see the repeating doc as it is being deleted, you cannot just say “Oh the values of StartDateTime or RepeatInstanceDates will tell me which instances they selected in the GUI.”

The reason for this is that the user may have only selected “Just this instance” to delete and so the GUI has gone and created 1 or 2 new docs to represent the dates that were not being deleted. If you managed to catch all note creations and detect “This is a new repeating instance doc and it happens to overlaps with one I already know about.” then you could get into a bad situation with what you assume vs what actually happened.

Or the delete doc could have been a single repeating instance and nothing really changed because the user only deleted that instance.

Your best approach could be to detect a repeating entry deletion, grab the ApptUNID item off it and then once the deletion is done do some repeating meeting scan/rebuild work for that ApptUNID to see what the current Notes view is. Then you can tell what happened by comparing the before and after (or just use the after info and go from there).

Bruce

IBM